The Software Development Blog | AndPlus

Agile Development Process - What is a user story?

Written by Brian Geary | Mar 13, 2015 4:00:00 AM

What is a user story?

A user story is the building block of the agile development process. Agile user stories normally follow a specific format – As a (role), I want (some goal) so that (some reason) – but more importantly open up a series of conversations about desired functionality within a piece of software.

That’s it?

Simple, right? The point of a user story is to open up the discussion between the development team and the product owner as to what they would like a user using the application to accomplish. Take for example the following user story:

As a user, I want to be able to register an account on the World News website, so that I can receive updates from World News in my email.

This seems fairly straightforward. I want to sign up for updates from World News and get updates sent to my email. But from a developer’s perspective, this brings up a handful of questions that really show the beauty of a user story. Let’s break it down and ask a few questions as if we were the development team.

When a user signs up, do you want their user name to be the same as their email address?

Do you want to verify that the user is signing up with a valid email address?

How do you want to verify this? Do you want to make sure that the email address just has an @ sign or do you want to send them an email so that they can verify that it is a real email address?

Do you want to give them a temporary password or would you like them to click a link that you email them so they can finish registering their account?

What fields are required from a user when they are registering for an account?

Questions like these (which are technically called grooming) give the development team insight as to what the product owner expects out of this feature, ensuring that everyone fully understands this one aspect of the application and is on the same page.

So we talked about a bunch of stories…now what?

Once the product owner and the team feel like they have enough user stories created, the user stories will then be prioritized in the product backlog, with the most important user stories to the product owner on top, and then groomed. The development team will then pull in as many user stories as they think they can accomplish in the two week sprint into the sprint backlog. The development team will then get together to plan the sprint and break the user stories into small technical tasks.

Once the two week sprint is completed, the development team shows the product owner the completed functional user stories. The product owner will verify that the work completed matches the user stories that were prioritized for that specific sprint. Once all user stories are verified, the user stories are marked done and the team moves on to the next sprint.

To learn more about user stories, and how they are applied throughout the agile software development process, download The Official Agile 101 Software Development Handbook by clicking the button below!