Agile – How to measure the value of your software

agilescrum

One of the principles of agile is that you should measure working software:

Working software is the primary measure of progress – 12 principles of Agile

The thing is, while I can measure my software in terms of stories done, bugs squashed or the volume of defect reports decreasing, I'm stuck on how to measure the value of my software.

If I use Mike Cohn as an example and his helping SalesForce.com deliver 500% more value to it's customers compared to the previous year* – how do I measure that increase? How do I measure where I am right now?

Other metrics he uses are the number of features and the number of features per developer. This is something I could work out if my backlog was in good order and the stories were cut up by 'feature', but we're just starting out with Agile, so I need some way of working out what the value is we deliver now, then use a similar metric in say, six months, to see if we've increased our output.

I've heard about measuring value of software by an uptick in revenue, or an increase in customer satisfaction (how would you measure that though?) but those increases could be attributed to anything in the company (sales, accounting, support) and not directly to the work my department is doing.

So, how do you guys measure the value of your software and how did you start?

* Succeeding With Agile – Mike Cohn

Best Answer

Here is how I define value in general (even outside software development)

You define what value is.

If the value is the amount of money earned/saved thanks to the software, the value will be:

Revenue - Cost of development = Value

or

Saved Operational Costs - Cost of development = Value

It can be turn over. Do you know what cost the turnover in your company? If you can measure it, 50% reduction of your turnover thanks to agile will allow you to calculate value it provided:

50% Turnover reduction = (Turnover Cost / 2) = Value

Value can anything that matters to you, the guy that define what is the value.

That's why value is evaluated in points in agile. Points are compared to story points to help you prioritize value. Because you must compare (business) value (arbitrary) with story points value (cost).

Related Topic