9th Course of Study (Start: Academic Year 2012-13)
Service Oriented Architectures
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.
Advanced Information Systems
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 information 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 systems 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 approach to information systems, high level analysis methodologies, information systems types.
- The organization as system, organizational framework of information systems, the organization 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 development, teamwork methodologies, end-user development.
- Information systems life cycle, advantages and disadvantages, structure lifecycle phases, 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 evolution, types of systems evolution, architectural transformation, systems development by reuse, evolution to process-oriented information systems.
- Network-oriented (web-based) systems development, process-oriented architectures, workflow management, web services and workflows, workflow security, service-oriented architectures (SOA).
- Information systems organization and architectures, centralized and distributed processing and storage, on-line and batch processing, cloud-based information systems.
- Information systems security, security policies, security enforcement mechanisms, role-based security, authorization administration.
Digital Services and Web Applications
In an attempt to discover a quick and cheap way to reproduce the bible, Gutenberg invented the printing in 1438. Although it was not his intension, Gutenberg helped in the rapid dissemination of knowledge, which in turn led to the industrial revolution. If Gutenberg’s discovery has so significant impact on science and entrepreneurship, what can one say about the Internet and its innovative opportunities for searching, tracking and managing information, trade development and organizations restructuring? In late 2010, the Internet reached 2 billion users, when 10 years earlier its users were only 361 million. Approximately 300 million users visit YouTube and Facebook each month where 8 years before these applications did not exist. In Google 140 billion searches are made per month, while 82% of Internet users gather information about products and services. The spread of Internet and digital economy is rapid. Just to think that radio reached a critical mass of 50 million users in 38 years, while TV needed 13 years, Internet 4 and Facebook only 2 years! In 2011, Internet data traffic increased tenfold compared to that in 2006 and the Internet links surpassed 1 billion in 2009 from only 1000 connections in 1984. Undoubtedly, the Internet revolution cannot be ignored and it is therefore the intension of this course to explore advanced topics related to the digital economy and services. In doing so, the course studies the areas of electronic services, e-business, e-government, e-health and social networks. Also, it concentrates on methodologies, technologies and techniques for developing Web applications.
- Social networks: Definitions, social networks’ characteristics, types, advantages, disadvantages and challenges of social networks, sensitive issues, privacy, social networking as a means of understanding consumers’ needs, collaboration among business and clients to create or improve products, changing roles and involved parties, the impact of social networking, policies and business strategies, examples, case studies.
- Virtual Organisations: Definitions and characteristics of virtual enterprises, advantages and disadvantages, comparison between traditional and virtual enterprises, innovation, strategies adopted by virtual enterprises, digital product, advanced techniques for marketing and pricing of digital products, digital products and knowledge, digital supply chain, examples, case studies.
- Digital services’ interoperability: Principles, definitions, benefits, approaches, requirements, organizational interoperability, semantic interoperability, technical interoperability, international standards and initiatives, European Interoperability Framework, design methodology of interoperable digital services.
- Electronic business: types and models, electronic business and its basic constructs, architectures, communications channels, virtual organizations, competitive advantage, challenges and strategies, examples and case studies.
- Electronic governance: the importance and the advantages of e-government for citizens 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.
- Electronic procurement: Definition and basic principles, phases of electronic procurement value chain, benefits, regulatory framework for electronic procurement in national and European level, state-of-the-art and future developments, best-practices, eProcurement applications, design and implementation of information systems supporting electronic procurement.
- Electronic invoicing: Definitions, market validation and benefits, electronic Invoicing processes and models, interoperability requirements, data representation and data transport standards for eInvoicing, issues of data security and integrity in electronic invoices.
- Electronic health: Healthcare systems, the need for healthcare services, digital systems and quality improvement, healthcare information systems, trends and architectures, best practices, e-health systems and security.
- Electronic health: Electronic healthcare record (EHR), requirements, structure and content, EHR, architectures, EHR standards, medical information and security, cost, performance and benefits, international practices, electronic patient record, architectures, data types, security issues, benefits, common practices, technical and semantics interoperability.
- Electronic health: e-health applications’ portfolio, international practices, exemplar e-health applications, characteristics, functions, home care and hospital at home, e-prescribing, e-referral, examples.
In recent years network programming has grown from a specialized programming form to a central component of any programming tool. The catalyst for this development proved to be the appearance of the Java programming language which was designed from the start to provide capabilities for the easy and generally safe transmission and reception of data via computer networks. These specific capabilities were critical for the establishment of Java as a lingua franca for the development of complex networking applications. This stems from the use of Java as the development language in basic network software environments such as the Android operating system for mobile devices. Consequently knowledge of the Java language and the network programming tools that it offers is a basic requirement for coding modern net-centric systems.
The goal of this course is to familiarize students with the basic principles of programming network systems using the Java programming language. The course consists of laboratory sessions. More specifically, the course presents the basic programming techniques for the implementation of various network applications while describing the main features of programming code that implements the specific applications. The students must then work on extending/upgrading/modifying the given code. Furthermore, the students are required to develop during the semester complex programming assignments chosen from a list of available topics that is handed to them at the start of the semester. After the successful completion of this course the students will have mastered the programming philosophy of network systems. In addition, they will be able to program with ease complex network applications in Java.
- Complex & Polymorphic Data Types : generic data types, collections.
- Event-driven Programming: listener interfaces, development of simple GUIs using the AWT library.
- User Interface Development using the Java Swing library: development of complex GUIs.
- Thread Programming: thread lifecycle, thread synchronization, timing applications.
- I/O streams: primary and complex data types I/O, data serializability.
- Socket programming: sockets lifecycle, socket types, socket management, development of communication protocols.
- Client/Server implementation: building blocks for programming client/server systems, development examples for server and clients that use threads for data I/O.
- Non-Blocking I/O: development examples for server and clients using the no-threads ΝΙΟ library.
- Multimedia Network Programming: management of multimedia sources, audio streaming example, overview of video streaming.
- Graphics Network Programming: graphics programming principles, development of animation applications, development of multiplayer games.
The main objective of this course is to present students contemporary issues and best practices in the area of Data Management. In this context, the course covers advanced topics in database design and query processing as well as new architectures of database management systems. These topics are interrelated with issues regarding the development of network-oriented systems and services. The course also presents the main concepts of knowledge discovery and data mining for voluminous data collections.
- Conceptual database design: Entity-relationship model, class model.
- Logical database design: Relational data model, integrity constraints over relations, database normalization, transformation of entity-relationship and class models into relational models.
- Database Security: Authentication, access control, security policies, users roles (model RBAC).
- Spatial data management: basic concepts of physical organization, data types of spatial data, indexing and query processing of spatial data, multidimensional data, problems of many dimensions (“the curse of dimensionality”, “the empty space phenomenon”), dimensionality reduction techniques.
- Advanced rank-aware query processing: Top-k query processing, rank-join (top-k join) query processing, algorithms for rank-aware query processing, skyline queries, algorithms for processing skyline queries.
- Parallel data management: Fundamental concepts and architecture of parallel databases, parallel query processing, introduction to data management in the cloud, the MapReduce programming model, the Hadoop implementation, HDFS, the language Hive.
- Distributed data management Basic concepts, problems, architectures, distributed query processing, peer-to-peer data management systems, unstructured and structured peer-to-peer networks.
- Data warehouse: Multidimensional data model, architecture of data warehouses, OLAP operations, business intelligence and tools for business intelligence.
- Unsupervised and supervised learning: Clustering algorithms (divisive, hierarchical, density-based, clustering applications), classification algorithms (decision trees, naive bayes classifier, support vector machines).
- Web mining: Link analysis, web search, page ranking algorithms.
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 applications 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.
- 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 factors 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, workflow specification and execution languages.
- Workflow security: workflow security requirements, authentication, authorization, and access control, security implementation issues.
- BPM and service oriented architectures: business process orchestration and choreography, business process execution language, case study.
Mobile Devices Programming
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. Finally the course aims to familiarize students with main concepts of developing Android mobile applications.
- 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.
- Overview of “smart” devices: Requirements for “smart” mobile devices: Personalization, context awareness, always best connectivity, ubiquitous service provision, seamless mobility. Functionalities: Acquiring user information, acquiring context information, policies, selection of optimal device configuration. Advantages – drawbacks, potential business benefits.
- Mobile device platforms: Overview of main mobile device platforms: iPhone, Android, Windows Mobile, Symbian, RIM, iPhone, overview of iPhone Operating System (IOS), main concepts of Objective C, tools for developing IOS applications, Xcode.
- Android SDK: 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, local files, SQLite data bases, table creation, insert and modification of records, queries, use of ContentProvider for the exchange of information between applications.
- 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.
- Security for mobile devices and applications: Threads and security risks, principles, concerns, best practices and critical success factors, Mobile devices’ security policy.
Management of Computer Networks
The course “Management of Computer Networks” aims at teaching the contemporary methodologies and technologies in the area of management and design of computer networks. In this context, the course covers modern computer networks including wireless /wired access and core networks. Moreover, the course aims at teaching aspects related to the top down network design, in terms of topology, addressing, routing and performance monitoring. Furthermore, the fundaments of computer network management, with respect to functional, information and communication models, are presented, thoroughly discussed and validated. The course is in general comprised of both theoretical lectures and specialized laboratory and programming exercises and platform demonstrations.
- Computer networks: Modern computer networks, wireless and wired access, core networks, packet switching, circuit switching, IP access via Digital Subscriber Line (DSL), Local Area Networks (LAN), Fiber-to-the-x (FTTx)-optical systems, Ethernet Wide Area Networks (WANs), optical technologies, Wireless 2G, 3G, Long Term Evolution LTE, Femtocells, IEEE 802,x technologies, heterogeneous infrastructures, radio resource management, spectrum and power management, network element topology problems, interconnection with backhaul/core networks.
- Top-Down network design: Business and technical goals, requirements and constraints, network monitoring and performance evaluation, traffic characterization, topological design, comparison of hierarchical and flat network design, three-layer network hierarchy, core, distribution and access layers.
- Design: Addressing design, hierarchical addressing, classless addressing, supernetting, switching protocols selection, spanning tree protocol, Virtual LAN (VLAN), routing protocols selection, path-update distance-vector and link-state protocols, autonomous systems, example protocols Routing Information Protocol (RIP), Open Shortest Path First (OSPF), Border Gateway Protocol (BGP).
- Network management: CFAPS functions, configuration management, fault management, accounting management, performance management, security management, management layers (element, network, service, business), manager(s), agents, management architectures and standards. IP-based management, Simple Network Management Protocol (SNMP), Management Information Base (MIB), Structure of Management Information (SMI)/Abstract Syntax Notation.1 (ASN.1) languages.
- MIB design and elaboration Ι: MIB reading and elaboration. Getting started with MIB-II (RFC 1213), focus on groups, system, interfaces, IP and TCP, monitoring and setting of parameters based on SNMP for configuration, performance and fault management, application into lab network infrastructure (servers, host PCs, switches etc) using NET-SNMP tool, performance of lab exercises and analysis of results.
- MIB design and elaboration II: Getting started with HOST-RESOURCES-MIB (RFC 2790), monitoring and setting of parameters based on SNMP for configuration, performance and fault management, derivation, elaboration and analysis of trap messages and alarms, application into lab network infrastructure (servers, host PCs, switches etc) using NET-SNMP tool, performance of lab exercises and analysis of results.
- Implementation of management applications: Design and implementation of network management applications based on SNMP, focus on configuration, performance and fault management, use of scripts and high level programming languages as well as NET-SNMP (C/C++) and NET-SNMPJ/SNMP4J (Java) software libraries, programming and laboratory exercises, derivation and analysis of results.
- Management platforms and tools: Demonstration and use of platforms and tools used today for monitoring, management and control of computer networks, HP Openview, SNMPc, MRTG/PRTG, Nagios, OpenNMS.
- Network Security Design: Identifying network assets, analyzing security risks, developing a security plan and policy, security procedures, security mechanisms, physical security, authentication, authorization, data encryption, public/private key encryption, packet filters, firewalls, intrusion detection and prevention systems, securing internet connections, securing servers, securing remote-access and VPNs.
- Modern methodologies and trends in computer network management: Self-*, Self-management, autonomic management, cognitive management, business level and service management (enhanced Telecom Operations Map – eTOM), policy based management, network governance, LTE Self-Organizing Networks (SON), management of cloud network infrastructures, SNMP/MIBs and extensions for cloud management, architectures, open interfaces and standards.
Cloud computing introduces a new way of sharing computing resources and it is the next stage in the evolution of Internet and digital technologies. In recent years, the applications and the importance of cloud computing have been rapidly increased with experts estimating that in the next few years personal clouds will replace personal computers. Furthermore, cloud computing creates a range of new skills and jobs. It is estimated that 14 million jobs worldwide will be created in the area of cloud computing by 2015, while the size of this market will reach 1.1 trillion dollars per year. The importance of cloud computing becomes more pronounced when one considers that this area is still in its infancy. Cloud computing introduces a series of new principles, ways to manage, access, and use of computing resources and services. This course aims at understanding the theoretical underpinnings of cloud computing and helping students to comprehend issues related to the deployment and management of computational clouds as well as services that run over cloud computing environments. 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.
- 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.
- Lab 1 – SaaS: Development, customization and execution of an application on Google AppEngine, installation and customization (e.g. service selection mechanism) of cloud middlewares (OpenStack, GRIA).
- Lab 2 – PaaS: Development of cloud environment as cloud providers (including certificates requests and generation, resource managers, endpoints configuration, etc), customization of wrappers for the execution of applications.
- Lab 3 – SLA: Cloud environment development, service level agreements specification, customization and execution of application service components in a cloud environment, user groups and user access management, service selection mechanisms
- 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.
- Cloud data storage: Distributed File Systems (DFS), comparison with parallel database systems, advantages and disadvantages, reading and writing data, examples of applications on top of Hadoop Distributed File System.
- Distributed data storage architectures in datacenters: Overview of architectures adopted by the major cloud providers (Amazon, Microsoft, Google) with particular focus on data storage and management, comparative study, relationship between cloud data storage and key features of cloud computing (scaling and fault-tolerance).
- 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.
- Cloud security: Cloud security levels, network security, host security, application security, storage security, data security, data provider security, security management and standards, identity management, security management for IaaS, PaaS, SaaS, storage as a service, security as a service, data lifecycle security.
Network-Oriented 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. Network oriented 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 network oriented 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 network oriented 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.
- Network-oriented systems’ governance: Definitions and principles of governance, components 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.
- Network-oriented systems project management: Portfolio management, project scheduling, resource management, project development framework.
- Sourcing and outsourcing: Advantages and disadvantages for ICT, software development and acquisition, appropriateness of outsourcing, outsourcing criteria, service level agreements, risk management.
- Network-oriented systems costing and return-on-investment: Costing procedures, Technical, economic and financial feasibility, costing factors, cost estimation methods, return-on-investment estimation methods, case study.
- Network-oriented systems strategy: Strategy for business value, linking network-oriented systems to business metrics, managing perceptions of network-oriented systems, creating and evolving a systems roadmap.
- Network-oriented systems evaluation: Successful evaluation framework, goal-oriented evaluation, goal-free evaluation, criteria-based evaluation, evaluation results, evaluation process and cost.
- Network-oriented 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.