Skip to main content

What's in a User Story?

Being Agile: my occasional ramblings on Agile development & Extreme Programming

I constantly run into people who claim to be Agile but don't understand XP (extreme programming). And a lot of people fail to grasp the essence of XP because they get stuck on an XP principle that they find threatening - 'pair programming' and 'test driven development' are the usual suspects.

I'll focus on Pair Programming and TDD another day. Today I want to discuss the most important and fundamental aspect of XP - User Stories.

User Stories are like better, state-of-the-art Use-Cases - simpler and lending themselves to be scheduled individually.

Think of a User Story as a fine-grained Use-Case, leading to better estimation of effort, tracking of progress, and higher quality of implementation (fewer bugs due to requirements that are fine-grained, thorough and less ambiguous).

A User Story looks just like a bug would in a bug tracking system:
  • a one-line title summarizing the requirement that the user story encapsulates
  • a detailed description consisting of a bulleted list of acceptance criteria
  • a schedulable unit of work whose progress can be tracked
It is the schedulable nature of a User Story that gives it a huge advantage over any other form of requirement gathering, including Use Cases.

Next Time: How to schedule User Stories

Comments

Popular posts from this blog

Splitting User Stories vs. Rally's "split" feature (that has nothing to do with it!)

Agile tool Rally has a "split" feature it recommends to handle "unfinished work" in a Scrum Sprint:

Manage Unfinished Work - Split user stories (new link)

Below are my observations on the "Split" feature in Rally (followed by a few excellent articles on Splitting User Stories):
This "split" feature in Rally has numerous problems: 1. Nothing to do with Splitting User Stories It has nothing to do with "Splitting a User Story" which is an advanced but fairly well-understood field in Agile, and a tool for Product Managers to use in one of the two scenarios: The Product Manager does it before an Iteration commences (i.e. during backlog creation or release planning) to create User Stories by business value that are right-sized, i.e. they can be comfortably implemented inside an iteration; The Product Manager does it in Iteration Planning or in the middle of an Iteration to reduce scope by removing/simplifying acceptance criteria, in response to t…

User Stories: you're not Agile without them

Failure to effectively transition to Agile development is often based on a fundamental failure to understand what a User Story is.

Allow me to explain.

The most important aspect of a User Story is that it's an independently *schedulable* unit of requirement (feature). The key to achieving the "independently schedulable" characteristic of a user story is that you express it in terms of how a "user" would use it. This leads you to a unit of functionality that's implemented end-to-end (UI to backend) that a user can actually interact with.

Not surprisingly, because of the focus on how a user would think about a feature, a user stories are highly readable - and could very well be written by the users themselves. However, the other important and less obvious aspect of a User Story is the emphasis on communication with the end-user and getting confirmation on the acceptance criteria.

Describing all the requirements as User Stories for a decent sized product is rigoro…

To dream or not to dream? How about keeping your mouth shut?

Here's a really nice quote from one of my dear friends in response to one of my dreams.
Between the bigger things you cannot do,and the smaller things you don't want to do,you may end up doing nothing The problem with quotes and analogies is that they are almost always approximately appropriate, but rarely if ever exactly applicable . A quote is by definition a generalization. Also, we are by nature biased with our prejudices, biased by our own very personal and unique experiences, and biased, by nature, against those who are near and dear to us. While we want them to succeed and would eventually be happy if they succeed big, our natural instinct is to "help" them "stay grounded".

I disagree with this helping nature, of course. I can - and will- expound on the virtue of dreaming big and having a big mouth. But that will be another day.

Today I'm going to present a few quotes on the flip-side of my friend's quote. Feel free to add yours to the list…