Sometimes details from deeper levels of the building block hierarchy are required for understanding and maintaining the overall system. In such cases it might be useful to refine (specify or document) building blocks from level-1 down to the appropriate details (although that will surely create a lot of work, see below).

In such cases, obey the important consisteny rule shown in tip 5-12 (consistent refinement).

See the following diagram for an (quite abstract…) example: (taken from tip 5-2 (building block hierarchy)).

Detailed building block hierarchy creates huge effort

Several levels of the building block view will require significant effort in creation and maintenance. You should invest this effort only if there is a real demand for this information.

In my (Gernot) experience, lots of effort could be saved in real-world systems if building block details would be replaced by appropriate cross-cutting concepts. See tip 5-10 (concepts to explain building block details).