explain-irl
A scenario follows one person in date order, until the reader sees what the subject does to them.
1. Pick the subject
Take the subject the invocation names. Otherwise take the last one raised in the session; when that message raised several, ask which with AskUserQuestion.
Done when one subject is named.
2. Cast and trace
Cast the person who feels the consequence, named in the project's vocabulary: a customer, an editor, a caller of the API. Give them a first name and a starting position in real units: a count, a size, a date. Invent the person and every value about them, even when real records are within reach.
Follow them down one path, or down several that differ in one thing:
- For a trade-off, one path per option.
- For a problem that bites only under some condition, the normal path beside the broken one.
Trace each path: run the person's inputs through the code that decides the outcome, and note what the system produces at each step. A number no code decides, such as how often the condition occurs, is illustrative; mark it so in the scenario.