Skip to content

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

  1. Identify business/technical drivers.
  2. Define quality scenarios.
  3. Describe architecture decisions relevant to each scenario.
  4. Identify risks, sensitivity points, and trade-offs.
  5. Propose experiments or prototypes for unresolved uncertainty.
  6. 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.