Curious about studying MSc Software Engineering with Advanced Projectat University of Hertfordshire? We've gathered all the key details—entry requirements, modules, fees, and more. Hear from real students by checking out reviews, or take the next step by booking an open day to explore it for yourself.
MSc - Master of Science
College Lane - Campus
Full Time
Jan 2028
2 Year
The MSc Software Engineering with Advanced Project is designed for graduates who want to develop advanced technical knowledge and practical experience in software engineering principles and practices, across both theoretical foundations and practical application. You will explore key areas such as software design, development methodologies, system architecture and emerging technologies, developing the skills needed to design and deliver robust software solutions.
In this module, you will explore legal, social, ethical, and professional issues that may affect the work of practitioners in the computing and technology sectors. You will focus on the ethical considerations inherent in the development of responsible technologies. The topics covered will vary from year to year to reflect contemporary research and issues.
In this module, you will examine advanced issues of Software Engineering theory and practice. You will measure and model the range of Software Engineering products and processes that make up a software project. Typical Software Engineering products explored in the module may include user requirements, design documents, and code, while typical processes may include testing and debugging. You will use the modelling and measuring of such products and processes to enable quantified decision-making during software development. The module offers you the opportunity to explore both the state of the art and the state of the practice in Software Engineering. You will examine the most up-to-date research findings in the field and investigate the current practices of many Software Engineering companies.
In this module, you will explore the importance of using and reusing components that are tightly specified and thoroughly tested in Software Engineering. You will examine how software frameworks support this approach by providing an Application Programming Interface (API) implemented as a set of libraries and tools used during development. You will consider key questions such as where APIs, ABIs, and software libraries come from, how to decide which components are required, and how they are designed, implemented, and tested. You will investigate who builds these components and the processes they follow, as well as how we can ensure that they work effectively. Finally, you will explore how the design and implementation of APIs and software libraries impact the performance of systems that use them.
This module has two delivery elements. For the taught element, you will learn how to build and manage strong teams, foster communication and trust, understand the intricacies of large-scale projects, understand project management methodologies and tools, set up and structure activities that run in parallel, and manage change requests from different stakeholders. For the project element, you will operate within a secure, semi-structured environment, participating in teams and working towards the completion of a large-scale, complex, and multidisciplinary project.
The project module includes both a taught and a non-taught component. During the taught part, you will cover the following topics: Project plan development, Project risk assessment, Ethics and working with human participants, Problem analysis and decision-making, Literature review, Conducting investigative work, Documenting a project, and Report writing and presentation. In the non-taught part, under the guidance of a supervisory team, through a series of scheduled meetings lasting up to 6 hours, you will work towards completing a project in Software Engineering.
In this module, you will extend your understanding and experience of Software Engineering practice, gaining exposure to the development and evolution of software through a practical approach centred around a substantial piece of software. The aim is to enable you to develop Software Engineering knowledge and skills that are transferable to software companies. You will explore each element of the Software Engineering process, including development approaches like eXtreme Programming and Component-Based Software Engineering, while also learning leading-edge practices such as program slicing to find code faults. You will investigate specialised software development approaches, particularly for safety-critical systems, and use and evaluate industry-popular process models, including one of the SEI models.
In this module, you will develop your theoretical, professional, technical, and academic skills to help you succeed in various data engineering contexts. You will take a practical approach to converting raw data into valuable knowledge. Working in teams, you will apply skills in cloud computing, big data, Machine Learning, and data visualisation, among others.
The University of Hertfordshire offers a huge variety of postgraduate courses across 19 subject areas, from creative art...