Skip to content
all episodes
Code of Architecture · episode 34

Building Evolutionary Architectures — Episode 1

1:04:47

Episode participants

  • Sergey Baranov

    panelist

Conversation

What we discussed on the recording

The first Building Evolutionary Architectures session examines the mechanics of the approach. Architecture cannot be designed once and left untouched: technology, economics, and business models change which solutions are viable. The authors define evolutionary architecture as guided, incremental change across multiple dimensions.

Fitness functions provide control by checking how closely the current design matches goals and architectural characteristics. The term comes from evolutionary computing, but in architecture it can mean unit and integration tests, monitoring alerts, static analyzers, security checks, or manual procedures.

Dimensions extend beyond characteristics to technology choices, data, security, and operational practices. Checks may run continuously, on a trigger, or manually. The point is not one framework but objective feedback: fitness functions expose trade-offs, while the team still owns the architectural decision.

Incremental change is explored through service replacement: a new version receives some traffic, consumers move to a new contract, and the old path is removed after migration. Compatibility and the long tail of clients create the real difficulty. A delivery pipeline supplies stages for atomic and broader checks, feature flags, and safe rollback.

Book series
Building Evolutionary Architectures
Neal Ford, Rebecca Parsons, Patrick Kua
Book playlist