This blog is the third and final post in a series about leveraging user stories to improve product outcomes. In this post we will explore how the utilization of just a few simple tips and tricks can help build a meaningful backlog of valuable user stories.
What are the “3 C’s” in Agile?
One of the key principles in Agile is the emphasis on the 3 C’s; Card, Conversation, and Confirmation. These 3 C’s play a crucial role in defining and prioritizing work for your delivery teams. Let’s explore each of these three C’s in more detail.
- Card: Written on a physical card (or digitally in an Agile tool, or spreadsheet if nothing else) and may annotate with notes of the user’s need. This will essentially become your user story.
- Example: As a spouse, I want a clean garage so that I can park my car and not trip on my way to the door.
- Conversation: Details in conversation with the Product Owner, Stakeholders, Developers, and Testers. This dialogue between the team and the user is necessary to clarify the details and assumptions of the story.
- Example: What about the bikes? Oh yeah, we can hang them up!
- Confirmation: Is a set of criteria or tests that verify the story is done and meets the user’s expectations. This is your story’s acceptance criteria to confirm “correctness” of the story.
- Example: Tools have been put away, items are off the floor, and bikes have been hung.
This example may or may not be from a personal scenario so, I may or may not have a clean garage now and don’t have to worry about dying on my way in the door! 😉
If you remember, from user story blog #1 in this series, these are all components of a user story and in Agile methodology, serve as guiding principles for effective work management. They emphasize the importance of clear, concise work items, collaborative communication, and continuous validation. This allows teams to streamline their processes, foster collaboration, and deliver customer value.
What is “INVEST” and how does it set my user story up for success?
To help ensure that your user stories are effective, they should meet the criteria of “INVEST.” This acrostic criterion is as follows:
- Independent: User stories should be independent of each other, so that they can be worked on and tested separately.
- Negotiable: User stories should be negotiable and open to discussion and change.
- Valuable: User stories should deliver value to the user and the business.
- Estimable: User stories should be estimable in terms of time and effort required.
- Small: User stories should be small enough to be completed within a single sprint.
- Testable: User stories should be testable, so that they can be validated and verified.
INVEST will help you remember a widely accepted set of criteria, or checklist, to assess the quality of a user story. If your story fails to meet one of these criteria, the team may want to reword it, or even consider a rewrite altogether. By ensuring that user stories meet the INVEST criteria, we can write more effective user stories that are focused on delivering value to the user and the business.
Are your stories “Vertically Sliced?”
Along with the INVEST criteria, it is recommended to use the “Vertical Slice” approach wherever possible within your product backlog. This means that each user story should deliver complete vertical slices of functionality across different work layers. This refers to a work item that delivers a valuable change in system behavior in which the team will probably have to touch multiple architectural layers to implement the change.
In other words, you don’t need to create a separate user story for frontend/user interface development, backend system architecture, database elements, or even testing. All these different development and quality assurance components should be worked within the same backlog work item to deliver value to the user once all “pieces of the pie” are considered done.
Conclusion
By following these Agile best practices, you will have a solid understanding of how to write effective user stories that will help development teams create high-quality products that meet user needs and deliver value to the business.
In the next blog posts we will dive into the creation and development of Features and Epics.