Skip navigation

Online MSc in Software Engineering

Structure

The University of Liverpool online MSc in Software Engineering consists of seven core modules and one elective module. Core modules cover a wide range of topics, including software modelling, quality testing and software project management.
Assignments in each module will allow you to create a Professional Portfolio of Evidence, as well as work towards building your advanced project solution. Artefacts from the modules help to demonstrate your strategic mindset and showcase your growth and decision-making skills to employers.
The first module takes 10 weeks. Each subsequent module lasts eight weeks.

Core Modules

  1. The Global Technology Environment
  2. Software Engineering and Systems Architecture
  3. Software Testing and Quality Assurance
  4. Professional Issues in Computing
  5. Advanced Database Systems
  6. Software Modelling and Design
  7. Managing Software Projects

Objective

To lay the foundation for successful study, and provide students with a comprehensive understanding of the key concepts associated with the computing environment.

Description

Start your personal and professional journey with this on-boarding module where you will be introduced to the online learning environment. The module provides a critical "state-of the-art" review of the domain of information technology (IT). It is designed to offer a wide-ranging understanding on topics such as software engineering, cyber security and big data analytics. By completing the module, you will have a comprehensive global view of the current IT landscape in the context of both commercial and non-commercial enterprises. The module blends both theory and practice, so that a solid foundation is provided for future study.

Curriculum insights

  • Participating and navigating in the global classroom
  • The value of IT
  • IT strategy implementation: the technology road map and tactical planning
  • IT governance: budgeting and IT portfolio management
  • Acquiring software: outsourcing, vendor and contract management
  • Operations and IT capabilities
  • The role of IT with respect to compliance, privacy and legal considerations
  • Managing and developing IT capabilities, managing risk and change
  • IT innovation and emerging technologies

Duration

10 weeks

Objective

To provide foundational skills and knowledge of the software engineering discipline and prepare students for careers in the software engineering industry. You will have an opportunity to gain experience in the use of state of the art software engineering tools and techniques.

Description

This module provides students with a solid foundation of the techniques, technologies and tools of software engineering. Emphasis is on the problem-solving techniques of software engineering and on system architecture that results from applying these techniques. Project management and configuration management issues are also discussed. You’ll have the opportunity to practice many of the software engineering techniques using the most current tools.

Curriculum insights

  • Introduction to software engineering
  • Methodologies for managing software development projects
  • Working in software development teams
  • Gathering and modelling requirements
  • Designing a baseline software system architecture
  • Designing and implementing software modules
  • Delivering the support, maintenance and improving the software development process
  • Software engineering constraints and technology trends

Duration

8 weeks

Objective

To provide a comprehensive understanding of the critical specialisation of software quality assurance and testing. You will have an opportunity to develop key skills required its effective practice and in professional roles the field of software engineering.

Description

This module examines software testing and quality assurance practices, both of which can have technical, financial and ethical implications for modern organisations. You’ll explore testing and inspection methods, stress testing techniques, quality management standards, configuration management and more. By the end of the module you will develop a detailed understanding to create successful testing and quality assurance programs to support the needs of a modern software engineering project.

Curriculum insights

  • Software engineering processes, quality assurance and testing
  • Software testing and best-practices: unit, component, integration, system, user, and stress testing; test-driven development (TDD), peer reviews and software inspection techniques
  • Development testing, technical practices related to testing methods, implementation techniques for unit testing within the context of a modern testing framework (e.g. JUnit)
  • Testing metrics, techniques for quantifying aspects of testing, metrics to address complexity, testability, and test coverage
  • Configuration management
  • Web testing
  • Dimensions of software quality: reliability, dependability, safety and security
  • Quality management: developing and instituting organisational practices and processes to foster quality, ISO 9001, CMMI, and Six Sigma

Duration

8 weeks

Objective

To offer students the opportunity to consider and understand the professional and ethical issues arising in the use of IT systems. You will explore legal and social issues that computing professionals may encounter and develop key management skills required for effective utilisation and operation of IT.

Description

To function effectively, professional IT practitioners need not only the appropriate technical knowledge, skills and experience, but also a broad understanding of the context in which they operate. IT professionals must understand the relationship between technological change, society and the law, and the powerful role that computers and computer professionals play in a technology driven society. This module provides students with the knowledge that allows IT professionals to be: capable in their chosen professional areas, operate effectively in work and community situations, be aware of their environments and have a complete and critical understanding of the Legal, Social, Ethical and Professional Issues (LSEPI) that are material to the IT industry.

