If you find this site useful, you should try my 55-page eBook here

Measuring Business Value in Agile Software Development

by Kelly Waters

Email This Post Print This Post Save As PDF
Measuring Business Value in Agile Software DevelopmentOne of the elusive things in software development is how to measure business value.

For some projects it's fairly obvious. Maybe there's a clear revenue benefit. Or a tangible cost saving. Or a very specific risk avoidance.

But what about on BAU (Business As Usual)? How do you get some indication of the business value a team is delivering on bug fixes, enhancements and new features delivered as BAU?

One way - which is fairly rudimentary but an interesting indicator - is to use Fibonacci points in a similar way to Velocity.

The idea here is to put Fibonacci points for business value on every item (or User Story) on the Product Backlog, as well as the points for each feature's size.

The development team provides the points for size, because only they are qualified to judge how big a feature is, relative to another. Whereas the business value points should come from the Product Owner/Business Owner.

In the same way as the development team estimates in points, the Product Owner decides on a business value for each item, relative to each other. The key thing here is that the estimated business value is relative, i.e. a feature with a business value of 2 is twice as valuable as a feature worth 1; a 5 is worth 5 times a 1, etc.

When you have Fibonacci points for size and for business value, you can also do some interesting things to help prioritise your backlog. Firstly, if you have a long Product Backlog that is difficult to get your head around, you can simply enter business values individually and then sort the list by business value as a starter for ten.

Secondly, you could do a calculation of business value divided by size to give the feature a priority score. It's a bit rudimentary, but it's a simple way to sort the backlog so the high value/low effort features come out at the top.

You can also plot this on a scatter graph, which you can set up to put the high value/low effort features on the top right, and the high effort/low value features on the bottom left. This is a useful concept and can help to facilitate a good discussion about priorities.

But aside of prioritisation, putting a business value in points against every item on the backlog allows you to calculate 'Business Velocity', i.e. how much business value (in points) was delivered in each Sprint. You could plot this on a 'burn-up chart', showing the cumulative business value delivered over time - hopefully with an accelerating trend line.

And you could use this graph to see whether the business value for each sprint is increasing or decreasing. Naturally a team's business value might slow down as a product matures in its commercial lifecycle. Maybe in this case it's time to think about switching resources onto other priorities? Maybe it coincides with a lower velocity? Or maybe it's time to think of some more valuable ideas?

Either way, I guess it could be interesting to see...

Kelly.

P.S. Click one of the icons below to join the growing community of people keeping up with this blog by RSS or by email...
keep up by rss feedkeep up by email


Photo by eyeore2710

  • Digg
  • del.icio.us
  • StumbleUpon
  • Yahoo! Buzz
  • Technorati
  • Facebook
  • TwitThis
  • MySpace
  • LinkedIn
  • Live
  • Google
  • Reddit
  • Sphinn
  • Propeller
  • Slashdot
  • Netvibes

5 comments:

  1. Andy Jeffries said...

    Sounds like a conversation we had last week. We're trying this out for the next release of our software so fingers crossed it will help prioritise the backlog. I'll let you know how it went for us.

  2. Jeremy Kriegel said...

    Sounds interesting, as long as the criteria for prioritization are clear.

  3. Ed Darnell said...

    A step in the right direction but I can't help feeling these approaches are too development centric (the tail wagging the dog as one of my former CEOs would have put it).

    For me the starting point should be the business model and analytics around it.

    If the development team fully understand the business model and its associated analytics then they are in a good position to advise on how technical improvements should be made to maximise cost/benefit.

    In reality I think many businesses lack the analytics so there is only the cost half of the equation.

  4. Victor Velasquez said...

    Yes, I agree that everything starts in the Business Model and finding the right criteria for the prioritization is a challenging task.

  5. Brandon said...

    Agree with Jeremy. We've attempted such a BV scheme in the past, but found it difficult for the business to identify the criteria for value determination. We've since moved to another system identified here: http://blog.projectconnections.com/project_practitioners/2008/09/story-prioritiz.html

    What have been your experiences with using the Fibonacci sequence?

10 Key Principles of Agile Development

How To Implement Scrum in 10 Easy Steps

User Stories - Agile Requirements

Agile Project Management

10 Key Principles of Agile

How To Implement Scrum

Most Read

Agile Leadership

Agile Requirements - User Stories

Agile Estimating

Agile Testing

Agile Project Management

Lean Software Development

Agile Teams