The checkout diagram shows four boxes: Checkout API, Inventory, Payments, and Orders. Arrows connect Checkout to the other three. The engineer presenting it wants approval to keep Inventory on the request path. A reviewer asks a simple question: "If Inventory is down, can the customer still place an order?" The drawing cannot answer.
This is a fictional design review. The point is not to find the one correct checkout architecture. It is to make the decision visible enough that someone responsible for the checkout experience can challenge it.
Draw for the question on the table
Suppose this review is for the engineer who owns the customer-facing checkout response. They need to know when the system may say "order confirmed," and what the customer sees when stock cannot be reserved. A deployment map or a complete inventory of services would add detail without settling either question.
The original arrows are ambiguous. Does Checkout ask Inventory for an availability estimate or reserve units? Does it wait for a reply? Is Payments called before or after that reply? If Inventory fails, does Checkout reject the request, accept an order to resolve later, or guess? The boxes name dependencies, but their arrows leave the customer promise unstated.
SEI's Views and Beyond guidance treats an architecture view as selected elements and relationships for an anticipated use. For this review, the useful view is the checkout request and its decision points. It can omit inventory replenishment, payment settlement, and deployment regions while saying explicitly that they are outside this decision.
Put the promise on the arrows
The presenter revises the view around one proposed rule: Checkout confirms an order only after Inventory reserves the requested units. The drawing now shows the sequence in plain language:
- Checkout asks Inventory to reserve the units and waits for a result.
- On a successful reservation, Checkout asks Payments to authorize the charge, then records the confirmed order.
- If Inventory is unavailable or declines the reservation, Checkout returns an unconfirmed result and does not call Payments.
The labels matter more than another box. "Reserve and wait" tells the reviewer that Inventory availability affects checkout availability. "No payment attempt on reservation failure" connects the failure path to a customer consequence. A small note beside the view states an assumption: the reservation expires if checkout does not complete. The proposed sequence still needs a recovery path when payment authorization or order recording fails after reservation; the review should record that as open work, not let the tidy arrows imply it is solved.
This is a decision-level view, not an interface specification. It does not define request fields, status codes, or retry rules. Those details may need their own review. Here, the reviewer can finally answer the question that stopped the first drawing: an Inventory outage means checkout cannot confirm the order under the proposed rule.
Show the alternative at the same level
The reviewer suggests accepting the checkout request while Inventory is unavailable and resolving stock later. Rather than squeezing that possibility into the same arrows, the presenter places a second, equally small view beside the first. In it, Checkout records a pending order and returns "pending" to the customer. A later process attempts the reservation; if it fails, the system must cancel or offer another resolution. Payment timing is left open until the team defines what a pending order promises.
Now the review has a real choice. Waiting for Inventory makes the confirmation promise easier to state, but an Inventory outage blocks confirmed checkout. Accepting a pending order keeps request intake possible during the outage, but gives the customer a weaker promise and creates work to resolve unsuccessful reservations. Neither view proves that the system behaves this way today, and neither proves that the proposed flow is safe. They expose the product and operational consequences that the team must choose between.
For this fictional review, assume the product requires an immediate confirmation and has no pending-order experience. The team provisionally chooses the waiting path. It cannot approve the full confirmation promise until it decides how to recover if payment authorization or order recording fails after reservation. The artifact should preserve that reason next to the view, along with the open recovery question and the condition that would reopen the choice: a deliberate product decision to support pending orders. Without those notes, a later reader sees only an Inventory arrow and has to guess why it is there.
The review test is practical. Give the revised view to the engineer who will handle the checkout failure state and ask them to explain what the customer sees when Inventory times out. If the answer still depends on a verbal explanation from the presenter, the view is unfinished. Nord and colleagues' SEI technical note proposes guided review with intended stakeholders to find gaps in architecture documentation. That is guidance for inspecting an artifact, not evidence that a diagram creates agreement. In this case, the useful result is narrower: the reader can locate the decision, its alternative, and the unresolved failure path without inventing missing behavior.
If the review starts in Lycana, describe the waiting path by voice or text, then edit the Inventory connection as reviewers test the outage case. Keep the recovery question in the review record. The canvas can show the dependency and alternative, but the team still has to choose the customer promise.


