User Stories
'Stories are not requirements; they are discussions about solving problems for our organization, our clients, and our users that lead to agreements on what to build.' - Jeff Patton
User stories describe requirements in an agile form. To discuss their details, direct communication between the team and the client is necessary, encouraging collaboration. They are written in natural language and describe who the user is, what they want, and why, rather than specifying technical details.
User stories are used to capture requirements in a clear and understandable way, allowing the XP team to prioritize and plan the functionalities to be developed in short iterations. This user-focused approach helps ensure that the software meets the real needs of the clients and is developed in an agile manner.
The essence of using user stories as requirements aligns with the values of the Agile Manifesto.
3C Model
- Card: Stories should be written on cards (or something card-sized).
- Conversation: The requirement is communicated from the client to the team through direct conversation.
- Confirmation: The story is confirmed through acceptance criteria.
- Lifecycle: Each story follows a lifecycle, being progressively refined. They typically start as epics (broad and generic), are refined into stories, and then become tasks.
Connextra Writing Model
- As a... - Who I am as a user, who will benefit.
- I want... - The functionality itself.
- So that... - The benefit and ultimate goal. The purpose.