Use Cases
Overview
A Use Case is a focused user scenario that describes how a Requirement is accomplished. Think of it as a swimlane or hyperscoped user flow - it details specific user interactions and workflows within your product.
What Makes a Good Use Case
Use cases should:
- Describe a single user journey or workflow
- Be specific enough to guide design decisions
- Focus on the "happy path" first (edge cases come later)
- Be organized in the sequence users are likely to follow
Use Cases as Swimlanes
A use case is essentially a swimlane diagram - a hyperscoped view of a specific user flow. It shows the sequence of actions a user takes to accomplish a goal.
┌─────────────────────────────────────────────────────────┐
│ Use Case: Complete Checkout │
├─────────────────────────────────────────────────────────┤
│ │
│ User → Review Cart → Enter Payment → Done │
│ │
│ System → Validate → Process → Confirm │
│ │
└─────────────────────────────────────────────────────────┘Use Cases in Flows
When you import a use case into Flows, it becomes the container for multiple evaluations over time:
Use Case: Checkout Process
│
├── Evaluation v1 → Score: 68% (C)
├── Evaluation v2 → Score: 75% (B)
└── Evaluation v3 → Score: 88% (A)This is the power of the system: the same swimlane (use case) gets evaluated repeatedly as your design evolves, allowing you to track improvement over time.
Two Paths to Flows
Path 1: Full Requirements Workflow
Guidelines → Requirements → Use Cases → Acceptance Criteria → Import to Flows
Path 2: Standalone (Already Have Defined Flows)
Guidelines → Create Flow Directly → Run EvaluationsUse Path 2 if your organization already has documented user flows (like a checkout process) and you don't need to re-map everything in Requirements.
Example Structure
Requirement: Mobile pizza ordering app
Use Case: Browse pizza types
└── User opens app and views available pizzas
Use Case: Add pizza toppings
└── User selects a pizza and customizes toppings
Use Case: Complete checkout
└── User reviews order and completes paymentBest Practices
- Think in swimlanes - Each use case is a single, focused user flow
- Define the sequence - Organize use cases in the order users will encounter them
- Focus on primary flows - Map the main user journey before handling edge cases
- Be descriptive - Briefly explain what the user is trying to accomplish
- Plan for versioning - Once imported to Flows, you'll evaluate the same use case multiple times