Fundamentals of software architecture
Grundläggande mjukvaruarkitektur
About the Syllabus
Grading scale
Course modules
Position
The course is compulsory within the Software Engineering and Management, bachelors programme (N1SOF).
The course can be part of the following programmes:
- Computer science, bachelors programme (N1COS).
Main field of study with advanced study
Entry requirements
To be eligible for this course, students must have successfully completed the courses DIT044 Object-Oriented Programming, 7.5 credits and DIT047 Requirements Engineering, 7.5 credits, or equivalent.
Applicants must prove knowledge of English: English 6/English B or the equivalent level of an internationally recognized test, for example TOEFL, IELTS.
Content
The aim of this course is to equip students with basic knowledge and skills about software architecture design and its role in the development and maintenance of software systems. This course covers various definitions of software architecture. We discuss the role and relevance of software architecture at different stages of development projects; we discuss the relation of architecture to requirements and system implementation; we discuss quality requirements that relate to software architecture; we discuss various architectural styles and tactics; we discuss general software design principles; we discuss how to document and how to evaluate software architectures.
Objectives
On successful completion of the course the student will be able to:
Knowledge and understanding
- explain architecturally significant requirements, especially related to quality attributes, such as performance, security, and availability
- describe different architectural styles and how they relate to specific quality properties of the architecture, using appropriate views and descriptions
Competence and skills
- solicit requirements from stakeholders and describe these as quality requirements
- express quality requirements using quality attribute scenarios
- document architectures using established methods
- analyze architectural concerns when implementing a software system
- create an architectural design of a system based on a case description in natural language
Judgement and approach
- reason about how different architectural styles, tactics or design alternatives meet the quality goals of a system
- judge to what extent an implemented architecture excerpt in code is aligned with a set of architecture descriptions or diagrams
Sustainability labelling
Form of teaching
The teaching consists of in-class sessions, exercises and examination parts, as well as supervision.
Language of instruction: English
Examination formats
The course is examined by an individual written exam carried out in an examination hall and written assignments carried out in groups of students, with additional individual assignments. The assignments part is examined on the basis of solutions to compulsory problems handed in during the course and on the basis of individual contribution. Students are required to complete written self- and peer-assessment forms during the course which will be part of the assessment of the student's individual contribution to the project.
If a student who has been failed twice for the same examination element wishes to change examiner before the next examination session, such a request is to be granted unless there are specific reasons to the contrary (Chapter 6 Section 22 HF).
If a student has received a certificate of disability study support from the University of Gothenburg with a recommendation of adapted examination and/or adapted forms of assessment, an examiner may decide, if this is consistent with the course’s intended learning outcomes and provided that no unreasonable resources would be needed, to grant the student adapted examination and/or adapted forms of assessment.
If a course has been discontinued or undergone major changes, the student must be offered at least two examination sessions in addition to ordinary examination sessions. These sessions are to be spread over a period of at least one year but no more than two years after the course has been discontinued/changed. The same applies to placement and internship (VFU) except that this is restricted to only one further examination session.
If a student has been notified that they fulfil the requirements for being a student at Riksidrottsuniversitetet (RIU student), to combine elite sports activities with studies, the examiner is entitled to decide on adaptation of examinations if this is done in accordance with the Local rules regarding RIU students at the University of Gothenburg.
Grades
Sub-courses
- Written hall examination, 4.5 credits
Grading scale: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U) - Assignments, 3 credits
Grading scale: Pass (G) and Fail (U)
The grading scale for the whole course comprises: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U).
To pass the course, students must receive a passing grade in both modules. The grade for the entire course will be determined by the written exam.
Course evaluation
The course is evaluated through meetings both during and after the course between teachers and student representatives. Further, an anonymous questionnaire is used to ensure written information. The outcome of the evaluations serves to improve the course by indication which parts could be added, improved, changed or removed.
Other regulations
The course replaces the course DIT345, 7.5 credits. The course cannot be included in a degree which contains DIT345. Neither can the course be included in a degree which is based on another degree in which the course DIT345 is included.