Software Architecture: Suggested Terminology
System Architecture
- Structure: Several computers, networks, data bases,
etc. connected together
- Analogy: Plan of city
Software Architecture
(conceptual/abstract)
- Conceptual structure: Large piece of software with
many parts, interconnections
- Analogy: Blue print of house
Software Design
(concrete)
- Actual structure: Large piece of software with many
parts
- Analogy: Actual structure of house
Architectural Style
- Form of structure, e.g.,
- "Pipes" between components, or
- "Layered" system, or
- "Bulletin board" system
- Analogy: Style of a building
Reference Architecture
- General architecture for an application domain
- Example: Common structure for compilers or for operating
systems
Product Line Architecture (PLA)
- Architecture for a line of similar software products
- Example: Software structure for a family of computer
games