NDAK11001U Software Design and Software Architecture

Volume 2014/2015
Education
MSc Programme in Computer Science
Content

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.

Learning Outcome

 

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.

Programming skills at the level of a CS bachelor
Lectures, workshops, and projects
  • Category
  • Hours
  • Exam
  • 14
  • Lectures
  • 24
  • Preparation
  • 56
  • Project work
  • 80
  • Theory exercises
  • 32
  • Total
  • 206
Credit
7,5 ECTS
Type of assessment
Oral examination, 25 minutes
25 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.