Curriculum insights

  • Technology within society
  • Professionalism in IT
  • Legal perspectives, privacy and data protection
  • Censorship and intellectual property in the context of IT
  • Security and cybercrime
  • IT investments, contracts and outsourcing
  • Elements of risk management
  • Social aspects of technology, emergence and convergence of technologies

Duration

8 weeks

Objective

To develop the knowledge and skills required to design and implement modern database systems. You will have an opportunity to compare established relational database paradigm with emerging alternative approaches to hone your critical evaluation and analytical skills.

Description

Data is the life blood of an organisation, this module covers key areas such as requirements, design, implementation, security, performance and scalability in creation of database systems. Through a hands-on approach and practical project, you’ll have an opportunity to design and build database systems using latest database technologies.

Curriculum insights

  • Evaluation of modern database systems
  • Database Systems Architecture
  • Applying data models
  • Transactional Databases
  • Data Analytics
  • Big Data
  • Database performance and resilience
  • Security

Duration

8 weeks

Objective

To provide a comprehensive understanding of the tools and techniques used in software modelling and design within modern development process. You will have an opportunity to develop a comprehensive understanding of the Object Oriented and Agile software development processes and the opportunity to apply your news skills in practical software engineering scenarios.

Description

This module provides students with detailed modelling and design knowledge used in the modern software engineering industry. You will study a number of software design techniques, including object-oriented design as well as standard notations. You’ll explore agile software development methodologies and life cycles, to cover the development process from feasibility studies through to software implementation.

Curriculum insights

  • The concept of software modelling and design
  • Agile software development and object orientation
  • Software requirements modelling
  • Static Modelling techniques in software design
  • Dynamic modelling techniques in software design
  • Design patterns and software implementation
  • Analysis of CASE tools

Duration

8 weeks

Objective

To develop skills to manage software projects successfully from inception to close. You will explore leading industry methodologies, how to create a strong communication plan and how to best monitor and control projects.

Description

In this module provides students with the skills required to manage successful software projects to meet the strategic goals of the organisation. The key topics for managing project scope, budget and schedule will be covered. You will analyse how to best monitor and control projects, as well as how to execute a strong communication plan and evaluate team dynamics for effective team productivity.

Curriculum insights

  • Managing software projects, scope, schedule, costs and risk
  • Agile software project management practices and their significance for successful implementation
  • Models of Software Project Management
  • Identifying, driving, influencing and removing obstacles for successful enterprise software project initiatives
  • Roles and resources in software projects: effective use of methodologies such as Agile and SCRUM
  • Maximising project management team productivity
  • Software quality and reviews: foolproof testing, project control and integration to project goals.
  • Decision tracking for assessing changes in software and hardware project requirements

Duration

8 weeks

Elective Modules

This programme allows you to choose one elective.

  1. Algorithms and Computation
  2. Applied Cryptography
  3. Big Data
  4. Cloud Computing
  5. Cyber Crime Prevention and Protection
  6. Cyber Forensics
  7. Data Mining
  8. Data Visualisation and Warehousing
  9. Intelligent Systems
  10. Predictive Analytics for Decision Making
  11. Security Engineering and Compliance
  12. Security Risk Management

Objective

To provide a comprehensive understanding of the role and importance of algorithms in solving computational problems, and the types of algorithms that are in common use. You will have an opportunity to design, implement and develop new algorithms.

Description

This module explores the role and importance of algorithms, their use to solve a computational problem and the process of designing algorithms where no suitable existing algorithm is available. Students will also learn to analyse algorithm behaviour, correctness and complexity - based on both time and memory requirements. This module is designed to provide in-depth knowledge in a range of significant algorithms that are in common use and are of historical significance within the IT industry - including sorting algorithms, searching algorithms, graph algorithms and path finding algorithms. The material taught in the module is programming language independent, algorithms will be represented using pseudo code which students will be able to implement in their preferred programming language.

Curriculum

  • Role and importance of algorithms
  • Algorithm building blocks
  • Sorting algorithms
  • Searching algorithms
  • Graph algorithms
  • Network flow algorithms and their application
  • Computational geometry and NP-completeness

Duration

8 weeks

Objective

