Enrol to start learning
Reading is open to everyone. Enrolling is free, and it is what unlocks the audio lessons, practice tests and progress tracking.
14.3. Bad vs Good Story Example
Learn content
Interactive Audio Lesson
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Let's start by discussing what a user story is. A user story is a brief, simple description of a feature from the end user's perspective. Why do you think this is important in Agile development?
I think it helps ensure that the developers build what the users really need.
Yes, it aligns the development with user expectations!
Exactly! It acts like a mini-story with a purpose. Remember the format: As a [type of user], I want [goal], so that [reason/benefit].
Could you give an example?
Sure! 'As a job seeker, I want to upload my resume so that I can apply for jobs quickly.' This gives clarity to the team.
That makes sense! It guides developers on what they need to implement.
Right! Let's summarize: User stories should tell who needs something, what they need, and why.
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Now, let's contrast a bad user story with a good one. Can someone read the bad example?
'Create a login system.'
Fantastic! Why is this considered a bad user story?
It doesn't specify who the user is or why they want it.
Yes, it lacks detail!
Great observations! Let's look at the good example: 'As a user, I want to log into the portal so that I can access my dashboard.' Why is this better?
It specifies the user, the action, and the benefit!
Exactly! This structure helps teams understand the context and implement features efficiently.
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Next, let's talk about acceptance criteria. Why do you think they're critical for user stories?
They define when a story is considered done!
And they help keep everyone aligned, right?
Exactly! Acceptance criteria provide clarity, which enhances the testability of user stories. For example, 'A reset password link is sent to the registered email.'
So, every user story should have clear acceptance criteria?
Absolutely! It ensures that developers know exactly what to implement and stakeholders are satisfied.
Overview
Short Summary
This section contrasts ineffective and effective user story examples to illustrate the importance of clear and actionable user stories in Agile projects.
Medium Summary
The section provides insights into user stories by showcasing a bad example, 'Create a login system,' compared to a good example, 'As a user, I want to log into the portal so that I can access my dashboard.' It emphasizes the significance of clarity and context in user stories, ensuring they meet the needs of both users and development teams.
Detailed Summary
Bad vs Good Story Example
In Agile project management, writing effective user stories is crucial for bridging the gap between business needs and technical execution. A poorly defined user story, such as 'Create a login system,' lacks clarity, context, and actionable goals. In contrast, a well-structured user story like 'As a user, I want to log into the portal so that I can access my dashboard' encapsulates essential information:
- The user type (user)
- The goal (login to the portal)
- The benefit (access to the dashboard)
Thus, good user stories facilitate meaningful dialogues between stakeholders and the development team, aiding in creating valuable software.
Audio Book
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account❌ Bad: "Create a login system."
Detailed Explanation
A bad user story is often vague and lacks a clear perspective of the user. In this example, 'Create a login system' does not specify who the user is, what their specific needs are, or why this feature is important. This lack of detail makes it difficult for the development team to understand the user’s requirements and leads to ambiguity in implementation.
Examples & Analogies
Imagine if a chef were told to 'make food'. This instruction is vague and doesn't guide the chef on what cuisine to prepare, what ingredients to use, or the dietary needs of the diners. Just like a clear meal plan helps the chef, a clear user story is essential for developers.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account✅ Good: "As a user, I want to log into the portal so that I can access my dashboard."
Detailed Explanation
A good user story follows a clear format, providing a specific context and purpose. This example identifies the type of user ('user'), expresses a clear goal ('log into the portal'), and explains the reason why this action is beneficial ('to access my dashboard'). Such clarity helps developers understand the user’s perspective and the value of the feature being developed.
Examples & Analogies
Think of a librarian receiving a request: 'As a library member, I want to borrow books so that I can study for my exams.' This request specifies the user (library member), states the goal (borrow books), and specifies the reason (study for exams). This clarity ensures the librarian knows exactly how to assist.
--
Key concepts
Core takeaways and short definitions to help you quickly recall the key ideas from this section.
- User Story:
A brief description of a feature from the user's perspective.
- Acceptance Criteria:
Conditions that define 'done' for a user story.
- Agile Methodology:
An iterative approach focusing on collaboration and flexibility.
Examples
Step-by-step examples to apply the section's ideas and test your understanding.
Bad example: 'Create a login system.' Good example: 'As a user, I want to log into the portal so that I can access my dashboard.'
Acceptance criteria for a password reset feature could include: a reset link sent to the registered email and a prompt for a new password.
Memory aids
Imagine a user wanting a tool to log in. They desire to access all features. A clear ask gives developers clues to build with ease.