Evolutionary architecture
Three primary aspects of building and maintaining architectures that support constant change include:
- Fitness functions
- Incremental change
- Appropriate coupling
An architectural fitness function provides an objective integrity assessment of some architectural characteristic(s).
An evolutionary architecture supports guided, incremental change across multiple dimensions. Incremental change describes two aspects of software architecture: how teams build software incrementally and how they deploy it. Guided change means, once architects have chosen important characteristics, they want to guide changes to the architecture to protect those characteristics.
Evolutionary architecture focuses on appropriate coupling—how to identify which dimensions of the architecture should be coupled to provide maximum benefit with minimal overhead and cost.
Read more about evolutionary architecture in Chapter 1. Software Architecture, from "Building Evolutionary Architectures," by Neal Ford, Rebecca Parsons, and Patrick Kua. Published by O'Reilly Media, Inc. Copyright © 2017 Neal Ford, Rebecca Parsons, and Patrick Kua.
1. Software Architecture - Building Evolutionary Architectures [Book] (oreilly.com)
Comments