09 — Architecture Evaluation & Trade-offs¶
Driving question: How do we evaluate an architecture before the most expensive failures occur?
Learning objectives¶
- Use scenario-based architecture evaluation.
- Identify sensitivity points and trade-off points.
- Express architectural risk as evidence and uncertainty.
- Use ADRs to make decisions reviewable over time.
Evaluation is comparative¶
An architecture is not “good” in the abstract. It is adequate for a set of scenarios, constraints, and priorities.
Lightweight evaluation loop¶
- Identify business/technical drivers.
- Define quality scenarios.
- Describe architecture decisions relevant to each scenario.
- Identify risks, sensitivity points, and trade-offs.
- Propose experiments or prototypes for unresolved uncertainty.
- Record decisions in ADRs.
Architecture Decision Record¶
Title: Introduce asynchronous command processing
Status: Accepted
Context: ...
Decision: ...
Alternatives: ...
Consequences: ...
Evidence / follow-up experiment: ...
Design / research exercise¶
Run a 30-minute architecture review of a real or hypothetical system. Produce three risks and one trade-off point. For each risk, propose evidence that would reduce uncertainty.
Suggested reading¶
- ATAM literature and Software Architecture in Practice.