liveBook · Manning

Use case

As explained in Collaborative Software Design: How to facilitate domain modeling decisions

A use case is a description of interactions between an actor and a system that produce an observable outcome.

A use case describes interactions that produce an observable outcome. In collaborative modeling, use cases help identify what can happen at a particular moment in a scenario, alongside rules and constraints. section 2.3.3

Use cases become especially useful when a process model leaves important variations unresolved:

  • Switch from a timeline-focused technique when discussion branches into multiple what-if scenarios. section 2.3.3
  • Explore concrete examples to discover business requirements, acceptance criteria, and governing constraints. section 2.3.3

Reserving seats

A ticketing flow may reserve seats or find no available seats. Examining these use cases exposes rules such as one ticket per seat and adjacent seats for a single reservation. section 2.3.3

Figure 2.19 An example of how to start an Example Mapping. With a user story and the rules, we explore the first concrete example of the rule. On the right side, you can see how to do it either using a virtual board such as Miro or using index cards in a physical setting and drawing with a dry-erase marker on it. From here, we can discuss and find new examples.

Use the visual arrangement to begin with a user story and rules, then expand them through concrete examples on a virtual board or physical cards. section 2.3.3

How Collaborative Software Design: How to facilitate domain modeling decisions covers it

How deep it goes
Visualizes use cases through concrete examples, stopping at requirements and constraints rather than implementation.
Examples
Uses movie-seat reservation, adjacent-seat rules, one-ticket-per-seat constraints, and corridor discovery.
What it assumes
Requires no prerequisite workshop and starts from concrete examples at a point in a timeline.
What you can do after
Apply it via Example Mapping to surface acceptance criteria and constraints.
How it connects
Connects use cases with EventStorming, examples, rules, constraints, and acceptance criteria.

Also explained in

Compare how 7 books explain use case →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Collaborative Software Design: How to facilitate domain modeling decisions. The section links point to the parts of the book it draws on.