NDAK11001U Software Design and Software Architecture
Software design is concerned with structuring software systems
in such a way that functional and quality requirements can be
fulfilled by an implementation.
For large systems, the software architecture design of systems,
i.e., "the structure or structures of the system, which
comprise software components, the externally visible properties of
those components, and the relationships among them", becomes
critical.
The course will enable students to design and evaluate the software
architecture of sizeable systems.
After completion of this course the student should have:
Knowledge of:
- Quality attributes, including definitions, characterization, and tactics
- Patterns for software design
- Software architecture design techniques, e.g., Attribute-Driven Design
- (Architectural) design description, e.g., using Architecture Description Languages and the Unified Modeling Language
- Design and architecture evaluation, e.g., using the Architecture Tradeoff Analysis Method
- Describe fundamental concepts of and techniques in software design
- Characterize functional and quality requirements of software systems
Skills to:
- Elicit functional and quality requirements of software systems
- Design systems and software architectures so that they satisfy relevant quality constraints
- Describe existing systems and software architectures with relevant software description techniques
- Evaluate existing systems and software architectures with respect to relevant qualities
Competences to:
- Communicate a complex technical design in writing and orally
- Iterative and incrementally design a complex software system
- Analyze complex software systems with respect to their software architecture
See Absalon when the course is set up.
- Category
- Hours
- Exam
- 14
- Lectures
- 24
- Preparation
- 56
- Project work
- 80
- Theory exercises
- 32
- Total
- 206
As
an exchange, guest and credit student - click here!
Continuing Education - click here!
- Credit
- 7,5 ECTS
- Type of assessment
- Oral examination, 25 minutes25 minutes of oral exam including grading with 25 minutes for preparation.
- Exam registration requirements
- A group report based on the project and individual assignments must be handed in. The group report are submitted as 8 separate parts and there are 8 individual assignments. All parts of the group report must be handed in and 4 out of 8 individual assignments must be handed in.
- Marking scale
- 7-point grading scale
- Censorship form
- No external censorship
Criteria for exam assesment
See learning outcome.
Course information
- Language
- English
- Course code
- NDAK11001U
- Credit
- 7,5 ECTS
- Level
- Full Degree Master
- Duration
- 1 block
- Placement
- Block 1
- Schedule
- C (Mon 13-17 + Wednes 8-17)
- Course capacity
- No limit
- Continuing and further education
- Study board
- Study Board of Mathematics and Computer Science
Contracting department
- Department of Computer Science
Course responsibles
- Klaus Marius Hansen (7-6e6f647876706b43676c316e7831676e)