Software Architecture Course


This course is part of the Software Engineering degree at the School of Computer Science Engineering. It is also part of the specific training module titled Software engineering. Other related subjects are Software Process Engineering; Software Design; Software Quality, validation and Verifying; Requirements Engineering and Software Engineering Modelling.

The subject is compulsory and is taught in Spanish and English during the second semester of the third year of the Degree in Software Engineering.

It has 6 ECTS credits, which represent a total of 150 hours, 60 on-campus activities hours and 90 self-study hours.

From the organizational point of view, the course will have two hours of lectures a week (for a total of 21 hours), one hour seminar (for a total of 7 hours), two hours of laboratory practice (for a total 28 hours), and 2 group tutorials hours.


  • Software Architecture definition and basic concepts
    • Software Architecture Definitions
    • Role of Software Architect and Stakeholders
    • Description and validation of Software Architectures
    • Software Architecture Viewpoints and Perspectives
  • Software Architecture Taxonomies
  • Architectural tactics, styles and patterns
  • Allocation: Building, deployment and distribution
  • Modularity
  • Behaviour: Components and connectors
  • Integration
  • Business architectures

Course editions

The course started in 2012-13 but we were using University of Oviedo's virtual campus infrastructure to store the material.

Laboratory assignments

The laboratory work will be done in teams of 5-8 students using github.

Further info

Official information (English and Spanish)