Use cases describe how a system interacts with actors (users or other systems) to achieve a goal. The complete path from the first step to the last is called a scenario. Some use cases have multiple scenarios and extensions for a single user goal. All paths try to achieve those goals. Example: - Title: Withdraw Cash - Primary Actor: Customer - Main Success Scenario: - Customer inserts card. - System validates card and PIN. - Customer selects withdrawal amount. - System dispenses cash. - System updates account balance. - Extensions: Invalid PIN, insufficient funds, ATM out of cash, etc. Use cases were created and popularized by Alistair Cockburn. The WAVE test ensures use cases are about actors achieving goals through interaction with the system, not just system qualities or developer task. - Who is the primary actor? - Acts of interaction (the actor does something). - Verb phrase that describes what happens (something observable). - Ends in value--the interaction must deliver something of value to the actor. > [!Tip]- Additional Resources > - [Use Cases v1.1](https://alistaircockburn.com/Use%20Case%20Foundation.pdf) > - Writing Effective Uses Cases by Alistair Cockburn