Software Engineering module (CS21005)

Explore key principles and practices of software engineering.

On this page


Module code


In this module, you will gain a comprehensive understanding of important software engineering principles and practices. A particular focus is put on software specification and design techniques.

Through practical assignments and projects, you will develop the skills necessary to apply these concepts in real-world scenarios.

What you will learn

In this module, you will:

  • learn about fundamental principles of software engineering, including standard practices and notations
  • study software design principles such as abstraction, modularity, and separation of concerns
  • apply software specification and design methods in projects
  • learn about software design quality, how to measure and recognise it
  • learn how to assess and address qualitative aspects in software engineering, such as maintainability, scalability, and usability
  • explore tools to aid in software engineering processes, including design software and version control systems

The module will also discuss how to communicate and present software engineering designs, specifications, and appraisals to stakeholders.

By the end of this module, you will be able to:

  • demonstrate your understanding of software engineering processes
  • use industry-standard notation and practices for software engineering
  • apply software design principles to create high-quality software designs
  • assess the qualitative aspects of software engineering and address them correctly
  • appropriately select tools to aid in software engineering processes

Assignments / assessment

  • weekly review exercises (20%)
  • individual project (50%)
  • consolidation activity (30%)

This module does not have a final exam.

Teaching methods

You will learn by taking a hands-on approach. This will involve taking part in tutorials and practical sessions.

Learning material is provided through videos, review notes, examples, and tutorial questions.

This is a half-semester module. You will study another 10 credit module during the other half of this semester.


This module is available on following courses: