Use case
A use case is a requirements analysis technique, introduced by Ivar Jacobson in 1992, that describes a system’s behavior as a sequence of interactions between an external actor (a user or another system) and the system itself, in pursuit of a specific goal. Where a user story is a short, conversational placeholder for a requirement, a use case is a more structured artifact: it typically names the actor, the goal, the preconditions, the main success scenario, and any alternative or exception flows.
Use cases are one of several artifacts that can be used to capture functional requirements, alongside user stories, user journeys, and wireframes.
Use-case-driven development is a defining characteristic of several process models and frameworks, including the Unified Process (UP), the Rational Unified Process (RUP), and Oracle’s Unified Method (OUM). Despite its association with these heavier, more upfront-design-oriented methodologies, use-case analysis fits well into agile processes too, because it is inherently iterative and incremental – a use case can be sketched thinly at first and elaborated over successive passes as understanding deepens.