This module is offered in 2024-25.

Aims

The aims of this module are:

  • To give a broad overview of the software lifecycle and the development process.
  • To provide students with an understanding of how software engineering helps to manage software development within a division of labour.

Learning Outcomes

On successful completion of this module, the student should be able to:

  • Identify the key concerns that are common to all software development processes.
  • Select appropriate process models, approaches and techniques to manage a given software development process and justify the choices.
  • Elicit requirements for a software product and translate these into documented architecture and software design.
  • Discuss ethics, sustainability and dependability issues that affect a given software product.
  • Describe the role that testing and reuse play in the software lifecycle.

Syllabus

  • Software lifecycle and processes, including plan-driven, agile and DevOps
  • Ethics and sustainability in software engineering
  • Requirements engineering
  • Software architecture and design
  • Modelling with UML: use cases, structure and behaviour
  • Quality assurance including dependability and software testing
  • Software evolution and reuse
  • Professional software engineering: collaborative development and project management

Compulsory Elements

This module has no compulsory elements beyond those common to all modules (mark of 4 in each assessment component).

Module Delivery

Back to top

Last Published: 11 Dec 2024.