To provide insights into cryptographic algorithms and protocols, including a detailed understanding of symmetric key encryption algorithms, hash function algorithms, public key cryptography algorithms and key agreement protocols. You will have the opportunity gain an in-depth understanding of attacks, vulnerabilities and of quantum computing techniques, as well as experience to apply cryptographic algorithms and protocols to solve security issues.

Description

This module provides students with a critical understanding of how to use cryptographic algorithms and protocols to solve practical security problems (such as confidentiality, integrity and authenticity). As a student, the module also allows you to acquire a systematic understanding of open-source tools to build secure applications, and to learn how best to apply such tools.

Curriculum

  • Introduction to classical cryptography
  • Block ciphers, symmetric key encryption and secure hash functions
  • Public key cryptographic encryption and signature schemes
  • PKCS: Public Key Cryptography Standards
  • Elliptic Curve cryptography
  • Quantum computing and quantum cryptography
  • Key agreement, identification, and zero knowledge
  • Password authentication, identity based cryptography, and other advanced topics.

Duration:

8 weeks

Objective

To provide a comprehensive understanding of big data tools and techniques as well as a critical understanding of an open source software framework for distributed data storage and processing. You will have the opportunity to gain a practical understanding of the issues related to the integration and deployment of big data management systems in the context of enterprise deployment.

Description

This module provides students with detailed knowledge of big data tools and techniques, and big data management frameworks that can be used to support advanced analytics. This module will consider big data management frameworks in general, but with a focus on the Hadoop open-source data storage and processing platform and its underpinning sub-systems. It also provides detailed awareness of how big data systems support data-driven decision making.

Curriculum

  • Introduction to big data and Apache Hadoop, terminology and basic concepts
  • Big data ecosystems and the big data landscape, the six Vs of big data
  • Components of the Hadoop stack, attributes and uses of MapReduce, the Hadoop Distributed File System (HDFS) and Yarn, installing Hadoop and running ‘large dataset programs’ with Hadoop
  • Modelling and managing big data, Big Data Management Systems (BDMS) and practical work with Cloudera Data Management Virtual Machine
  • Big data integration and processing; configuring and working with BDMS schemes, including further work with the Cloudera Virtual Machine
  • Data frames and document oriented big data systems, predictive analytics with Pandas Dataframes, MongoDB, Splunk and Datameer
  • Big data processing pipelines and graph analytics, distributed processing with Apache Spark components (Spark core, pipelines, transformation engines, SparkSQL and Spark GraphX)
  • Big data enterprise deployment, integration and security issues

Duration:

8 weeks

Objective

To provide students with a comprehensive overview of advances in cloud computing and the possibilities it has unleashed.

Description

Cloud computing is an important new paradigm in information technology that provides a basis for a new wave of technology developments. Cloud computing embodies advances in computing, networking, and storage technologies which individually and collectively include major hardware and software breakthroughs. These include computer virtualisation, distributed and replicated storage, and software-based networking. Cloud computing motivates further technology advancement and changes how modern IT infrastructures are built and evolved. There is a growing demand for specialists with strong technical background and deep knowledge of cloud computing technologies.

Curriculum insights

  • Cloud architecture and foundations
  • Building cloud-based infrastructure, services and applications
  • Existing cloud architecture models
  • Cloud industry standardisation
  • Middleware platforms
  • Cloud provider platforms

Duration

8 weeks

Objective

To provide a systematic understanding of the tools and techniques that can be deployed for cybercrime prevention by developing a broad understanding of the information security management landscape. You have the opportunity to develop practical skills to deploy the tools and techniques of cybercrime prevention, in both commercial and non-commercial settings, through the use of ‘ethical hacking’.

Description

This module provides students with a comprehensive understanding of the tools that can be used to prevent and mitigate against cybercrime – including the deployment of cybercrime prevention strategies for application in the workplace by considering the motivations behind cybercrime. Students have the opportunity to build an ‘ethical hacking’ environment with which to experiment and test their skills.

Curriculum

  • Critical overview of cybercrime prevention terminology and the legal aspects involved
  • Information Security Management, Security Auditing, Monitoring, Ethical hacking and Penetration Testing
  • Building of an ethical hacking environment (laboratory) to allow experimentation with hacking techniques and comprehensive understanding of these techniques can be gained
  • Ethical hacking in a number of contexts such as: wireless communication: WiFi, Protocol access, Operating Systems, the ’Secure Sockets Layer‘ access point cloning, router attacks, SQL injection and the building of key loggers
  • Techniques, tools and processes for cybercrime prevention in a variety of domains such as: desktop applications, wireless access points smartphones and Bluetooth connections
  • Comprehensive understanding of the security challenges of emerging computing environments.

