About the Cover

The cover shows a bird’s wing, a motif chosen because it has much in common with software architecture. Rather than appeal to the overused analogy of house architectures, we find physiological systems to be a richer metaphor for software and system architectures. Among such systems, a bird’s wing is one of the most compelling examples.

How would you “document” a bird’s wing for someone who did not know what it was? A bird’s wing, like a software system, can be shown by emphasizing any of a number of structures—nerves, feathers, bones, blood vessels, muscles; each structure must be compatible with the others and must work toward fulfilling a common purpose. Feathers are elements that, at a glance, appear to be replicated countless times across the wing; on closer inspection, however, the feathers reveal a rich substructure of their own and small but systematic variations. All feathers are almost alike, but no two are identical.

The wing exhibits strong quality attributes: lightness in weight, aerodynamic sophistication, outstanding thermal protection. The wing’s reliability, cycling through millions of beats, is unparalleled. Unlike a house, which mostly just sits there, the essence of a wing is in its dynamic behavior. In coarse terms, the wing extends, flaps, and retracts; in finer terms, the bird commands movements almost too subtle to see, controlling pitch, roll, and yaw with exquisite finesse. For millennia, humans have tried to comprehend the wing by examining its parts and from different points of view. But the whole wing is much more than the sum of its elements and structures: It is in the whole that beauty and grace emerge alongside breathtaking performance. Falcon wings deliver so much speed that falcons have evolved thick tears that won’t evaporate during a 200-mph dive, and they have developed a special structure just inside their nostrils to keep the slipstream from ramming into their lungs. Insect eaters such as swallows routinely endure 14 times the pull of gravity, and they do it dozens of times a day. The common starling, merely an average flier, can slip through the air at 120 body lengths per second; by comparison, the fastest known aircraft, the SR-71 “Blackbird,” can manage only about 32 (Wright 2003).

Structure, substructure, replication with variation, dynamic behavior, critical quality attributes, and emergent properties of the entire system: All these aspects are important to capture when documenting a software architecture. We haven’t learned how to document beauty and grace yet, but for that we substitute the documentation of what the designer had in mind. For software, we can do this. For the wing of a bird, we can only admire the result.

image

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset