How to select user stories – part 1

February 11, 2010 at 4:04 pm | Posted in Agile | 3 Comments

This is going to be a series of blogs (probably 4 or 5) about selecting user stories. According to Wikipedia User stories are “used with Agile software development methodologies for the specification of requirements”. Pretty straightforward. Once you got a bunch of user stories selected you can prioritize them. This list is called the product backlog and one of the backbones of the Scrum process. With the backlog the software development team can plan their iterations, starting from the top with the stories with the highest priority or business value.

Now while this sounds very easy, in practice this might become a bit harder. In Scrum terms, the product owner decides on the priority. Now what if you have three product owners, each with their own stakes they want to defend? And what if you just start from the top of the backlog. What happens with the low priority stories? Is it really ok to just ignore those stories, based on their priority?

To answer these questions and to help a customer I used a very simple tool that is based on the Boston Consulting Group matrix. Thus I ended up with the following picture:

Priority versus Effort

On the horizontal axis we determine the priority. This is a proxy for the benefit that a certain feature will generate. The product owner(s) decide on the priority. On the vertical axis we put the effort. Effort can be expressed in hours or complexity points. Effort is a proxy for the cost to build a certain feature.

With this simple picture it was easy to explain to the customer in what order they should build their features:

  1. High priority, low effort (green area): this is the low hanging fruit that should be picked up first.
  2. High priority, high effort (yellow area, upper right): here are the user stories which have a high risk, simply because they take a lot of effort to implement. Because of this risk, they should be picked up as soon as possible.
  3. Low priority, low effort (yellow area, lower left): only implement these if you have time left
  4. Low priority, high effort (red area): obvious, don’t bother to implement. Unless… but that will be the subject of one of the next blogs.

While everyone could see the benefit of this approach I still had some doubts. What I particularly disliked is the discontinuity right in the middle: the green, the red and the yellow areas touch each other. So user stories close to the middle can be in any of the four categories, especially since neither effort nor priority estimates are exact.

Again the solution is obvious. For this blog post I will just show the resulting picture and elaborate on it in my next post:

Improved selection method

3 Comments »

RSS feed for comments on this post. TrackBack URI

  1. Social comments and analytics for this post…

    This post was mentioned on Twitter by mauritsrijk: Wrote blog post about selecting user stories: http://bit.ly/92ZHsJ. First in a series. Looking forward to feedback. #agile…

  2. Hi Maurits,

    Interesting technique. I am a bit confused though. When would you apply this technique? IMHO in scrum the priority is based on business value. One of the variables of business value is effort. Therefor the order of the backlog already includes the effort stuff.
    So I do think this could help product owner to determine the priority (the order of the backlog), is that also what you mean?

    Also how would this help multiple product owners (which is an anti-pattern in itself, assuming one backlog) with different stakes?

    “What happens with the low priority stories? Is it really ok to just ignore those stories, based on their priority?”

    Since prioritization is based on business value we can safely ignore these.

  3. Hi Maurits,

    This sounds interesting! I can’t wait for the rest🙂

    Best regards,

    Arnaud


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.
Entries and comments feeds.

%d bloggers like this: