Chapter 23. Diagramming Architecture
Newly minted software architects are often surprised at how varied the job is, outside the technical knowledge and experience that brought them into the role to begin with. In particular, effective communication is critical to an architect’s success. No matter how brilliant your technical ideas, if you can’t convince managers to fund those ideas and developers to build them, your brilliance will never manifest.
Diagramming is a critical communication skills for architects. While entire books exist about each topic, we’ll hit some particular highlights for each.
To visually describe an architecture, the architect often must show different views: for example, they might start with an overview of the entire topology, then drill down into the design details of specific parts of the architecture. However, showing a portion without indicating its place within the overall architecture will confuse viewers.
Representational consistency is the practice of always showing the relationships between parts of an architecture before changing views, and it’s equally important in diagrams and in presentations. For example, if you wanted to describe the details of how the plug-ins relate to one another in the Silicon Sandwiches solution, you’d start with an architecture diagram showing the system’s entire topology, then the relationship between it and the plug-in structure, before going into the plug-in structure itself. Figure 23-1 provides an example.