UPI Study › Courses › Software Engineering › Free lessons › Lesson 3.4 Free with a free account
User Stories vs. Use Cases: Comparing Agile Artifacts
Software Engineering · Chapter 3: Unified Process and Real-World Model ApplicationsSection 3.4 · lesson 21 of 1037 min · free with a free account
Free preview
Create a free account to keep watching
It takes a minute and costs nothing. Your free account unlocks all of Chapter 1 and 3 more lessons of Software Engineering.
Lesson complete
Earn the 3 college credits for Software Engineering
Enrolling adds a quiz after each lesson, the graded work and the official transcript. Recommended for credit by NCCRS.
Next lesson: Toolkits and Frameworks That Support Agile Teams →← Weighing the Strengths of Agile Development MethodsNext lesson: Toolkits and Frameworks That Support Agile Teams →
In this lesson
2 ways to capture the same need - and how to choose between them.
- Explain what user stories and use cases have in common
- Describe the user story format, and why its brevity is deliberate
- Describe the use case format, and why it handles branching well
- Choose between them, or use both, on a real project
Transcript
Everything said in the video, section by section (971 words). Read along, or search it.
Unified Process and Real-World Model Applications
User Stories vs. Use Cases
Two teams can capture exactly the same need, and hand back completely different documents. This section compares two of those documents, the user story and the use case. What each looks like, what each is good at, and how to choose between them.
Same Need, 2 Tools
A Card or a Page?
Ask two teams to capture one need. A shopper wants to save an item for later. One team might hand back a single sentence on an index card. The other might hand back a page, describing every step, and every way the interaction could branch. Neither team got it wrong. A user story and a use case both answer the same basic question. What does someone need this system to do for them? They differ in how much they try to say on paper, and when the rest of the detail is expected to show up.
The 2 Artifacts
The Wishlist, Captured Twice
Here is the same need, captured both ways. On the left, the user story. As a shopper, I want to save items to a wishlist, so that I can find them again later. Its acceptance criteria and edge cases are left for a later conversation. On the right, the use case. It names the actor, the shopper, and lays out a main flow. The shopper selects save, the item is added to the wishlist, and the system confirms the save. It also records an alternate flow. If the item is already saved, the system shows a message. One is deliberately incomplete. The other is written to stand on its own.
User Stories
Short, Conversational, Built for Iteration
A user story is usually written in a short, almost formulaic sentence. As a certain kind of person, I want a certain outcome, so that a certain benefit follows. That formula is not meant to be a full specification. It is a placeholder for a conversation that has not happened yet. The story earns the rest of its detail later, when the builder talks with whoever asked for it, often just before or during the cycle that implements it. This fits an iterative structure naturally. Iteration already expects understanding to improve as work proceeds. So a story that starts thin, and gets filled in through conversation, is not a shortcoming. It is the format working as designed. Teams often attach a short list of acceptance criteria once a story is better understood. Even that stays lightweight.
Use Cases
Structured, Detailed, Built for Completeness
A use case describes an interaction between an actor, a person or another system, and the system being built. It is written as a sequence of steps toward a goal. And it typically records the more obvious ways that path could branch. What happens if something is missing, already done, or goes wrong. That makes a use case better at capturing real branching complexity. A story usually handles a variation by becoming a second, separate story. The completeness is also the trade-off. A use case takes real effort to write well, and works best when the interaction is understood clearly enough, up front, to describe accurately.
Side by Side
Comparing the 2 Formats
Here are the two formats side by side. A user story is one or two sentences, card-sized. A use case runs from several steps to a full page or more. A story captures a single, small piece of value. A use case captures a complete interaction, including alternate paths. A story's detail arrives later, through conversation close to the work. A use case's detail is written down before development starts. A story handles branching weakly. A use case handles it directly, in the same document. And stories fit iterative, close-collaboration work, while use cases fit sequential, document-driven, or compliance-heavy work.
A Warning
When Brevity Becomes a Problem
A story's brevity is a feature. It is not a missing use case. It only becomes a real problem when a team treats a story as if it were already complete. If the conversation the format was designed to require never happens, the team ends up building from one sentence alone. That defeats the whole point of the format.
Choosing
Stories, Use Cases, or Both
User stories fit best when work happens in small increments, and the team talks often with the people who requested the work. They also need it to be fine for detail to arrive close to when it is needed. Use cases fit best when a complete, traceable written record is expected before development starts. That includes contractual work, regulated environments, or any interaction with real branching complexity that a one-line story would hide. The two are not mutually exclusive across a project. Some teams default to stories for most of their work, and reach for a full use case only for the few interactions complicated enough to need one. Picking an artifact is really picking how much a team is willing to leave unresolved until later. That choice should follow from how the rest of the project is organized.
Key Terms
The Vocabulary of This Section
Let's lock in the key terms. A user story is a short, deliberately incomplete requirement, usually in the form, as a role, I want a goal, so that a benefit. It anchors a later conversation. A use case is a written description of an interaction between an actor and a system, as a sequence of steps toward a goal, including its significant branches. Acceptance criteria are a short list of conditions a story must meet to count as complete. And an actor is the person or external system taking part in the interaction a use case describes.
Key Takeaways
What to Carry Forward
To pull this together. User stories and use cases both capture what someone needs a system to do. They differ in how much they say up front. A user story is short and deliberately incomplete, filled in through conversation as the work approaches. A use case is complete and self-contained, with alternate paths written directly into it. Stories suit iterative, collaborative work. Use cases suit document-driven, contractual, or regulated work. And choosing an artifact means choosing how much to leave unresolved. Many teams use both.
About Software Engineering at UPI Study
Software Engineering (Computer Science 301) is a self-paced online course of 103 video lessons in 15 chapters, from process models and agile to requirements, design, user interfaces, reliability, security and project management. It carries a NCCRS credit recommendation for 3 semester credits.
Every lesson transcript is free on pages like this one, and the videos are free with a free UPI Study account. Enrolling adds a practice quiz after each lesson, the graded work and final exam that earn the credit, lifetime access, and an official transcript on completion. UPI Study has helped over 130,000 students with college credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Enroll now → Course details Download the syllabus All Computer Science courses Every course with PRO →
Why take it here
Why students take Software Engineering with UPI Study
Where the credit goes
Universities that work with NCCRS
Software Engineering carries a NCCRS credit recommendation. These universities work with NCCRS; some are UPI Study's signed partners. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Thomas Edison State UniversitySigned partner
University of the PeopleSigned partner
Charter Oak State CollegeSigned partner
Strayer UniversitySigned partner
Columbia Southern UniversitySigned partner
Indiana TechSigned partner
Penn StateWorks with NCCRS
Southern New Hampshire UniversityWorks with NCCRS
SUNYWorks with NCCRS
+many more cooperating universitiesFind my college →Find my college → Not listed? Ask Athena in the corner of this page, or book a 15-minute call.
FAQ
Questions students ask us
About User Stories vs. Use Cases: Comparing Agile Artifacts
What is the difference between a user story and a use case?
What is the standard format of a user story?
Why are use cases better than user stories for complex branching?
When should you use a use case instead of a user story?
About the Software Engineering course
How many college credits is Software Engineering?
How much does Software Engineering cost and what is included?
Which universities accept UPI Study credits?
How long does Software Engineering take?
How are the exams done?
How do my credits reach my college?
Ready for the full course? Earn 3 credits in Software Engineering.
103 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.
3 credits · NCCRSEnroll →