# Evolutionary Architecture

> An approach in which the architecture changes in small increments, each guarded by fitness functions.

Record: `architecture:evolutionary-architecture`
Kind: approach
Layer: [Evolution Principles](https://banes-lab.com/records/layer/evolution-principles.md)
Severity: contextual
Scope: system, codebase
Canonical: https://banes-lab.com/ontology#architecture-evolutionary-architecture

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Architecture Decision Records (ADR)](https://banes-lab.com/records/architecture/architecture-decision-records.md) and before [Minimum Viable Architecture](https://banes-lab.com/records/architecture/minimum-viable-architecture.md).

## Repair

- Refactored by: Add Fitness Functions, Refactor Incrementally
- Detected by: accumulating unmeasured drift
- Violated by: architecture decay without feedback loops
- Measured by: fitness trend, architecture debt
- Enforced by: CI/CD architecture checks

## Requires

- [Fitness Functions](https://banes-lab.com/records/architecture/fitness-functions.md)
- [Incremental Change](https://banes-lab.com/records/lexicon/incremental-change.md)

## Reinforces

- [Continuous Improvement](https://banes-lab.com/records/lexicon/continuous-improvement.md)

## Enables

- [Controlled Architecture Evolution](https://banes-lab.com/records/lexicon/controlled-architecture-evolution.md)

## Conflicts with

- [Big-Upfront Frozen Architecture](https://banes-lab.com/records/architecture/big-upfront-frozen-architecture.md)
- [Lava Flow](https://banes-lab.com/records/architecture/lava-flow.md)
- [Premature Abstraction](https://banes-lab.com/records/architecture/premature-abstraction.md)
- [Zombie Code](https://banes-lab.com/records/architecture/zombie-code.md)

## In tension with

- [Governance Discipline](https://banes-lab.com/records/lexicon/governance-discipline.md)

## Tensions

- [Evolutionary Architecture / Governance Discipline](https://banes-lab.com/records/tension/evolutionary-architecture-governance-discipline.md)

## Contracts

- [Evolution Principles](https://banes-lab.com/records/algorithms/evolution-principles.md)

## Severity

- [contextual](https://banes-lab.com/records/vocabulary/severity-contextual.md)

## Category

- [Architecture Review / Evolution / Governance Artifacts](https://banes-lab.com/records/architecture-category/architecture-review-evolution-governance-artifacts.md)

## Reinforced by

- [Forward Compatibility](https://banes-lab.com/records/architecture/forward-compatibility.md)

## Linked from

- [The structural domain](https://banes-lab.com/software-architecture/principles/the-structural-domain.md)
- [Anti-patterns](https://banes-lab.com/ontology/principles/architecture-category-anti-patterns.md)
- [Contracts / Interfaces / Compatibility](https://banes-lab.com/ontology/principles/architecture-category-contracts-interfaces-compatibility.md)
- [Architecture Review / Evolution / Governance Artifacts](https://banes-lab.com/ontology/principles/architecture-category-architecture-review-evolution-governance-artifacts.md)
- [Architecture Review Evolution Governance](https://banes-lab.com/ontology/lexicon/lexicon-category-architecture-review-evolution-governance.md)
- [Architectural Clusters](https://banes-lab.com/ontology/algorithms/algorithms-domain-architectural-clusters.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)
- [The resolutions](https://banes-lab.com/ontology/schema/the-resolutions.md)
