ABSTRACT

Architects are great artists! Roman architect Vitruvius stated that, in regards to the education of architects, “he must have a knowledge of drawing so that he can readily make sketches to show the appearance of the work which he proposes” (Vitruvius, 1914, Book I, page 6). In practice, architects designing software-intensive systems draw a multitude of pictures that they call the architecture of the system. It is tempting, but dangerous to think that pictures are the architecture of a software-intensive system. Pictures are not architectures; pictures are abstractions or representations of real structures that comprise a system that will be built, or the structures of an as-built system. Software-intensive systems have many structures that must be deliberately selected, each must be designed, and the overall ensemble of structures must be designed to meet the anticipated needs of a community of stakeholders. The ensemble of structures that comprise an architecture must be described to communicate the design of a system or product for evaluation, analysis, construction, repair, modification, and so forth. Box-and-line drawings are informal yet common ways for architects to illustrate the structures of a system and the relationships among them to communicate their design decisions to other stakeholders. As Figure 4.1 illustrates, the boxes, circles, and other polygons used by architects depict the elements of the system, whereas the various lines show the relationships among the elements.