Architecture Building Blocks
An Architecture Building Block is defined as a package of functionality which is defined to meet the needs of a business.
How the functionality, custom developments and products inside a building block are packaged varies between architectures.
Each business or organisation should decide what arrangement of building blocks works best as a good choice of selecting building blocks can lead to:
- Interoperability when creating a new system or application
- Flexibility when creating a new system or application
- Improvements in legacy system integration
The characteristics of Building Blocks
Generic Building Blocks should have the following generic characteristics:
- A package of functionality which is defined to meet the needs of the business across an organisation
- A building block has interfaces associated with it to provide access to functionality
- The building block may inter-operate with other, interdependent building blocks
A good Building Block should have the following characteristics:
- The building block considers the implementation and usage and then evolves to exploit standards and technology
- The building block may be a sub-assembly of other building blocks
- The building block is both replaceable and reusable and well specified
- The building block may be implemented multiple times but in association with difference interdependent building blocks
The two types of Building Blocks – ABBs and SBBs
There are two types of Building Blocks:
- Architecture Building Blocks (ABBs)
- Solution Building Blocks (SBBs)
Architecture Building Blocks
Architecture Building Blocks (ABBs) relate to the Architecture Continuum and are defined or selected based on the result of the application of the Architecture Development Method (Generally during ADM Phases A, B,C and D).
The main characteristics of Architecture Building Blocks are:
- Technology-aware
- Provide direction and guidance for the development of Solution Building Blocks
- Capture technical and business requirements
- Define the functionality to be implemented
Solution Building Blocks
Solution Building Blocks (SBBs) relate to the Solutions Continuum and are either developed or procured.
The main characteristics of Solution Building Blocks are:
- A SBB will define what components and products will implement the required functionality
- They will define the actual implementation
- A SBB will ensure that it fulfills the requirements of the business
- SBBs are vendor or product aware
An easy way to differentiate between the two types of building blocks is to understand the following:
“Architecture Building Blocks are more closely aligned with the design and specification whilst the a Solution Building Block is essentially the implementation of the Architecture Building Block”