A team documents each feature with UML interaction diagrams alone. Which modelling questions does that leave unanswered?
answer
- One scenario, one path, one moment
- Nothing quantifies over all cases
- Illegal transitions can never be drawn
- Cannot see what the pack is missing
- Promote invariants out of the scenarios
basics
~20 sInteraction diagrams answer one scenario at a time, so everything that quantifies over all scenarios is missing: the type-level rules and multiplicities, which lifecycle transitions are legal, what the full set of user goals is, and what is co-located.
solid answer
~50 sAn interaction diagram claims only that *in this scenario, these participants exchanged these messages in this order*. Everything that must hold across **every** scenario falls outside it. Four gaps follow. **Type-level rules**: a scenario shows one instance, never how many are permitted or which relationships are legal — that is a class diagram. **Lifecycle legality**: a scenario can only show a transition that did happen; it can never assert that some transition is forbidden, which is where defects live — that is a state machine diagram. **Goal coverage**: a pack of scenarios cannot show what is missing from it — that is a use-case diagram. **Topology**: two participants drawn side by side may be co-located or separated by a network, and the diagram looks identical. The repair is to promote invariants out of the scenarios and keep only a few representative ones.
go deeper
Know that a scenario diagram shows one path through one case. It is evidence that something can happen, never evidence that it must always happen that way.
Be able to name at least two specific claims a scenario diagram cannot make — a multiplicity rule and a forbidden lifecycle transition — and say which diagram family makes each of them instead.
An interviewer expects you to diagnose the pattern from the symptom of repetition, and to propose the repair: promote the invariant into one model, keep a couple of representative scenarios, delete the rest.
Own the general statement — each half of the taxonomy has a permanent blind spot — and be ready to say how you make a team's record cover both halves without turning modelling into a phase of its own.
## What an interaction diagram is actually scoped to An interaction diagram makes a narrow, honest claim: **for one chosen scenario, these participants exchange these messages in this order.** Every word in that claim is a limit. It is one scenario out of many; it is one path through that scenario unless alternatives are drawn explicitly; the participants are the ones the author chose to include; and it is instance-level, so it says what happened once, not what must always hold. That narrowness is a virtue when the question is *in what order does this go*. It becomes a defect when such diagrams are the entire design record, because the missing claims are all of one kind: those that quantify over every scenario rather than one. ## The four questions the pack cannot answer 1. **The type-level rules.** Which participants may exist at all, which relationships between them are permitted, and with what multiplicities. A scenario shows one learner with one active subscription; nothing in it says whether two are possible. That claim belongs on a class diagram. 2. **Lifecycle legality.** Which lifecycle states one object may occupy and which transitions between them are legal — and, crucially, which are **illegal**. A scenario diagram can only ever show a transition that did happen. It has no way to assert that a cancelled subscription must never move directly back to active, and that assertion is the one defects are made of. It belongs on a state machine diagram. 3. **Goal coverage.** Which outside parties want what from the system at all. A pack of scenarios cannot tell you what is missing from it, because the pack contains no statement of the whole. A use-case diagram makes the set of goals visible so gaps are visible too. 4. **Placement and topology.** What is co-located and what crosses a boundary. Two participants side by side on a lifeline chart may sit in the same process or on separate machines, and the diagram is identical either way — which means every question about failure across that boundary is unanswerable from the pack. That belongs on a deployment diagram. A fifth gap hides in plain sight: a long-running process with real concurrency and several alternative paths is enumerable as scenarios, but the enumeration explodes and the shape stops being visible. One activity diagram carries what a dozen paths carry. | The claim the record needs | Can a scenario diagram make it? | Where it belongs | | --- | --- | --- | | In this case, A messages B then C | Yes — this is its job | Interaction diagram | | At most one active subscription per learner | No — one instance is not a rule | Class diagram | | Cancelled must never return directly to active | No — it can only draw what happened | State machine diagram | | These are all the goals the system serves | No — a set cannot show its own gaps | Use-case diagram | | These two participants sit on separate machines | No — the drawing is identical either way | Deployment diagram | ## The tell, and what it looks like in practice The observable symptom is repetition. On a language-learning app, look for twenty-three scenario diagrams that between them re-draw the same six lifecycle states of a learner's subscription, each from a slightly different start, with no single place stating which of those states may follow which. A third of a 47-item backlog then turns out to be defects living in that gap: a state combination nobody drew because no scenario visited it. The pressure that exposes it fastest is a legacy system being decommissioned in parallel, because during the parallel run two systems write the same lifecycle and must agree on which transitions are legal. Scenario diagrams cannot settle that argument — each side produces a diagram in which its own path is drawn, and both diagrams are correct about the scenario they show. Only a single lifecycle model, stated once and agreed by both sides, adjudicates it. That is a structural-versus-behavioural routing failure at heart: the team kept answering *what happened in this case* when the question in the room was *what is always true*. ## The fix, and what to keep The repair is not more scenarios. It is to promote the invariant out of them: - **Extract one lifecycle model** for each object whose states the scenarios keep restating, and let it be the authority on legal transitions. Keep two or three scenario diagrams — the representative path and the awkward ones — and delete the rest. - **Add one type-level structural diagram** covering the participants and their multiplicities, so a scenario no longer has to be read as though it were a rule. - **Add one goal-level behavioural diagram** if it is unclear what the system is for, so missing scenarios show up as visible gaps rather than absences nobody notices. - **Add topology only if a boundary matters** to the questions being asked; if everything is co-located and always has been, that diagram earns nothing. The principle is worth stating plainly, because it is what an interviewer listens for: **one scenario can never establish an invariant, and one structural diagram can never establish an ordering.** A record built from one half of UML has a predictable blind spot, and the senior move is to name it before someone finds it as a defect.
- Twenty-three scenario diagrams all restate the same object's lifecycle. What do you replace them with?One lifecycle model for that object, which becomes the authority on which transitions are legal and which are forbidden, plus two or three scenario diagrams kept for the representative and awkward paths. The rest are deleted. That converts an inferred rule that lives across twenty-three drawings into a stated rule in one place a reviewer can check.
- Why does a parallel run against a system being decommissioned expose this gap so quickly?Because two systems then write the same lifecycle and must agree on which transitions are legal. Each side can produce a scenario diagram in which its own path is drawn, and both are correct about the scenario they show, so the disagreement is unresolvable at that level. Only a single agreed lifecycle model adjudicates it.
- Is the opposite failure just as real — a design record built only from structural diagrams?Yes, and it is equally predictable. Structural diagrams cannot establish that one thing happens before another, so ordering assumptions stay implicit and get smuggled into names. The symmetry is the point: each half of the taxonomy has a permanent blind spot, and a record drawn from one half alone always has that half's gap.
saying these in an interview costs you the question
- Says more scenario diagrams would close the gap
- Treats one scenario as proof of a general rule
- Cannot name anything a scenario diagram is unable to assert
- Claims a single merged scenario diagram covers every path
- Thinks the fix is more detail rather than a different diagram family
- Reads co-location off a diagram that does not state it