background preloader

The Easy Way to Writing Good User Stories

The Easy Way to Writing Good User Stories
Many development shops have opted to writing user stories over traditional feature/requirement documents; however, almost all of them struggle when writing their first batch of user stories. This is not at all uncommon, just like riding a bike, it does take a little bit of practice (but once you get it – you get it). Writing user stories is dead simple if you follow these simple steps: 1. When writing user stories, using this pattern is a for sure bullseye. As a account owner, I can check my balance online so that I can keep a daily balance 24 hours a day. Pretty easy right? As a account owner, I can check my balance online. Feel free to use slight deviations of this template using synonyms: As a [role], I want [feature] because [reason]As a [role], I can [feature]As a [role], I can [feature] so that [reason] 2. When creating new user stories, always hand write your new stories on a single side of a index card using a Sharpie marker. User stories are suppose to be short and sweet. P.S. 3. Related:  User StoriesRequirements

New to User Stories?Written for the Scrum Alliance. A CSP’s perspective on user stories, requirements, and use cases Having coached traditional requirements, use cases, user stories, and agile development, I’ve fielded a lot of questions around the differences among the three major ways of specifying requirements, particularly by people migrating to user stories. To set the record straight on requirements, use cases, and user stories, I will describe each methodology and then compare the three against each other. Traditional requirements Traditional requirements are criteria to which the system or business must adhere. Good requirements have the following characteristics: Complete. Traditional requirements focus on system operation. Use Cases A use case is a series of interactions by the user (Actor) with the system and the response of the system. Use cases focus on interactions and are written in such a way as to succinctly define the user/system activities and data that define the interaction. User Stories A good user story uses the “INVEST” model: Independent. User story–writing process Conclusion

Connecting the Dots Between Analysis and Design Most software teams seem to lump together the terms Analysis and Design into one pre-development phase. This is unfortunate because with enough effort in first determining what you wish to build (aka Analysis) it is possible to understand the domain enough not to need up front architecture (aka Design). I find this much like a children’s connect-the-dots puzzle. For example, if each user story (or requirement) is flushed out ahead of time, it might be possible to view and understand the entire domain without connecting any lines. Understandably, it may not be possible to completely comprehend the domain solely on user stories. Determining what needs to be built is the hardest part of development. This process, while simple, still takes a lot of maturity to accomplish. Do not fall prey to Analysis Paralysis; sometimes good enough has to be good enough.

User Story Example I recently described User Stories and the composition of a User Story Card – Card, Conversation and Confirmation. I’m not really sure if you would consider this user story example to be good, bad or indifferent – I guess it depends what you’re used to – but here is an example nevertheless! This is the front of the card. The Card section describes the user story. Note the feature (for a user to log in to a web site) is small, so the story can be fairly well described on a small card. Clearly it’s not as detailed as a traditional specification, but annotating a visual representation of a small feature at a time, makes it fairly self explanatory for team members. And I would certainly argue it’s more easily digestable than a lengthy specification, especially for business colleagues. Here is the back of the card: The back of the card outlines the test cases for this feature – how it’s going to be confirmed. Kelly. Home

Agile Software Development: User Stories User Stories are a simple way of capturing user requirements throughout a project – an alternative to writing lengthy requirements specifications all up-front. User Stories are derived from XP ( Extreme Programming ), however they can just as easily be used for in any agile development methodology , or indeed in any home-grown development process. A User Story is a simple statement about what a user wants to do with a feature of the software, written from a user’s perspective. A User Story should not use technical jargon or state design goals. User Stories should be written in business language that is understandable to all. A User Story should focus on the who, what and why of a feature, . For example, on a job site, two high-level User Stories might be: As a job seeker, I want to search for a job, so I can advance my career. As a recruiter, I want to post a job vacancy, so I can find a new team member. As a , I want to , so I can (a) it gives clarity as to why a feauture is useful; Kelly.

User Story Estimation Techniques One of the great things about working as a consultant is the ability to try out many different ideas and adapting your personal favorite process to include things that work. This article gives the details about user story estimation techniques that I've found effective. Powers of two Originally I estimated stories as one, two, three, four or as small, medium, large, extra-large. Use four values I was once on a project that started with 1, 2, 4, 8 as their estimation values. No averages or numbers not on the scale Four values allow you to get a rough estimate without spending unnecessary time focusing on precision. Vote independently It's human nature to be influenced by other people. Take the largest estimate Even when reminded, developers seem to have a hard time estimating with a team in mind. Taking the largest estimate has additional benefits. Finally, taking the largest estimate can help save time in an estimation meeting. Large estimate gaps Insufficient information Required involvement

User stories in VS2010 MSDN Library Design Tools Development Tools and Languages Mobile and Embedded Development Online Services patterns & practices Servers and Enterprise Development Web Development This topic has not yet been rated - Rate this topic User story (Agile) Other Versions This topic has been merged with its parent, Agile process template work item types and workflow. Did you find this helpful? Tell us more... (1500 characters remaining) Thank you for your feedback Show: © 2014 Microsoft.

5 Common Mistakes We Make Writing User Stories - Scrum Alliance Most of the issues with gathering requirements in agile software development and agile testing derive from issues with User Stories. Somehow expressing requirements in such a simple form causes a lot of trouble to agile teams. Of course art of writing good User Stories is the most difficult for new teams starting with a new agile project or these, which freshly transformed development methods to agile software development methodologies. Mistakes made at that point lead to wrong Test Cases, wrong understanding of requirements, and the worst of all wrong implementation which can be direct cause of rejecting the deliverables of the iteration. Lets take a look at the five most common mistakes people make writing User Stories. Introduction to User Stories User Story is a short description of customer’s need. The main purpose of using this tool is estimation of an effort needed to implement a new feature in software accordingly to the Definition of DONE for the team. 1. 2. 3. 4. 5.

Introduction to User Stories 1. Introduction to User Stories A good way to think about a user story is that it is a reminder to have a conversation with your customer (in XP, project stakeholders are called customers), which is another way to say it's a reminder to do some just-in-time analysis. 2. As you can see in Figure 1 user stories are small, much smaller than other usage requirement artifacts such as use cases or usage scenarios. Figure 1. Important considerations for writing user stories: Stakeholders write user stories. Figure 2. 2. Figure 3. 4. There are two areas where user stories affect the planning process on agile projects: Scheduling. Figure 4. 5. As you can see in the Disciplined Agile Delivery (DAD) life cycle of Figure 5, there are several distinct "phases" or seasons in the life cycle (some people will refer to the agile delivery life cycle as a release rhythm). Inception. Figure 5. Figure 6. 6. During JIT analysis/model storming with stakeholders. Figure 7. 7. 8. Translations Japanese