Duration:

8 weeks

Objective

To give students knowledge of the practice of extracting evidence from computers and digital storage media.

Description

This module provides you with the knowledge that allows you to identify, extract, document, interpret and preserve computer media as digital evidence, as well the understanding of how to analyse the root cause of security breaches. It covers issues including crypto-literacy, data hiding and hostile code.

Curriculum insights

  • Identification and extraction of computer media
  • Documenting, interpreting and preserving computer media
  • Assessing, comparing and judging computer media

Duration

8 weeks

Objective

To provide a detailed, critical understanding of the concepts of data mining, the end-to end data mining process and the ability to deploy appropriate tools and techniques in line with organisational and business requirements. As a student, you will have the opportunity to gain experience in implementing data mining algorithms and evaluating their performance.

Description

This module provides students with an in-depth understanding of the concepts of data mining, including the end-to-end process and major data mining tools and techniques in common use. As a student, you will have the opportunity to apply such tools and techniques to a variety of example data sets so as to gain vital insights into their operation, and when and where these tools can best be applied. You will also have the opportunity, using the 'R' programming language, to implement several different kinds of data mining algorithms to gain a comprehensive understanding of their operation.

Curriculum

  • Data Mining concepts, including: the end-to-end Data Mining process, different types of data that can be used in this process, problems that may be encountered and methods for dealing with these problems
  • Decision Tree extraction algorithms and their implementations, coupled with a critical analysis of the advantages and disadvantages of a range of Decision Tree induction techniques
  • Association Pattern mining algorithms and their implementations together with a critical comparison of Association Rules and those extracted by Decision Tree induction algorithms
  • Cluster analysis algorithms, including the use of Self Organising Maps and the use of Neural Networks for mining data clusters
  • Mining Data Streams, including: the detection of Concept drift and how best to deal with Volume, Velocity and Veracity (VVV) problems associated with Data Streams
  • Mining text data, including a critical comparison of different Document Similarity detection techniques
  • A critical comparison of web mining techniques, including Crawlers
  • A comprehensive analysis of social network mining techniques for extracting useful knowledge from social networks, and for visualising the relationships in social networks; concluding with material on how to match Data Mining algorithms with problems.

Duration:

8 weeks

Objective

To provide a detailed understanding of the concepts and challenges of creating data warehouses. You will have an opportunity to create a data warehouse using open source technologies and free public data sets. You will also be introduced to why data visualisation is important and how to communicate these insights to tell a ‘data story’.

Description

This module introduces students to the concept and challenges of creating data warehouses and how data visualisation tools can be used to ‘tell a story’. As a student, you will have the opportunity to gain practical experience of how to create data warehouses using data from multiple sources. The module will also introduce best practices in data visualisation and data storytelling, using state-of-the-art data visualisation technology.

The module is intended to help you understand the approaches and benefits of data warehousing, and show you how to quickly gain and communicate insights into the data stored in data warehouses using data visualisation techniques.

Curriculum

  • Review of the rational for, and benefits of, data warehousing, common challenges (integration, data cleansing) and different architectures (transactional, dimensional), the business case for data warehousing
  • Design of relational databases (normalising vs. de-normalising, defining dimensions and facts) using public data sources and an open source database platform
  • Data accuracy and data cleansing, defining rules for data warehousing
  • Loading data into a data warehouse and ensuring that relevant business case objectives are met
  • Benefits of visualisation and data storytelling, best practice for visualisation, how to avoid common mistakes and exploration of a selected data visualisation system
  • The process of building visualisations to answer common business questions illustrated using the visualisation system introduced in earlier in the module
  • Combining visualisations into a single dashboard to "tell a story" and provide insights, concerning data stored in a data warehouse and appropriate conclusions drawn
  • Expanding and building on existing insights by adding trends and forecasts; comparison with other types of data analysis, such as predictive and prescriptive data analytics.

Duration

8 weeks

Objective

To provide a comprehensive understanding of intelligent systems techniques. You will evaluate modern techniques and tools used to develop and deploy artificial intelligence and machine learning.

Description

