Advanced Software Design

Description

The module extends the learner's understanding of software design through the explication and critique of software design patterns and metrics for analysing design quality.

Learning Outcomes

  1. Develop enterprise software applications using class and package level design principles and best practice.

  2. Apply object-oriented design patterns to create reusable and flexible software and enterprise software artefacts.

  3. Analyse a complex problem and apply a solution using object-oriented precepts and conventions.

  4. Analyse the structural quality of software artefacts using state-of-the-art design metrics.

  5. Understand the limitations of object-orientation and the role of functional, declarative and multi-paradigm programming styles in modern software development.

Credits
05
% Coursework 100%