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 - Five, Four, Three, Fail
Education cycle: Second-cycle
Major subject: Computer Science and Engineering, Information Technology
Department: 37 - COMPUTER SCIENCE AND ENGINEERING


Teaching language: English
Application code: 24117
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   19 Mar 2020 am L,  09 Jun 2020 am L,  24 Aug 2020 am 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:

Riccardo Scandariato

  Go to Course Homepage


Eligibility:


In order to be eligible for a second cycle course the applicant needs to fulfil the general and specific entry requirements of the programme that owns the course. (If the second cycle course is owned by a first cycle programme, second cycle entry requirements apply.)
Exemption from the eligibility requirement: Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling these requirements.

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.