1. iSAQB® Certified Professional for Software Architecture
Foundation Level Syllabus
Version 3.0.1 EN (2023-03-21): Section 2.1.1
"What is Software Architecture?"
states that most definitions have commonalities
including: "structures consist of parts or components
" "parts interact with each other via interfaces or connections (relationships)
" and "Architecture addresses the concerns of stakeholders (requirements)." The term "parts" is synonymous with Building Blocks.
2. ISO/IEC/IEEE 42010:2011
Systems and software engineering — Architecture description: The standard defines architecture as "The fundamental concepts or properties of a system in its environment embodied in its elements [Components/Building Blocks]
their relationships
and in the principles of its design and evolution." The stakeholder concerns (derived from Requirements) are the primary drivers for defining these concepts and properties.
3. Bass
L.
Clements
P.
& Kazman
R. (2021). Software Architecture in Practice (4th ed.). Addison-Wesley Professional: In Chapter 1
the authors define software architecture as comprising "software elements [Components/Building Blocks]
the relations among them
and the properties of both." The properties are dictated by the system's requirements
particularly quality attribute requirements.