13.3 Managing Complexity

A number of tools for managing complexity have been presented in this text. Creating abstractions and defining entities and relationships were introduced in Chapter 2. Chapter 3 introduced decomposition, hierarchy, and certain logical relationships such as class/instance, type/specialization, and recursion. Combined, these tools allow the architect to represent different aspects of the architecture, while removing the irrelevant details to produce a minimum-complexity representation.

In the creation of architecture, we have to ask how these tools can be used to manage the evolution of complexity in the system. The architect is responsible for choosing a decomposition of the system, for determining which abstractions are ...

Get System Architecture: Strategy and Product Development for Complex Systems, First Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.