Leer en español · Lire en français · Auf Deutsch lesen
Section 11.2 of 11.8 · Advanced · 26 min read
Lightweight reviews and risk-storming
Video lesson
5 min · narrated, with captionsListen only (audio)
Read the transcript
Not every decision needs a formal evaluation. In this lesson you'll learn short, practical reviews that find risks while they're still cheap to fix.
Before a long hike, a sensible group spreads the map on the table. Everyone, quietly and on their own, marks the places that worry them: the river crossing, the steep slope, the stretch with no phone signal. Then they compare. Places marked by many people get a plan. A place marked by only one person gets a question, because that person may know something the others don't. Lightweight architecture reviews work just like this.
Many organisations use a review board: senior architects who meet monthly and approve or reject designs. The intention is sound, but the results are often poor, for structural reasons. Timing. The board usually sees a design too late, after a prototype, a vendor and a promised date, so it approves with conditions nobody tracks. Context. Reviewers new to the system ask generic questions, and miss risks the team's own people could name in minutes. Incentives. When a review is an exam, teams present the design they want approved, not the doubts they have. And queueing. Weeks of waiting push teams to label decisions as minor, to avoid the board. Review works better when it's frequent, early, collaborative and focused on risks.
Risk-storming was created by Simon Brown, the author of the C4 model. First, put up diagrams of what you plan to build, usually a system context diagram and a container diagram. Second, each person silently writes risks, one per sticky note, for about ten minutes. Silence stops the first or most senior speaker from anchoring everyone else. Third, everyone places their notes on the part of the diagram each risk concerns. Clusters appear at once, and the diagram becomes a heat map. Fourth, review. Discuss the clusters, then look hard at risks raised by only one person, and at risks given very different priorities by different people. Each risk is scored as probability times impact, each rated from one to three, so scores run from one to nine. Six or nine counts as high.
Here's the food delivery platform's container diagram after convergence, with the scores the notes added up to. Nine on the external payment provider, and six on the ordering service that calls it synchronously. Six on the shared API gateway, which all three apps pass through. And six on the notification service, which reaches restaurants through an external push service. These hot spots are the ones to discuss first.
Six people, including operations, security and a support engineer, spent seventy five minutes on that diagram. After ten silent minutes, thirty one notes went up, which merged into eight distinct risks. The payment provider scored nine, raised by four people. Its action: a decision record on asynchronous authorisation, owned by the architect, due in two weeks. Unacknowledged restaurant notifications were raised only by the support engineer, who sees missed-order complaints every Friday. It was the most valuable finding, from the person least likely to speak first. Kafka skills were scored nine by one person and two by the others. The one engineer who had run Kafka before explained the problems, and the group agreed on four. Knowledge settled it, not averaging. The location store losing data on restart was agreed not to be a risk, because positions refresh every four seconds. That was recorded too, with its assumption. Every agreed risk left the room with an owner and an action, and the risk register was published the same day.
Risk-storming looks at a structure. A pre-mortem, described by Gary Klein in 2007, looks at a plan. Everyone imagines the effort has already failed, badly, and writes down why. It surfaces doubts about skills, schedules and suppliers that diagram reviews miss. Architecture katas, created by Ted Neward, are practice briefs for small teams. They build the skill of explaining a design under questioning, and of asking good questions about someone else's. The Tiny Architectural Review Approach, or TARA, reviews a system that already runs. It combines expert judgement with automated analysis of code and runtime data. And for a written design review, state the decision sought and a comment deadline, name the required reviewers, and ask for each comment to be labelled as a question, a suggestion or a blocking concern.
The full section has a ninety minute review format, a guide to choosing a technique, and a checklist of questions. Next, in Section eleven point three, we turn reviews into continuous checks with fitness functions. See you there.
What you need to know
- Review boards that meet at fixed points tend to see designs too late, lack context, invite defensive presentations and add queueing delay; independent review works better when it is frequent, early, collaborative and focused on risks.
- Risk-storming (Simon Brown) has four steps: draw diagrams, identify risks individually and silently, converge them on the diagrams, then review and summarise, scoring probability times impact from 1 to 9.
- A pre-mortem (Gary Klein, Harvard Business Review, 2007) asks people to imagine the effort has already failed and write down why, which surfaces doubts about plans, skills and schedules that diagram reviews miss.
- Architecture katas (Ted Neward) build design and review skills, while TARA (Eoin Woods) reviews existing systems by combining expert judgement with automated analysis of code and runtime data.
- Written design and RFC reviews work best with a stated decision, a comment deadline, required reviewers and comments labelled as questions, suggestions or blocking concerns.
- A good review produces a risk register with owners, dates, accepted risks and non-risks with their assumptions, published within days and tracked in the normal backlog.
Why heavyweight review boards often fail
Many organisations govern architecture through an architecture review board: a panel of senior architects that meets monthly, receives a slide deck or a long document, and approves or rejects designs. The intention is sound: independent, experienced eyes on significant decisions. The results are often poor, for reasons that are structural rather than personal.
Timing is the first problem. A board that meets at fixed points sees a design either too early (nothing is decided yet) or, far more often, too late, when the team has already built a prototype, signed up to a vendor and promised a date. Rejection is then so costly that the board approves with conditions nobody tracks. Context is the second: reviewers who spend an hour on a system they have never seen ask generic questions and miss the specific risks that the team's own developers, operations staff and security engineers could name in minutes. Incentives are the third: when a review is an exam, teams present the design they want approved, not the doubts they have, and the board learns little. Queueing is the fourth: a monthly meeting with a full agenda adds weeks of waiting to every significant decision, which pushes teams to avoid the board by labelling decisions as minor.
None of this means independent review is worthless. Regulated industries (banking, healthcare, aviation) often need a documented sign-off, and some decisions really do need the authority of a senior group. The lesson is that review should be frequent, early, collaborative and focused on risks, with formal approval reserved for the few decisions that genuinely require it. Section 11.4 returns to how governance can work without slow gates.
What a good lightweight review gives you
A lightweight review is a short, structured session, typically an hour or two, in which the people who know a design best and a few people who see it fresh look for risks together. It aims at four things: discovering risks while they are cheap to address, building a shared understanding of the design across the team, giving an independent challenge to the architect's assumptions, and leaving a record of the risks accepted, mitigated or rejected. Its output is a prioritised risk list with owners, not a verdict.
Several techniques fit this description. They differ in what they examine (a diagram, a plan, a document or a running system) and in what they are best at, and they combine well.
Lightweight review techniques compared
| Technique | Examines | Best for | Typical time |
|---|---|---|---|
| Risk-storming (Simon Brown) | Architecture diagrams | Finding technical risks quickly with the whole team | 45 to 90 minutes |
| Pre-mortem (Gary Klein) | A plan or decision | Surfacing doubts about the whole endeavour, including people and schedule | 30 to 60 minutes |
| Architecture kata (Ted Neward) | A short, invented or real brief | Building design skill and exploring alternatives | 1 to 3 hours |
| TARA (Eoin Woods) | An existing system: people, documents, code and runtime data | Assessing a running system for drift and risk | A few days of expert effort |
| Design or RFC review | A written proposal | Asynchronous, inclusive comment before building | A comment window of days, plus a short meeting |
| Checklist review | Any design | Making sure the usual blind spots were considered | Part of any of the above |
Risk-storming
Risk-storming is a visual, collaborative technique created by Simon Brown, the author of the C4 model (Section 4.3). It rests on a simple observation: different people see different risks, and the best way to collect them is to put everyone in front of the same diagrams and ask them to look independently before discussing. It has four steps.
1. Draw the architecture. Put up diagrams of what you plan to build or change, ideally at more than one level: a system context diagram and a container diagram are usually enough, with a component diagram for the riskiest container. 2. Identify risks individually. Each participant silently writes one risk per sticky note, with a short description and a priority, for about ten minutes. Silence matters: it prevents the first or most senior speaker from anchoring everyone else, which is the main way group discussions lose information. 3. Converge the risks on the diagrams. Everyone places their notes on the part of the diagram the risk concerns. Clusters appear immediately, and the diagram becomes a heat map. 4. Review and summarise. The group discusses the clusters, then pays special attention to two kinds of note: risks raised by only one person (often someone with knowledge others lack, such as the support engineer) and risks given very different priorities by different people (a sign of a misunderstanding). Agreed risks go into a risk register with owners; items agreed not to be risks are recorded too.
Priority is usually scored as probability times impact, each rated low (1), medium (2) or high (3), giving scores from 1 to 9. Brown's guidance bands them as high (6 or 9), medium (3 or 4) and low (1 or 2), conventionally shown with pink or red, yellow or amber, and green notes. A prompt list helps people think beyond their own speciality: scalability, availability, performance, security, data consistency, third-party dependencies, cost, technology maturity, team skills, and delivery and operation.
A risk-storming heat map on a container diagram
Worked example
Worked example: risk-storming the food-delivery container diagram
Six people (the architect, two developers, an operations engineer, a security engineer and a support engineer who handles restaurant complaints) spent 75 minutes on the container diagram above, with the system context diagram alongside. Each wrote risks silently for ten minutes; 31 notes went up, which merged into 8 distinct risks.
| Payment provider on the synchronous order path (9) | Raised by four people. Provider slowdowns at peak stall order placement. Action: decision record on asynchronous authorisation with a pending order state; owner: architect; due in two weeks |
|---|---|
| Restaurant notifications not acknowledged (6) | Raised only by the support engineer, who sees missed-order complaints every Friday. Nobody else knew. Action: acknowledged delivery with re-send and an alert when a tablet stops acknowledging; owner: notification team |
| Shared gateway configuration (6) | One faulty route change can take all three apps down at once. Action: per-app gateway configuration and canary rollout of gateway changes |
| Order database failover never tested (6) | Replica exists but promotion has never been rehearsed. Action: quarterly failover drill, measured against the recovery scenario |
| Kafka skills (scored 9 by one person, 2 by others) | The one engineer who had run Kafka before explained partition rebalancing during deploys, consumer lag and retention mistakes. After discussion the group agreed 4: real but manageable. Action: managed Kafka service and a runbook |
| Courier location traffic through the gateway (4) | About 2,250 updates per second share the gateway with order traffic. Action: measure in the next load test; separate ingestion endpoint if order latency suffers |
| Dispatch consumer lag at peak (4) | Action: alert on consumer lag; add a fitness function to the load test |
| Location store loses data on restart (2) | Agreed not to be a risk: positions refresh every 4 seconds. Recorded as such, with the assumption |
The highest-value finding (restaurant notifications) came from the person least likely to speak first in an open discussion, which is the point of silent, individual identification.
The disagreement about Kafka was resolved by knowledge, not by averaging the scores.
Every agreed risk left the room with an owner and an action; the register was published the same day.
Pre-mortems
Risk-storming looks at a structure. A pre-mortem looks at a plan. Gary Klein described it in the Harvard Business Review in September 2007. A post-mortem explains why a patient died, which helps everyone except the patient; a pre-mortem is held before the project starts, when the answers can still change its course.
The procedure is short. The leader briefs the group on the plan or decision, then announces that it is now some months in the future and the effort has failed, badly. Each person spends a few minutes writing down every reason they can think of for the failure, independently. The leader then goes round the room collecting one reason at a time until the lists are exhausted, and the owner of the plan reviews them for ways to strengthen it. Klein cites research by Deborah Mitchell, Jay Russo and Nancy Pennington (1989) finding that imagining an event has already happened (prospective hindsight) increases people's ability to identify reasons for future outcomes by about 30%. The framing also changes the social dynamics: the question is no longer whether the plan might fail, which sounds disloyal, but why it did, which invites creativity.
For architecture, pre-mortems are particularly useful before large commitments: adopting an event-driven style, migrating to a new cloud, replacing a legacy system (Section 11.6) or introducing a platform. Typical outputs that a diagram-based review would miss include the team lacking skills in the new technology, the migration stalling halfway with two systems to run, a key supplier changing its pricing, and the business losing patience before benefits appear.
Architecture katas
Architectural katas were created by Ted Neward, inspired by Dave Thomas's code katas, as practice exercises for architects. A kata is a short brief for a fictional system (a few paragraphs of requirements, users and constraints, deliberately incomplete). Small teams of three to five people work on it for a fixed time, questioning a moderator who plays the customer to uncover missing requirements, then sketch an architecture and present it to the other teams, who challenge it hard but fairly before the room votes. Neal Ford maintains a public collection of katas, and O'Reilly has run architectural kata competitions.
Katas are not reviews of a real design, but they contribute to review culture in two ways. They build the skill of explaining and defending a design under questioning, and of asking good questions about someone else's, which is exactly what lightweight reviews need. And an internal kata on a real upcoming problem, with two or three teams designing independently, is a cheap way to explore the option space before committing: when three teams produce three different designs, the differences show where the real trade-offs lie.
TARA and checklist-based reviews
Reviews of systems that already exist face a different problem: the architecture as built may differ from the architecture as described, and the evidence is spread across people, documents, code and production data. Eoin Woods, co-author of Software Systems Architecture, described the Tiny Architectural Review Approach (TARA) in 2011 as a deliberately lightweight, industrial alternative to scenario-heavy methods. A small number of reviewers elicit the system's key requirements and context, establish its actual structure, assess its implementation using automated analysis (module dependencies, size, code metrics, test coverage) alongside runtime information such as logs, use expert judgement to link what they find to the requirements, and present findings and recommendations in a predefined form. Its strength is speed and evidence; its weakness, which Woods acknowledged, is dependence on the reviewers' expertise.
Checklists complement every technique. A checklist does not find risks by itself, but it stops a review from forgetting a whole category (backup restore, secrets, cost at scale) because nobody in the room happened to think of it. Keep checklists short, specific to your organisation's history of incidents, and phrased as questions that demand evidence rather than yes or no answers.
Design documents and RFC reviews
Section 4.8 described design documents and RFCs as a way to propose a change in writing before building it. Reviewing them well is a skill of its own. A written review has real advantages over a meeting: reviewers comment when they have time to think, remote and quieter colleagues contribute on equal terms, and the comments become a record. Its typical failures are documents nobody reads, comment threads that never close and reviews that become an unofficial gate.
Good practice is to state the decision sought and the deadline for comments at the top, name the reviewers whose input is required (security, operations, the owners of affected services) and invite anyone else; ask reviewers to label each comment as a question, a suggestion or a blocking concern, so the author knows which ones must be resolved; review against the quality scenarios and the checklist below, not against personal taste; close with a short meeting only for unresolved concerns; and record the significant decisions as ADRs. In organisations using the advice process (Section 11.4), the RFC is the vehicle for seeking advice, and the decision stays with its author.
Running a 90-minute architecture review, step by step
- Before: prepare (a few days ahead)The architect circulates a one-page summary, the context and container diagrams, the top three to five quality scenarios with numbers, and the open questions. Invite five to eight people: the team, operations, security, someone from each neighbouring team and one experienced outsider. Choose a facilitator who is not the architect.
- 0 to 10 minutes: goals and rulesThe facilitator states the purpose (find risks, not approve or reject), the time box and the output. A business representative or product owner restates the business drivers in two minutes.
- 10 to 25 minutes: walk the architecture through scenariosThe architect walks two or three of the most important scenarios through the diagrams, for example one order at peak and one payment-provider outage. Questions of clarification only.
- 25 to 35 minutes: silent risk identificationEveryone writes risks on notes, one per note, with a probability and impact. No discussion.
- 35 to 50 minutes: converge and clusterNotes go on the diagrams. The facilitator merges duplicates aloud and highlights clusters, lone notes and priority disagreements.
- 50 to 75 minutes: discuss the top risksTake the highest-scoring clusters first. For each, agree what the risk really is, its score and whether it is a risk, a non-risk with an assumption, or a question needing a spike.
- 75 to 85 minutes: actions and ownersEach agreed high or medium risk gets a mitigation, an owner and a date. Decisions to be recorded as ADRs are listed.
- 85 to 90 minutes: closeRead back the risks, the accepted risks and the non-risks with their assumptions. Agree when the design will be looked at again.
- After: publish within two daysPublish the risk register, photographs of the annotated diagrams and the action list where the team keeps its architecture documentation, and track the actions in the normal backlog.
Decision guide
Decision guide: which kind of review?
Start at the top; techniques can be combined.
- Is an expensive, hard-to-reverse commitment imminent, such as a multi-year contract, a platform purchase or a funding gate, with many stakeholders?YesUse an ATAM or a reduced ATAM with independent evaluators (Section 11.1), and add a pre-mortem on the plan.NoContinue.
- Is there a written proposal for a significant change?YesRun a written design or RFC review with a comment deadline, then a short meeting for blocking concerns.NoContinue.
- Do diagrams of the proposed or existing architecture exist?YesRun risk-storming on them, using the 90-minute format.NoDraw a context and a container diagram first; drawing them often exposes risks on its own.
- Is the main worry the success of the whole effort (skills, schedule, migration, adoption) rather than the structure?YesAdd a pre-mortem.NoContinue.
- Is the system already running, with suspected drift or growing debt?YesUse a TARA-style review combining interviews with automated code and runtime analysis, and turn findings into fitness functions.NoRely on fitness functions between reviews, and review again at the next significant decision.
Checklist: questions for any lightweight architecture review
Ask for evidence, not reassurance. Adapt the list to your organisation's own incident history.
- Which three to five quality scenarios matter most, and what are their numbers?Without measurable drivers the review cannot rank risks (Section 2.3).
- What is on the synchronous path of the most important journey?Count hops, list timeouts and retries, and identify every third party on the path.
- What happens when each dependency is slow or down?Slow is usually worse than down; ask about both, and about how users are told.
- Who owns each important piece of data, and has a restore been tested?Single writer, consistency expectations, retention, and evidence of a recent successful restore (Chapter 7).
- Where are the trust boundaries, identities and secrets?Look for a current threat model and for secrets in code or configuration (Chapter 8).
- What breaks first at twice the expected peak?Ask for the capacity model or load-test results, not intuition.
- How is the system observed, deployed and rolled back?Dashboards, alerts tied to SLOs, deployment strategy and the time a rollback takes.
- What is likely to change in the next year, and what would that change touch?Check that likely changes stay inside one module or service.
- What will it cost to run at expected volume?A cost per order, per user or per transaction, with the main drivers.
- Are the significant decisions recorded with alternatives and consequences?ADRs or a design document, including the trade-offs accepted.
- Does the team structure match the design?Each part has an owning team with the skills to run it (Section 3.7 and Section 11.5).
Check your understanding
Why does risk-storming ask people to identify risks silently before any discussion?
To stop the first or most senior speaker anchoring the group, so that each person's independent knowledge reaches the diagram.
In risk-storming, which two kinds of note deserve special attention during the review step?
Risks raised by only one person, who may know something others do not, and risks given very different priorities, which signal a misunderstanding.
What does a pre-mortem examine that a risk-storming session on a container diagram usually does not?
The plan and its context as a whole: skills, schedule, migration, suppliers and organisational patience, rather than the technical structure.
Name two structural reasons why monthly architecture review boards often fail.
Any two of: they see designs too late, reviewers lack context, teams present defensively, and queueing adds weeks of delay that encourages avoidance.
Sources and further reading
Have a question about this section? ArchitectBot, the course’s AI study assistant, answers from the course first.
Ask: “Our architecture review board meets once a month and teams try to avoid it. How could we replace it with lightweight reviews without losing independent challenge?”