Chapter 2

Context

Architecture is, by its nature, the antithesis of an isolated discipline. Architecture teams cannot expect to take static requirements as an input and disappear into isolation for weeks or months, only at the end producing a complete, final architecture.

Furthermore, requirements never state the complete context for an assignment. Requirements—even comprehensive ones—cannot be expected to address every aspect of a product. Architecture teams should be familiar with the product’s current design, its history and evolution, its customer and market, and the channels and methods via which it is sold. These considerations all affect the architecture.

On a similar note, successful products are never truly complete. Each iteration ...

Get Effective Software Architecture: Building Better Software Faster now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.