Curious about studying MSc Software Engineering (16 months)at 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
1 Year
This MSc is available with an optional one-year industry placement. The 'with placement' programmes give you additional industrial experience by applying the skills you have learned throughout your studies. One of a range of advanced courses within our postgraduate master's programme in Computer Science, this particular course provides you with a specialism combining theoretical knowledge and practical skills in advanced computer science. This MSc develops graduates’ practical skills of producing models of software engineering processes and artefacts using appropriate modelling techniques, and applying measures to software engineering processes and artefacts and use the data produced to evaluate software engineering activities. Taught by a highly-regarded and long-established computer science department with strong links to business.
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.
In this module advanced issues of software engineering theory and practice are examined. The range of software engineering products and processes making up a software project are measured and modelled. Typical software engineering products explored in the module may include: user requirements, design documents, code etc. Typical software engineering processes explored in the module may include: testing, debugging etc. The aim of the module is to use the modelling and measuring of such products and processes to allow quantified decision-making during software development. The module offers students the opportunity to explore both the state-of-the-art and the-state-of-the-practice in software engineering. The module will examine the most up to date research findings about software engineering as well as investigate the current practices of many software engineering companies. A more detailed description of the module content is provided in the module delivery information for students.
Software engineering places great emphasis upon the use, and re-use, of components that are tightly specified and thoroughly tested. This approach is supported by the provision of software frameworks within which programs can be developed. A software framework typically provides an Application Programming Interface (API) implemented as a set of libraries, and supported by a set of tools that may be used during development. But where do APIs, ABIs and software libraries come from? How do we decide what components are required? How are they designed and implemented? Who builds them? How do they go about it? How are they tested? How can we be sure that they work? What effect does the design and implementation of APIs and software libraries have upon the performance of systems that employ them? This module attempts to address these and other issues associated with the design, construction and use of software frameworks.
The project is a showpiece opportunity for students to demonstrate what they know about current research and practices in software engineering and show off their skills in applying software engineering models, methodologies, measures and tools in order to conduct a practical investigation or tackle a particular software engineering problem. The project is a self-directed piece of work, conducted with minimum online supervision that demonstrates the student's ability to plan and manage a substantial piece of work, and steer their own efforts. Students are expected to be thorough in their work, and, particularly, identify and tackle any difficult or challenging aspects of the problems they are trying to solve. It is not just the quantity, or even the quality of work that is considered when grading the project, but the level of difficulty and the scope of the problem being addressed.
This module gives students the opportunity to extend their understanding and experience of software engineering practice. It offers students exposure to the development and evolution of software. The module is very practical and is based around a substantial piece of software. The aim of the module is to enable students to develop software engineering knowledge and skills that are transferable to software companies. The module covers each element of the software engineering process. It explores the use of overarching development approaches such as eXtreme Programing and Component Based Software Engineering. Leading edge practices are introduced such as using program slicing to find code faults. Specialised software development approaches are investigated such as those required for application areas such as safety critical systems. Process models popular with industry, such as one of the SEI models, are also used and evaluated during this module. A more detailed description of the module content is provided in the module delivery information for students.
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.
The University of Hertfordshire offers a huge variety of postgraduate courses across 19 subject areas, from creative art...