8.2. Architecture Iteration

Architecture iteration relies upon intelligence gathering during a project. Whether, how, and when to change an architecture are some of the most important decisions for a software architect. An architecture is a plan, and it is said that no plan survives first contact with the enemy. The enemies in this case are change and ignorance. As software architects, we want our decisions to be flexible enough to survive changes. But according to Alistair Cockburn, we don't know what we don't know [Cockburn 98]. Ignorance is the more dangerous enemy. What we don't know can change our architectural assumptions to the breaking point. This intelligence operation is intended to defeat these enemies through the preplanned strategy ...

Get Software Architect Bootcamp 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.