Search course

Use the search function to find more information about the study programmes and courses available at Chalmers. When there is a course homepage, a house symbol is shown that leads to this page.

Graduate courses

Departments' graduate courses for PhD-students.

​​​​
​​

Syllabus for

Academic year
DAT220 - Advanced software architecture  
Advanced software architecture
 
Syllabus adopted 2019-02-20 by Head of Programme (or corresponding)
Owner: MPSOF
7,5 Credits
Grading: TH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Education cycle: Second-cycle
Major subject: Computer Science and Engineering, Software Engineering
Department: 37 - COMPUTER SCIENCE AND ENGINEERING


Teaching language: English
Application code: 24112
Open for exchange students: Yes
Maximum participants: 50

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0109 Examination 5,0c Grading: TH   5,0c   18 Mar 2021 am L,  09 Jun 2021 am L,  23 Aug 2021 pm L
0209 Project 2,5c Grading: UG   2,5c    

In programs

MPIDE INTERACTION DESIGN AND TECHNOLOGIES, MSC PROGR, Year 2 (elective)
MPSOF SOFTWARE ENGINEERING AND TECHNOLOGY, MSC PROGR, Year 1 (compulsory elective)

Examiner:

Eric Knauss

  Go to Course Homepage


Eligibility

General entry requirements for Master's level (second cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

English 6 (or by other approved means with the equivalent proficiency level)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

To be eligible for this course the student should 1) have a bachelor degree in Software Engineering, Computer Science or equivalent, including a successfully completed course in programming (e.g. DAT042, DAT050, DAT055, DAT170, TDA545, TDA550 or equivalent), and 2) a successfully completed course in practical software development or software engineering project (e.g. DAT256 Software Engineering Project).

Aim

Proper software- and system architecture is instrumental for ensuring that software-reliant systems achieve their business and mission goals, and satisfy required quality attributes such as performance, security, safety. To this end, sound architecture principles and methods support developing, analyzing, and evolving systems. For a certain class of systems, e.g., safety-critical systems, it is of outmost importance that the quality attribute requirements are satisfied, to eliminate the risk for severe, or even catastrophic, consequences. Architectural modeling, verification, validation, and evaluation have shown to be effective means to significantly increase the overall quality of the system. The purpose of this course is to learn principles and methods that aid the designer/developer/architect to gain increased confidence in the architectural design, including quantitative modeling and qualitative architecture evaluation methods. The course will also address the specific challenges related to scale, dynamics, and heterogeneity as found in system of systems, and ultra-large scale systems.

Learning outcomes (after completion of the course the student should be able to)

 - Understand the role and applicability of methods for evaluating architectures
 - Describe inter-dependencies among quality-attributes and understand how they affect architecting
 - Develop an ability to assess an architecture quantitatively and qualitatively
 - Develop architectural models using ADLs, and understand the intentionality of models throughout the system life-cycle
 - Conduct incremental and multi-fidelity architecture-centric verification and validation
 - Understand the characteristics and challenges of architecting system-of-systems and ultra-large-scale systems
 - Distinguish between software architecture, system architecture, and run-time architectures.

Content

 - Quality attributes in the context of architecting
 - Qualitative and quantitative assessment of architectures
 - Architectural modeling through Architecture Description Languages (a.k.a. ADLs) such as AADL and OMG MARTE
 - System modeling and the role of SysML and its relation to software architecting
 - Architecting for evolution and variability
 - Partitioned and layered architectures
 - System-of-Systems and Ultra-Large Scale Systems
 - Case study on virtual integration from the avionics domain

Organisation

Lectures, seminars and projects. Each student shall write an essay, give a seminar, and participate in other seminars.

Literature

See separate literature list.

Examination including compulsory elements


A written exam at the end of course. The projects must also be approved. A written essay must be approved and presented at a seminar. Attention to other students¿ presentation.



Page manager Published: Thu 04 Feb 2021.