How to design a software architecture that meets the needs of its stakeholders? How to bridge the gap between requirements and implementation? How to mitigate the risks in your software project? These are the essential questions in this course.
The course focuses on these tasks:
- Analyze the architecturally significant requirements and scenarios based on the stakeholder concerns for an open-ended, complex problem.
- Design a software architecture that tries to address the architecturally significant requirements and scenarios; the design is created iteratively and as a team work.
- Model and document the design and design decisions using multiple views and viewpoints and in a consistent fashion.
- Evaluate whether the high-level architecture design addresses the scenarios.
- Analyze, relate and present all these.
The course revolves around an iterative group exercise. During the group exercise, you will apply all steps listed above: you analyze, design, model, document and evaluate. Hence, you will learn by doing, and the course content has been designed to help you in this task. At the same time, you are able to learn the generic concepts and principles behind this task.
The registration for this course happens in two phases. Firstly, register via Oodi: the DL for Oodi registration is 9 of January, at 23:59. Secondly, register as a group: the DL for the group registration is 25 of January, at 23:59.
The course has no final exam. Instead the weekly learning tasks and the group exercise are evaluated.
Teacher: Professor Kari Smolander
Supervision of weekly learning tasks: Anar Bazarhanova
Exercise supervision: Jesse Yli-Huumo
25.1. Group registration
8.2. Architectural analysis
1.3. Functional design
15.3. Full design
5.4. Peer review
19.4. Presentation slides
8.5. Final delivery
Schedule, material tasks, etc.
You can find from the left side the following
- Weekly schedule and tasks, with links to associated lecture materials and task descriptions
- All lecture and reading materials
- All exercise related items