Postgraduate Course: Software Architecture, Process, and Management (Level 11) (INFR11038)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Year 4 Undergraduate)
||Availability||Available to all students
|Summary||Large-scale systems differ from small-scale system in the challenges they pose in capturing, and managing the process of delivering systems that conform to, quality attribute requirements (e.g. availability, performance, security). Software Architecture provides a framework for managing these aspects of systems.
This course introduces Software Architecture concepts and provides
experience of the use of Software Architecture in the development process and management of systems.
Software Architecture: Quality Attributes; Large-scale systems; Quality Attribute Scenarios;
Architectural Tactics; Design Checklists; Tradeoffs; Architectural Patterns; Product Lines; Exemplar
Quality Attributes (Availability; Performance; Security; Testability; Usability; ); Case Studies
(Apache, Linux, Real-time Architecture, Medical Systems, Banking Systems, ).
Software Architecture in the Development Process: Architecture in Processes (Traditional model, Risk-centric, Agile), Process Improvement, Modern Developments (e.g. DevOps).
Management Aspects: Tools through the process; planning; tracking; cost management; people and teams.
Relevant QAA Computing Curriculum Sections: Professionalism, Software Engineering, Systems Analysis and Design
Entry Requirements (not applicable to Visiting Students)
||Co-requisites|| It is RECOMMENDED that students also take
Software Design and Modelling (INFR10064)
||Other requirements|| This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser (lecturer).
The coursework is essay-based. However experience with programming is desirable.
Information for Visiting Students
|High Demand Course?
Course Delivery Information
|Not being delivered|
On completion of this course, the student will be able to:
- Integrate knowledge of Software Architecture to capture Quality Attribute requirements for a system, evaluate proposed architectures against these requirements and synthesise options for improvement.
- Analyse and justify complex tradeoff decisions between competing software architectures.
- Evaluate the strengths and weaknesses of software architecture in support of particular approaches to design, process and management for a particular system and make recommendations on the choice of process for that system.
- Working in a group to critically reflect on aspects of Software Architecture literature and practice to create a resource that support their learning in Software Architecture.
Bass, L., Clements, P., & Kazman, R. (2012). Software Architecture in Practice (Third.). Addison-Wesley Professional.
Taylor, R.N., Medvidovic, N., Dashofy, E.M. Software Architecture: Foundations, Theory and Practice, Wiley.
Bass, L., Weber, I., & Zhu, L. (2015). DevOps: A Software Architect's Perspective (1st ed.). Addison-Wesley Professional.
Bachmann, F., Bass, L., Clements, P., Garlan, D., Ivers, J., Little, M., Stafford, J. (2010). Documenting Software Architectures: Views and Beyond (Second.). Addison-Wesley Professional.
George, F. (2010). Just enough software architecture: a risk-driven approach. Marshall & Brainerd.
|Course organiser||Mr Stuart Anderson
Tel: (0131 6)50 5191
|Course secretary||Miss Clara Fraser
Tel: (0131 6)51 4164