Software Architecture, 6 credits
Start of studies
No occasions planned
Form of education
Language
Period
Admission to the course requires completed courses comprising 5 credits in object-oriented programming and 5 credits in software development, introduction to software engineering, or from a project course.
Software Architecture is an important concept in modern software development that serves several purposes: planning development resources, analyzing the problem domain from multiple perspectives, and abstracting large amounts of information to obtain a useful overview of the system. In addition, architectural decisions on how to construct a software system are crucial to plan and achieve the desired modifiability, performance, security, and many other qualities of the system, thereby influencing how successful the system can be.
Students in the course are expected to obtain detailed knowledge about software architectures and quality attributes and the effects architectural decisions have on the qualities of software systems.
The students will acquire understanding about how to: i) document the software architecture of systems; ii) design software architectures based on modern methods and ideas such as architectural styles, patterns, and tactics, by considering the system’s functional and non-functional requirements, neighboring systems, technological constraints, and the organization developing the system; iii) discuss the quality attributes of a concrete software based on empirical observations and metrics.
Admission to the course requires completed courses comprising 5 credits in object-oriented programming and 5 credits in software development, introduction to software engineering, or from a project course.
Level
G1F
Course code
PA1483