Building Blocks and the ADM Knowledge-Based Study
Foundation topic explanations on Building Blocks and the ADM.
Study notes
Building Blocks in the Architecture Development Method (ADM)
In the TOGAF Standard, 10th Edition, a Building Block is defined as a package of functionality defined to meet business needs across an organization. Building blocks are fundamental constructs used to assemble both architectures and operational systems.
Throughout the execution of the ADM, enterprise architects continuously identify, specify, and assemble building blocks. The ADM distinguishes between two primary types of building blocks:
- Architecture Building Blocks (ABBs): Conceptual and logical representations that capture architecture requirements, describe required capability and functionality, and define integration boundaries and interfaces independent of implementation.
- Solution Building Blocks (SBBs): Physical or vendor-specific components, software packages, or implementations that realize the functionality defined by one or more ABBs.
The progression through the ADM represents an evolution from business-driven requirements to logical building blocks (ABBs), and ultimately to candidate physical solutions (SBBs).
Basic Principles Governing Building Blocks
Building blocks operate as modular, reusable components across enterprise architecture descriptions. To be effective, building blocks should adhere to core structural and architectural principles:
- Interoperability and Standard Interfaces: A building block should expose well-defined, published interfaces to allow loose coupling and interoperability with other building blocks.
- Reusability: Building blocks are intended to be reused across multiple projects, platforms, or business contexts to reduce redundancy and cost.
- Decomposability: A building block may be assembled from smaller constituent building blocks (recursive composition), or grouped to form larger, coarse-grained blocks.
- Separation of Concerns: Functional boundaries must be clearly delineated to ensure each building block fulfills a cohesive responsibility within the overall architecture.
- Technology Independence (for ABBs): Logical specifications should focus on what capability is needed rather than how a particular vendor product implements it.
The Evolution of Building Blocks Across ADM Phases
The specification of building blocks is an iterative process that refines abstract requirements into tangible implementations across the ADM cycle:
- Phases A through D (Architecture Definition): The architecture team identifies capabilities and services required to satisfy the Architecture Vision and stakeholder concerns. During Business, Data, Application, and Technology Architecture development, these capabilities are defined as Architecture Building Blocks (ABBs). Each ABB specifies functionality, parameters, interfaces, and relationships to other blocks.
- Phase E (Opportunities & Solutions): The enterprise shifts focus from logical architecture to physical realization. Architects identify candidate Solution Building Blocks (SBBs) that can satisfy the defined ABBs. Existing assets, commercially available off-the-shelf (COTS) software, and custom development options are evaluated and mapped against ABBs.
- Phase F (Migration Planning): SBBs are sequenced into work packages, transition architectures, and implementation projects.
- Phase G (Implementation Governance): Implementation teams deploy and configure SBBs to realize the target architecture under architectural oversight.
Comparing ABBs and SBBs
To master the Foundation syllabus, enterprise architects must clearly distinguish between logical design and physical implementation:
- Architecture Building Blocks (ABBs):
- Capture business and architectural needs.
- Define functionality, interoperability, and platform-independent interfaces.
- Guide the selection and creation of SBBs.
- Created and refined primarily in Phases A, B, C, and D.
- Solution Building Blocks (SBBs):
- Represent concrete, procureable, or deployable components (e.g., commercial software packages, database engines, hardware modules).
- Fulfill the requirements and interfaces defined by ABBs.
- Specify vendor products, physical interfaces, licensing, and implementation parameters.
- Selected and structured primarily in Phase E and Phase F.

