Course - Software Architecture - TDT4240
Software Architecture
About
About the course
Course content
In the course, the students will learn to define and explain central concepts within software architecture and to use and describe design and architectural patterns, methods to design software architectures, methods to achieve software qualities, methods to document software architectures, and methods to evaluate software architectures.
The course gives knowledge about various design and architectural patterns for some domains, and about software architecture and games.
The course gives also a practical introduction to use of methods and techniques related to software architecture through a project that goes through the whole development process, as well as implementation of a software architecture.
Learning outcome
Knowledge:
- Central concepts related to software architecture.
- Quality requirements and quality attributes.
- Methods for evaluation software architectures (ATAM and CBAM).
- Development processes that includes architectural design.
- Various design and architectural patterns.
- Methods for designing software architectures.
- Methods for specifying quality requirements in a system.
- Relationship between requirements, architecture, process and quality.
- Methods for generating an architecture from an existing system.
- Games and software architectures.
Skills:
- Usage of design and architectural patterns.
- Document quality requirements.
- Document software architectures.
- Evaluate software architectures.
- Design software architectures.
- Implement software architectures.
General competence:
- Improved skills within software engineering in general.
Learning methods and activities
Lectures and exercises. The course will be held in English. Portfolio evaluation is the basis for the grade in the course. The portfolio includes a final written test (70%) and exercises (30%). The results for the parts are given in %-scores, while the entire portfolio is assigned a letter grade. If there is a re-sit examination, the examination form may change from written to oral.
Recommended previous knowledge
TDT4100 Object-Oriented Programming, or equivalent. TDT4140 Software Engineering, or equivalent.
Course materials
To be announced at the start of the term.
Credit reductions
| Course code | Reduction | From |
|---|---|---|
| SIF8056 | 7.5 sp |
Subject areas
- Informatics
- Technological subjects