|Year of offer||2019|
|Subject level||Undergraduate Level 2|
|Fees||Subject EFTSL, Level, Discipline & Census Date|
Developing medium and large scale software systems requires analysis and design prior to implementation. This subject introduces students to software design, with specific focus on object-oriented design, and the implementation of designs using an object-oriented programming language. The subject aims to lay the foundations to software design, and is the first subject of a sequence of subjects that teaches the students the concepts in software design.
Topics covered include:
- Object-oriented programming techniques
- Object-oriented design concepts and modelling
- Design patterns and their applications
- Object-oriented frameworks.
Intended learning outcomes
INTENDED LEARNING OUTCOMES (ILO)
On completion of this subject the student is expected to:
- Apply software design principles to object-oriented design
- Develop object-oriented models for a medium-sized software system
- Evaluate design trade-off of different designs
- Implement an object-oriented design in a suitable language
- Use commonly available object-oriented design frameworks for application development
- Apply knowledge of basic science and engineering fundamentals
On completion of this subject, students should have the following skills:
- An ability to apply knowledge of basic science and engineering fundamentals
- In-depth technical competence in at least one engineering discipline
- An ability to undertake problem identification, formulation and solution
- An expectation of the need to undertake lifelong learning, and the capacity to do so.