Architecture Decision-Making
General material on making and recording architectural decisions.
8 to work through
-
beginner
When is an architectural decision worth an ADR, and what makes an ADR useful two years later?
2 min answer -
intermediate
Security wants mandatory hardware keys for every login; the business says it will cost conversions. How do you resolve it architecturally rather than by picking a side?
2 min answer -
intermediate
The team can ship in six weeks with an approach that will need rework, or five months with one that will not. How do you decide, and what do you do either way?
2 min answer -
intermediate Multiple choice
When should a service call another synchronously, and when should it publish an event instead? Give me the deciding test, not a preference.
2 min answer -
intermediate
You are reviewing a design for an internal tool with 200 users. It proposes Kubernetes, microservices, Kafka, a service mesh and CQRS. How do you handle the review?
2 min answer -
advanced
An architecture review reveals a proposed system requiring service discovery, several databases, distributed locks, a message broker, CQRS, event sourcing, a container orchestrator and a service mesh - for a workload expected to have a few thousand users. What would you simplify and how would you justify it?
2 min answer -
advanced
An organisation makes architectural decisions slowly and revisits them repeatedly. What structural changes improve decision quality and speed together?
2 min answer -
advanced
Netflix built its own CDN; Dropbox moved storage off S3. Both are usually wrong. What conditions made them right, and how do you test for those conditions?
2 min answer
9 terms in this topic
Architecture Decision Record
A short, immutable document capturing one architectural decision, its context, the alternatives, and its consequences.
practiceArchitecture Trade-off Analysis Method
A structured evaluation that scores an architecture against prioritised quality-attribute scenarios and identifies the points where those attributes …
conceptBuild vs Buy
The choice between developing a capability in-house and acquiring it, decided on differentiation and total cost rather than on feature lists.
practiceDecision Rights
An explicit statement of who decides what, so that consultation is bounded and decisions do not wait for a consensus nobody required.
conceptMonolith vs Microservices
A trade of deployment independence against distributed-systems complexity, decided by team topology far more often than by technology.
conceptReversible Decision
A choice that can be undone cheaply, and which therefore deserves far less deliberation than an irreversible one.
conceptSQL vs NoSQL
A choice driven by access patterns, consistency requirements and query flexibility — not by data volume, which is the reason usually given.
conceptStrong vs Eventual Consistency
A per-operation decision, not a per-system one: whether this specific read must reflect every completed write.
conceptSynchronous vs Asynchronous Communication
Whether the caller waits for the callee's answer — decided by whether the caller's outcome depends on it, not by latency or taste.
Neighbouring topics
Architecture Decision Records
One decision, its context, alternatives and consequences, kept immutable.
Reversibility
One-way and two-way doors, and buying optionality deliberately.
Build vs Buy
Differentiation, five-year TCO, and the exit cost of each option.
Monolith vs Microservices
A team-topology decision far more often than a technology one.
SQL vs NoSQL
Decided by access patterns and query flexibility, not by data volume.
Sync vs Async
Whether the caller's outcome depends on the callee's response.
Strong vs Eventual Consistency
A per-operation decision, resolved by what a stale read would cost.
Managed vs Self-Managed
Trading control and unit cost against operational attention.
Serverless vs Containers
Spiky and event-driven versus sustained throughput.
Single vs Multi-Region
Driven by RTO, RPO and residency rather than by ambition.
Centralised vs Distributed
Shared platform leverage against team autonomy.
Performance vs Cost
Buying latency, and knowing what the last millisecond is worth.
Reliability vs Complexity
Mechanisms that add availability and add failure modes.
Security vs Usability
Varying control by the value of the action rather than uniformly.
Delivery vs Maintainability
Fast in the cheap places, careful in the expensive ones.
Deciding Under Uncertainty
Bounding the downside and buying information cheaply.
Trade-off Analysis Methods
ATAM, scenarios, and naming the points where qualities conflict.
Technology Selection
Evaluating options against drivers rather than against enthusiasm.
Decision Practice
Thresholds, review, supersession and keeping the log alive.