Building Blocks and the Architecture Development Method

Principles    Specification Process    Levels of Modelling

Basic Principles

This subsection focuses on the use of building blocks in the ADM. General considerations and characteristics of Building Blocks are described under Introduction to Building Blocks.

Building Blocks in Architecture Design

An architecture is a set of building blocks depicted in an architectural model, and a specification of how those building blocks are connected to meet the overall requirements of an information system.

The various building blocks in an architecture specify the services required in an organization specific system.

There are some general principles underlying the use of building blocks in the design of specific architectures:

Building Block Design

The process of identifying building blocks includes looking for collections of functions which require integration to draw them together or make them different:

In the early stages and during views of the highest level enterprise, the Building Blocks are often kept at a broad integration definition. It is during these exercises that the services definitions can often be best viewed. As implementation considerations are addressed, more detailed views of Building Blocks can often be used to address implementation decisions, focus on the critical strategic decisions or aid in assessing the value and future impact of commonality and reusability.

Building Block Specification Process in the ADM

The process of building block definition takes place gradually as the Architecture Development Method is followed, mainly in steps A, B and C. It is an iterative process because as definition proceeds, detailed information about the functionality required, the constraints imposed on the architecture and the availability of products may affect the choice and the content of building blocks.

The key parts of the ADM at which building blocks are designed and specified are summarized below.

The major work in these steps consists of identifying the architectural building blocks (ABBs) required to meet the business goals and objectives. The selected set of ABBs is then refined in an iterative process to arrive at a set of Solution Building Blocks (SBBs) which can either be bought off the shelf or custom developed.

The specification of building blocks using the ADM is an evolutionary and iterative process. The key Phases and Steps of the ADM at which building blocks are evolved and specified are summarized below, and illustrated in Figure 1.

Figure 1: Key Phases / Steps of ADM at which Building Blocks are Evolved / Specified

In Phases A and B the earliest building block definitions start as relatively abstract.

Both of these are lists of potentially reusable Architecture Building Blocks from the existing system.

Phase C Target Architecture Development takes these lists and model as inputs, and evolves them iteratively during a number of steps into a definition of the target architecture, specified in terms of architectural building blocks.

The minimum content of an Architectural Building Block specification is described under Introduction to Building Blocks.

Finally in Phase D "Opportunities and Solutions" the building blocks become more implementation specific as Solution Building Blocks, and their interfaces become the detailed architecture specification.

The minimum content of a Solution Building Block specification is described under Introduction to Building Blocks.

Levels of Modelling

Defining and developing the context for a set of building blocks takes place at two levels:

Defining and developing an actual set of building blocks also takes place at two levels:

Working through the four levels is an iterative process. Figure 2 shows how considerations at any level can result in change at any or all of the other levels.

Figure 2: Iteration between the Four Levels of Modeling

Mapping the Modelling Levels to the ADM

The business process level of definition takes place in Phase A of the ADM.

The technical functionality and constraints level work happens in Phase B, once the characteristics of the current system have been established. At that stage it is possible to identify the constraints imposed on new architecture work by the legacy of the old system.

The architectural model and solution model levels consist of work done in Phase C, the Target Architecture phase of the ADM, and Phase D, Opportunity Identification. The architectural model work is mostly done in Phase C-2, when taking different views of the architecture, and the solution model work in Phase D, where selection of products and projects takes place.


To show how building block definition happens in practice, the remainder of this appendix consists of a fictional worked example. In this fictional example much detail has been left out in order to emphasise the process.

Copyright The Open Group, 1998