11th Course of Study (Start: Academic Year 2014-15)
Business Process Management
Business process management (BPM) is the set of concepts, methods and tools that help organizations define, implement, measure and improve their end-to-end processes. BPM is a combination of mature organizational transformation concepts (business process reengineering, lean six sigma, total quality management) and supporting technologies such as workflow management, process analytics process mining and service-oriented systems. BPM technology helps organizations become more efficient by coordinating activities, automatically allocating tasks to process participants and integrating services and applica-tions into the process. Demand for BPM is fueled by opportunities related to ongoing performance improvement, process outsourcing/off-shoring and the interest in process standards such as ITIL and SCOR. Global analysts such as the Gartner Group have identified the improvements of business processes as the number one priority of CIOs for a number of years. In this context, the course addresses the needs of public and private organizations with BPM initiatives. It covers topics relevant for students that plan to become business or systems analysts that participate in BPM projects, but covers concepts that are useful for functional/line of business positions as well. The course is also suitable for students interested in joining IT organizations with BPM tool offerings and provides business-level education for future sales-force personnel, technical staff, and consultants. The course makes use of real-world case studies to illustrate specific aspects of process mapping, automation and evaluation and to test student comprehension of the material. During the course, various methods for process modelling are explored, techniques for process improvement, reengineering and management are studied and issues related to Service-Oriented Architectures and BPM are analysed. In addition to this, the course aims to provide hands on training on relevant software solutions.
- Enterprise business processes: business process definition, intra- and inter-organizational processes, process-oriented organizational approach, custom business processes for competitive advantage, beyond best practice, on to excellence, business process automation, business process alignment, process-oriented and service-oriented systems.
- Business process modeling: process modeling requirements, tailoring requirements, process meta-models, process meta-model views, the process mapping process, process mapping metrics, Methods and process modeling techniques, IDEF0, IDEF3, DFD. Lab session on the use of Business Process Modeler tool.
- Process-centered organizations: models for process-centered organizations, the social organization of work, computer supported cooperative work, dynamics of cooperative networks, Business Strategy, Business Process Management and stakeholders’ management (rules, restrictions, exceptions, business logic, fault handling).
- Business process management lifecycle: discover, analyze, model, monitor, map, simulate, deploy. Business process reengineering methodology. Critical success fac-tors and tips for avoiding failure.
- Business process change: business process analysis, improvement, redesign, reengineering, innovation, management.
- BPM Six Sigma methodology: defining, measuring, analyzing, improving, controlling business processes. Examples, exercises and case studies.
- Implementing ΒΡΜ: Learning to become a process-managed enterprise, the process portfolio, the critical success factors, the core competency, mastering BPM, case study: an organizational initiative in reengineering.
- Workflow management technology: plans and procedures in process automation, workflow management, functional requirements for workflow management, work-flow specification and execution languages. Lab session on the use of Bonita soft-ware.
- Workflow security: workflow security requirements, authentication, authorization, and access control, security implementation issues.
- BPM and service oriented architectures: business process orchestration and chore-ography, business process execution language, case study. Lab session on the use and functionality of ORACLE BPM.
Information Systems and Services
Human beings have the distinct ability to attach meaning to whatever they perceive. The data translation to information and attempt, in an organized manner, to provide infor-mation for action, constitute the basis of the principle “information system”. In this course, the notion of an information system in the context of an organization is defined and particular emphasis is placed on the fact that an information system is essentially a kind of system that supports business processes and distributes information to the appropriate receivers using a digital technology as a tool. Professionals in the field of information sys-tems basically work on: a) information generation with the goal to aid the organization define and achieve its goals, and b) the realization or improvement of processes of the organization with the use of appropriate digital technology. Hence, these professionals play an important role in determining the requirements for an information system of the organization and they participate actively in its specification, design and realization. Therefore, they must have deep knowledge of state-of-the-art digital technologies and must be acquainted with the organizational principles and practices so that they contribute decisively in provisioning the systems and information that organization needs for supporting its operations. Furthermore these professionals determine the processes of evolution of information systems in order to achieve novel comparative assets to the organization through interoperability of existing systems and the capitalization from modern digital technology while maintaining existing investments. In this context, the course places particular emphasis to real world case studies on the development of information systems by creating modern web-based and service-oriented architectures.
- Principles of systems analysis, human activity systems, systems thinking, system ap-proach to information systems, high level analysis methodologies, information sys-tems types.
- The organization as system, organizational framework of information systems, the or-ganization concept in information systems, information systems leverage to re-organization.
- Information systems development methodologies, code-and-fix, structured systems analysis and design, evolutionary/rapid application development, agile systems devel-opment, teamwork methodologies, end-user development.
- Information systems life cycle, advantages and disadvantages, structure lifecycle phas-es, user participation, documentation, structured information systems development, data flow diagrams, requirements engineering.
- Human-oriented and participative information systems development, requirements elicitation, the prototyping approach.
- Object-oriented systems development, RUP methodology, general principles of the methodology, unified model language (UML) diagrams.
- Information systems security, security policies, security enforcement mechanisms, role-based security, authorization administration.
- Electronic business: types and models, electronic business and its basic constructs, ar-chitectures, communications channels, virtual organizations, competitive advantage, challenges and strategies, Virtual Organisations (definitions and characteristics of virtual enterprises), innovation, strategies adopted by virtual enterprises, digital product, ex-amples and case studies
- Electronic health: Healthcare systems, the need for healthcare services, digital sys-tems and quality improvement, healthcare information systems, trends and architectures, best practices, e-health systems and security. Examples Electronic healthcare record (EHR), home care and hospital at home, e-prescribing, e-referral).
- Electronic governance: the importance and the advantages of e-government for citi-zens and the state, analysis of e-government applications, architecture, standards, characteristics, entities, roles, main types of applications, examples and case studies, social networks and their role, social networks and business models, the role of the users in shaping and leading changes in business environments, exemplar cases.
In the past, organizations have adopted computer applications to improve and automate their business processes. These applications have not been implemented according to a strategic plan or based on a common integrated IT infrastructure. Instead, it was based on the needs of each individual department of the company and always according to current technologies. Thus, most organizations have developed information infrastructures consisting of a set of autonomous and in many cases heterogeneous systems. As a result, the need for automated and integrated business processes has increased over the years but organizations were unable to build an integrated IT infrastructure as heterogeneous applications have had several connection problems. In recent years Service Oriented Architectures (SOA) and technologies are widely used to help organizations overcome these problems. In this context, the objective of this course is to study SOA model and it emphases on the analysis, design and development of SOA based applications. Upon completion this course, students will be able to implement service oriented systems and architectures.
- Service Oriented Architectures (SOA): The integration problem and the need for flexible and efficient integrated IT infrastructures, Service Oriented Architectures, architectural principles, architectural model, SOA rules, best practices, building blocks.
- Designing service oriented architectures: SOA applications’ lifecycle, techniques and SOA development methodologies, top down methodology, bottom up methodology, middle out methodology, comparison and evaluation of SOA development methodologies, best practices, examples.
- Web services: Definitions, roles, functions, characteristics and attributes, web services types, service hierarchies, examples and exercises.
- Lab 1 – XML: Structure of XML documents, valid XML documents, introduction to schema languages, document type definition (DTD), structure of DTD, presentation of XML schema, querying XML documents, the XPath language, XPath axes, XPath query formulation, examples of XPath querying, the XQuery language, XQuery syntax, XQuery examples.
- Lab 2 – XML: Development of dynamically transformed web pages with XSL, the XSLT language, XSLT processing, XML web application development using XML data management systems, XML storage in relational databases, XML storage in native XML databases.
- SOAP, REST, WSDL and UDDI: SOAP message structure, SOAP bindings, REST message structure, REST Vs SOAP, WSDL, types, WSDL message, WSDL functionality, ports, ports types, bindings, UDDI, data definition, data types, interfaces, application development, SOAP and UDDI, WSDL and UDDI.
- Quality of service (QoS): Definition of QoS, service requirements, user requirements specification, domain independent, domain depended services, service providers and QoS, security requirements, selection and matching of web service depending on the quality requirements of the client application, factors affecting QoS, pricing and QoS.
- Lab 3 – web services programming: Hands on training on Microsoft Visual Studio .Net, building web services and service oriented architectures with C#, service interfaces, user interfaces, connecting web services with databases and external systems or services, examples, exercises.
- Orchestration and choreography: Basic principles and definitions, orchestration, choreography, differences between choreography and orchestration, BPEL structure, message flow, control flow, data flow, data handling, fault management, activities, examples and exercises.
- SOA security: Risks and threads, confidentiality, authentication, integrity, security services, WS-Security, security policies, firewalls, message-level security, security as a service, standards of service security, SOAP related security, web services security framework.
Data Management and Business Intelligence
The main objective of the course is to train students in methodologies and technologies for data management. This course covers advanced topics related to database design and query processing in modern data management architectures in the context of broader network-centric systems and services. It also examines issues of business intelligence, including business data integration, business process modeling, and advanced mining techniques from business data. The expected learning outcomes of the course include the ability of students to effectively develop traditional and network-centric systems and services in database environments including structured, semi-structured and unstructured data. Also, students acquire basic knowledge and skills in data analysis and extraction of useful information.
- Distributed data management: Basic concepts, problems, architectures, distributed query processing, peer-to-peer data management systems, unstructured and structured peer-to-peer networks.
- Parallel data management: Fundamental concepts and architecture of parallel databases, parallel query processing, data management in the cloud, the MapReduce programming model, the Hadoop implementation, HDFS.
- Query processing and optimization: Rank-aware query processing, rank-join query processing, algorithms for rank-aware query processing, skyline queries, algorithms for processing skyline queries.
- Dimensionality reduction – Feature selection: Multidimensional data, modeling, problems of many dimensions (“the curse of dimensionality”, “the empty space phenomenon”), failure of indexing methods, dimensionality reduction algorithms, application in practical problems in data management.
- Security and privacy issues: Authentication, access control, security policies, users roles (model RBAC), the problem of publishing anonymized data, k-anonymity, l-diversity, privacy-enforcing mechanisms.
- Business intelligence: Basic concepts, an industry viewpoint on business intelligence, new trends (Big Data, fast business, better software), business process modeling.
- Information integration in business intelligence – Data preprocessing: Data selection, data cleaning, handling missing values, data integration, semantic heterogeneity, data visualization for decision support.
- Object similarity: Distance measures/similarity measures for different data types (numerical, categorical, text), processing similarity queries (range queries and k-nearest neighbor queries), applications in machine learning.
- Data warehouses: Multidimensional data model, architecture of data warehouses, design of data warehouses, extract-transform-load (ETL), OLAP operations, data warehouses as tools for business intelligence.
- Data mining and text analysis: basic data mining techniques and application to business intelligence, information extraction techniques from diverse data sources (text, Web, social networks).
The Cloud Computing course focuses on concepts, techniques, methodologies and best-practices in various levels of cloud-based environments (i.e. infrastructure, platform, software layers). This course aims at understanding the theoretical underpinnings. In doing so, the course covers topics related to the theoretical background, architectures, standards, building blocks, modeling approaches and programming models of clouds. Besides the lectures, laboratory exercises allow students to gain hands-on experience with regard to installation and customization of cloud middleware as well as modeling and execution of application service components. Finally and given that cloud computing emerged in the last years, cutting edge research outcomes are reviewed, challenges are highlighted and open research topics are explored.
A series of laboratory lectures will allow students to gain hands-on experience and expertise with respect to cloud applications development and deployment, as well as installation, configuration and management of computational and storage clouds, exploiting cutting-edge technologies and frameworks such as Google AppEngine and OpenStack.
- Cloud computing: definitions, goals, challenges, application areas, service level agreements, service phases, distinct layers based on the Service-Platform-Infrastructure (SPI) model, architectural design, open grid service architecture, service oriented architecture, next generation architecture / internet of services, virtualization types (native, hardware, OS-level, application), hypervisors (Kernel-based Virtual Machine – KVM, Xen), service level agreements, performance and monitoring of physical and virtual resources.
- Platform as a Service and Software as a Service layers: service level agreements negotiation, service registry (UDDI, UBR, ebXML) and discovery, service selection, execution, monitoring, evaluation, accounting and billing, workflow management, wrappers for control, monitoring and configuration of application service components, methodology for developing, modeling and deploying applications, SLAs.
- Hands-on Laboratory 1 (Platform as a Service layer): development, configuration and execution of application in Google cloud, using Google AppEngine platform.
- Infrastructure as a service: cloud network infrastructure management, power management, performance management, connectivity, routing, traffic engineering, security policies and cloud monitoring systems, use cases, examples using Nagios, SNMP/MIBs and extensions for cloud management for extensions MIBs for management through SNMP, Oceanos, Cloud Radio Access Networks. Architectures, open interfaces and standards (DMTF/OCSI, OCCI), network as a service (NaaS), software defined networking (SDN) and Openflow technologies.
- Hands-on Laboratory 2 (Infrastructure as a Service layer): installation of cloud computing infrastructure using the mainstream middleware OpenStack.
- Hands-on Laboratory 3 (Level Infrastructure as a Service): installation of cloud computing infrastructure and configuration with respect to access patterns (certificates, end-points) and service level agreements management.
- Storage cloud technologies: Architectures addressing various issues (e.g. scalability, data integrity, namespace management, replication) in distributed object data management approaches: EMC Atmos, Rackspace Cloud Files, Windows Azure Storage, Google Storage, Amazon S3. Computational storage tackling computational and data issues, as well as execution constraints, triggering conditions and interactivity with other data or services. Content-centric access to data: Metadata annotation and content network implementation techniques (based on content linking), storage objects access mechanisms.
- Hands-on Laboratory 4 (Storage Cloud Infrastructure): installation of storage cloud infrastructure using the mainstream middleware OpenStack Swift, execution of MapReduce jobs in Apache Hadoop.
- Real-time clouds: priorities, time constraints, real-time cloud architectures, service composition models, heterogeneity, scaling, workflow mapping mechanisms, quality of service guarantees in clouds, classification of parameters and requirements, fault tolerance techniques, SNAP model, approaches VAS – GARA.
- Future internet infrastructures: Combination of cloud computing infrastructures with Internet of Things platforms, future internet applications, open research topics, industrial focus. Virtual and augmented reality applications, data-driven journalism services, smart city applications. Mainstream cloud computing platforms (architecture, services and comparison of platforms). Challenges, open research topics and industrial focus.
Mobile Computing and Applications
The proliferation of mobile devices in all sectors of human activity is spectacular. Todays’ mobile devices comprise several applications and capabilities, as well as access to the Internet thus tend to replace computers, as well as a variety of other devices such as cameras, MP3 players, etc. This has made mobile devices extremely popular while the widespread use of mobile devices and the rapid development of corresponding applications help accelerate business innovation. The objective of this course is to provide basic knowledge of technologies that will allow students to capitalize upon the opportunities offered by mobile application development industry. More specifically, the course presents network technologies for mobile and wireless communications. Moreover, the course presents location discovery techniques that can be exploited for location-based services for mobile devices. In addition the course provides an overview of requirements and functionalities for “smart” devices. An overview of the main platforms for mobile devices is also provided, such as iPhone, Android, Windows Mobile, Symbian, RIM. The design and development of applications for mobile devices is addressed.
A series of laboratory lectures will allow students to gain hands-on experience and expertise with respect to mobile devices programming, as well as development, configuration and optimization of related applications, aiming to increase their competitiveness based on the market emerging requirements for mobile devices and application programming skills.
- Mobile and wireless communication networks: Wireless access technologies and networks, characteristics of wireless personal area networks (WPANs), local area networks (WLANs), metropolitan area networks (WMANs) and wide area cellular networks (WWANs). Multimode terminals and wireless access selection.
- Conversational applications, data applications and web browsing via wireless packet access networks, effects of wireless environment and mobility on network/transport layer and applications, mobility management protocols and TCP adaptation in wireless packet networks
- Location discovery technologies and location based services, IP multimedia subsystem wireless internet support technologies, architecture, layering and services.
- Mobile device platforms: Main concepts, Android application model, introduction to the Android platform, platform architecture, application building blocks, activities, services, content providers, broadcast receivers, intents, development tools.
- Android Lab 1: Development of applications with Android Software Development Kit (SDK) and the Eclipse framework, design and implementation of Graphical User Interface (GUI), use of XML layouts, main widgets (labels, check boxes, buttons, input boxes, etc), containers (widget collections), input method framework, drop-down menus, fonts. Examples and lab exercises.
- Android Lab 2: Data management in Android applications. Shared Preferences, settings implementation, state storage, examples and lab exercises.
- Android Lab 3: Access to device location information, Android classes and interfaces for management of location information in applications, use of Google Maps, MapViews, Geocoding, examples and lab exercises.
- Android Lab 4: Intents development for activities communication, tables, lists and multiple entries lists, examples and lab exercises.
- Android Lab 5: Addition of external sources and libraries, local files storage and editing, management of images and graphics, examples and lab exercises.
- Android Lab 6: SQLite database, table creation, insert and modification of records, queries, examples and lab exercises.
Big Data and Analytics
The main objective of this course is to present to the students modern techniques, systems and platforms for Big Data management and scalable data analytics. Emphasis will be given to issues related to scalability, efficiency and fault-tolerance in the complete life-cycle of Big Data, from data acquisition and integration to data processing and interpreta-tion. Another important direction is data analytics over miscellaneous data types, including text, web data and social data. As expected results the students will acquire strong technical skills in management of Big Data and they will become familiar with algorithms and methods for data analytics at scale.
- Big Data: Basic concepts, applications, use cases, definitions, 6Vs – Volume, Variety, Velocity, Veracity, Validity and Volatility, opportunities and research challenges, requirements for Big Data management platforms, the Big Data analysis pipeline: data acquisition and recording, information extraction and cleaning, data aggregation, integration and representation, query processing, data modeling and analysis, interpretation. Challenges related to Big Data: heterogeneity and incompleteness, scale, timeliness, security and privacy, human collaboration.
- Batch-style processing of Big Data: Scalability, efficiency, fault-tolerance, programming solutions for Big Data analysis, MapReduce/Hadoop, HDFS, the Hadoop ecosystem, HBase, declarative querying, high-level query languages (Hive, Pig), Apache Mahout.
- Real-time processing of Big Data: Stream processing, real-time processing, main-memory data management systems, programming with Storm, high-level abstractions over Storm (Trident).
- Trends in Big Data management: NoSQL stores, key-value stores, document stores (MongoDB, CouchDB), extensible record stores (Google’s BigTable, Cassandra), modern techniques in Big Data management, data exploration, in-memory processing, in-situ processing, data visualization, novel platforms (incl. Pregel, Dremel, Giraph, F1, HANA).
- Scalable machine learning techniques. Unsupervised Learning: representative clustering algorithms, stream clustering problem. Supervised Learning: decision trees, support vector machines. Semi- supervised learning algorithms.
- Social network data analytics: Social data, representations, management, challenges of social network data management, structural properties of social networks: centrality, degree, balance, interesting problems in social network analysis: community detection, interesting node discovery, node classification, discovery of information flows, node influence.
- Web analytics: Search algorithms, ranking, link analysis (PageRank, HITS), analyzing website traffic such as click streams, referrals, keywords, page views, and drop rates, advertising on the Web.
- Recommendation systems: Content-based systems, collaborative filtering systems, personalization, data mining techniques for large-scale recommendation systems, evaluation of recommendation systems, applications of recommendation systems.
- Analytics and mathematics: Mathematical tools and analytics, data science, modeling and analysis of large-scale data, predictive analytics, statistical analysis, regression analysis, applied statistics, sampling, time series.
- Application areas of analytics: Business value of analytics, data-driven decision-making, healthcare analytics, analytics adoption model, analysis of scientific data.
Information Systems Governance
Despite the vast sums of money spent on the development of software applications, failure rates remain extremely high. According to the Standish Group, 84% of Information Systems (IS) fail as they cost more in time and money, they are out of scope or they are of bad quality, usability or functionality. The literature reveals that the 31% of information systems is canceled before its completion, where another 51% costs more in time and money. Furthermore, change management and risk management failure is also high (63% and 57% respectively). Clearly, it is of high importance for organisations to govern their information communication infrastructures. Information systems governance deals with a series of important decisions that are taken before (pre-implementation), during (implementation) and after (post-implementation) the delivery of information systems. Among others, governance refers to decisions related to techno-economic study, evaluation, development, operation, maintenance and expansion of information systems. These decisions are so important that can lead an organization to success or failure. An exemplar case of this is the American pharmaceutical giant FoxMeyer that went bankrupt due to poor governance. To grasp the magnitude of failure, FoxMeyer’s sales totaled $ 5.1 billion a year before the bankruptcy, indicating that poor IT governance can lead any kind and size of organisation to bankruptcy. In this context, the main objective of this course is to present and analyse key issues related to Information systems’ governance. Upon completion this course, students should be able to understand the techniques, tools and practices to be adopted for a successful IS implementation. Particular emphasis is placed on the analysis of real cases studies.
- Information systems governance: Definitions and principles of governance, compo-nents of governance, people, processes, organization, technology, structure and levels of governance, policies, plans, projects, priorities, key deliverables of IS governance, governance and strategy, governance and organizations, governance and architecture, governance and project life cycle, the impact of governance on organizations, the framework control objectives for information and related technology – COBIT, examples of COBIT.
- Information systems project management: Portfolio management, project scheduling, resource management, project development framework.
- Sourcing and outsourcing: Advantages and disadvantages for ICT, software develop-ment and acquisition, appropriateness of outsourcing, outsourcing criteria, service level agreements, risk management.
- Information systems costing and return-on-investment: Costing procedures, Tech-nical, economic and financial feasibility, costing factors, cost estimation methods, re-turn-on-investment estimation methods, case study.
- Information systems strategy: Strategy for business value, linking information systems to business metrics, managing perceptions of information systems, creating and evolving a systems roadmap.
- Information systems evaluation: Successful evaluation framework, goal-oriented evaluation, goal-free evaluation, criteria-based evaluation, evaluation results, evaluation process and cost.
- Information systems acceptance: Technology acceptance models (TAM model), influential factors, success and failure, exemplar case study.
- Change management and organizational framework: Despair, denial, anger, anxiety, acceptance, practice, relief and motivation. Establish sense of urgency, create coalition develop a vision, share the vision, clear obstacles, secure short time wins, consolidate and keep moving.
- Risk management: Risk identification, analysis, planning and monitoring, techniques, exercises, examples and exercises.
- Service-oriented architectures governance: Governance and lack of governance, different types of SOA governance, SOA governance models, governance policies, stakeholders and roles, SOA governance lifecycle.
Type of Course
The master thesis project is carried out under the supervision of one of the faculty members and involves – at a first stage – the identification of the research topic/ technological problem to be addressed and the research of literature for existing state-of-the-art. The output of the project, namely the description of the research area, the problem formulation, the solution definition and implementation and the illustration of results and final conclusions and recommendations, is presented in the master thesis.
The master thesis project aims to
- Extend the student’s academic skills, introduce them to a certain research area and potentially motivate them to continue their research work beyond the completion of their Master’s Degree. This may be achieved not only by exploiting particular skills and knowledge acquired from taught courses but also by enhancing their ability to tackle a novel research area and/or problem.
- Expand the student’s professional skills by developing/improving their ability to research, manage/organise information, think creatively, pursue innovation and report adequately the findings of their research.