Software Design and Data Structures / Project

Description

This module covers advanced object-oriented concepts such as threads, abstraction, encapsulation, inheritance and polymorphism. In addition, common data structures, algorithms and their space and time complexity are studied. The assessment of this 10-credit module includes a capstone project worth 50% of the total credits.

This project is unique in that it provides a pedagogic scaffold for learners through its time-tabled and lecture supported delivery, whilst still providing significant and necessary self-directed learning opportunities through the appropriately weighted capstone project.

The project aims to encompass and embrace the totality of the modules in the programme, with specific emphasis on software design and software engineering, underpinned by core cloud computing, networking and database paradigms.

Learning Outcomes

  1. Implement advanced OO features in software applications

  2. Design and implement concurrency control in a software application.

  3. Use well-known algorithms and data structures in a software solution

  4. Implement algorithms and data structures in a programming language

  5. Implement a capstone project which demonstrates the integration of many or all of the constituent components (where appropriate) of the programme with specific emphasis on software design and engineering and underpinned by core cloud computing, networking and database paradigms.

Credits
10
% Coursework 100%