The high-level design and description of a software system. Architectural design distills away details of implementations, algorithms, and data representation to concentrate on the interaction of "black box" components.
- Documenting Software Architectures: Views and Beyond, 2nd Edition by Paul Clements, Felix Bachmann, Len Bass, David Darlan, James Ivers, Reed Little, Paulo Merson, Robert Nord, and Judith Stafford (2010)
- Software Architecture in Practice, 3rd Edition by Len Bass, Paul Clements, and Rick Kazman (2012)
- Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives by Nick Rozanski and Eoin Woods (2011)