Advanced Software Engineering (947G5)

15 credits, Level 7 (Masters)

Autumn teaching

In this module, you study modern approaches to large-scale software production.

You start by reviewing the key concepts in the whole life-cycle of a software product, such as:

  • requirement analysis
  • software architecture and design
  • implementation
  • quality assurance
  • maintenance activities.

You investigate modern software engineering technology, such as:

  • version control
  • build automation
  • testing
  • logical approaches to specification
  • verification of programs and domain-specific languages.

As part of this module, you undertake team-based coursework, which involves the production of a significant software system.

A solid knowledge of programming is important for this module. Programming exercises will be in Java.


55%: Lecture
45%: Practical (Laboratory)


50%: Coursework (Portfolio)
50%: Examination (Computer-based examination)

Contact hours and workload

This module is approximately 150 hours of work. This breaks down into about 40 hours of contact time and about 110 hours of independent study. The University may make minor variations to the contact hours for operational reasons, including timetabling requirements.

This module is running in the academic year 2021/22. We also plan to offer it in future academic years. However, we are constantly looking to improve and enhance our courses. There may be changes to modules in response to student demand or feedback, changes to staff expertise or updates to our curriculum. We may also need to make changes in response to COVID-19. We’ll make sure to let our applicants know of material changes to modules at the earliest opportunity.