This module introduces students to emergent areas of intelligent systems. You will have an opportunity to gain a critical understanding of machine learning techniques, knowledge representation, neural networks, fuzzy logic and evolutionary techniques. You will be presented with real world problems and have the opportunity to apply intelligent systems techniques to provide solutions to these problems.

Curriculum

  • Introduction to intelligent systems
  • Evolutionary computation algorithms
  • Rule-based expert systems
  • Fuzzy expert systems
  • Deep reinforcement learning
  • Hybrid intelligent systems
  • Intelligent systems applications

Duration

8 weeks

Objective:

To provide a systematic understanding of key predictive analytics techniques and an understanding of the types of business problems predictive analytics can solve. You are provided with an opportunity to apply the tools and techniques learned throughout the module to typical business problems.

Description:

This module provides students with insight into how predictive analytics can be used to help organisations and their customers make better decisions. As a student, you will have the opportunity to gain a comprehensive understanding of how results from predictive analytics can be used by organisations to grow their customer base and run operations more efficiently. This module is oriented towards practical applications of predictive analytics.

Curriculum

  • Common predictive analytics techniques (e.g. logistic regression, classification trees, collaborative filtering) and model development best practices
  • The end-to-end process of predictive analytics in the context of commercial environments: (i) problem identification, (ii) data assessment, (iii) data preparation, (iv) model development, (v) model deployment and (vi) making insights available to decision makers
  • Application of predictive analytics scoring models I: customer acquisition. Use case on optimising direct marketing campaigns utilising lists of score prospects
  • Application of predictive analytics scoring models II: customer retention. Use case on decreasing customer churn
  • Application of predictive analytics scoring models III: operational efficiency. Use case of optimising collection agent’s time by prioritising outreach to ‘high risk customers’
  • Application of predictive analytics scoring models IV: recommended systems. Use case on product recommendations in an online store
  • End-to-end application of predictive analytics techniques in business environments

Duration:

8 weeks

Objective

To provide students with an in-depth understanding of information security concepts and models.

Description

This module provides an insight into information security principles, security policy models/protocols, industry standards for security compliance, and risk assessment. You will acquire a critical understanding of how to use information security techniques to solve practical security problems. You will also have the opportunity to gain skills for designing/implementing security infrastructure and writing security/incident response polices. Practical, extensive, hands-on project work is designed to ensure you are ready to apply in the workplace the knowledge gained in the module.

Curriculum insights

  • Threats to, vulnerabilities of, and attacks on IT systems
  • Security compliance and industry standards
  • Information security models
  • Protocols for solving security problems
  • Risk assessments
  • Security infrastructures
  • Security/incident response policies
  • Penetration testing

Duration

8 weeks

Objective

To provide students with theoretical and practical knowledge of, and insight into the formal, systemic approaches to, cyber security risk management (CSRM).

Description

Threats to information security are becoming more sophisticated. Laws and regulations impose strict CSRM requirements on all enterprises to prevent, or at least limit, the potential of cyber-attacks. This module aims to provide the theoretical and practical knowledge to deliver a formal, systematic and in-depth approach to the application of the concepts, techniques, methods, approaches and processes of CSRM in a pragmatic manner and in the context of enterprises of all kinds.

Curriculum insights

  • Information security policy and management
  • Advanced security issues knowledge
  • Practical ability in security risk management

Duration

8 weeks

Dissertation

Students refine their dissertation topic in conjunction with their Personal Dissertation Advisor, an academic supervisor who will provide support throughout the writing process.


Dissertation Project

The dissertation project module commences with a research methods training component during which students will be given instruction and guidance on the planning and organisation of their work. During the course of the research methods training students will also be expected to start formulating their project. The project itself, following on from the research methods training, will be individually supervised via online communication within the learning platform also used for all other online modules. There is an interim assessment point during the course of the project where students submit their project specification and design. At the end of the project students are expected to submit a dissertation describing their project.


  • To provide a systematic analysis of the nature and conduct of Information Technology and Computer Science research
  • To allow students to successfully develop a Final Project and Dissertation
  • To equip students with the ability to undertake independent research
  • To examine the foundations of research and associated legal and ethical issues

Learning Outcomes

  • Conduct research in IT
  • Produce a dissertation in the accepted format
  • Conduct extensive literature searches
  • Appraise research papers
  • Critically analyse project results
  • Assess ethical issues in relation to IT projects

Please note that current scheduling may be subject to change and that we cannot guarantee that all modules will be offered in every calendar year.