Tuesday, March 28, 2017

Cost of delay

Cost of Delay
The Cost of Delay (COD) is a term used in Software Product Development. It is a method used to understand and communicate the effect of time against predicted outcomes. It provides a method to determine and evaluate the cost of not finalizing something now, by choosing to do it at a later stage.

In software development, COD can be used to determine the cost of delaying the deployment of one feature over another. Taking things a step further, if a company has multiple projects running at the same time, using COD calculations can help them prioritize which projects should be done first.

A business is there to make money and it’s logical to prioritise what you do in such a way that you maximize profits. Calculating your COD allows you to do exactly that. Let’s use a very simple example. If you’re developing a product that will add a value of $10,000 per week to your company, you will lose that amount for every week that you’re late. A delay of 6 weeks will cost the company $60,000. If you knew that up front, it would make sense to, for example, hire an additional programmer for $15,000 if that means the product will be released on time. You would still be $45,000 better off.

Quantifying the Cost of Delay

Suppose we have 3 features that we can include in our software, each with a different value and each having a different development time. We can use Cost of Delay to make the best financial decision on what to do first.

Step 1 – Determine Feature Values

Put the features, their values and their development time in a table as shown below.

Dev Time
Value / week
CD3
Feature 1
2 Weeks
$3,000
1.5
Feature 2
5 Weeks
$9,000
1.8
Feature 3
7 Weeks
$12,000
1.7

The CD3 value is calculated by dividing the value in thousands by the dev time, e.g. 3 / 2 = 1.5

Step 2 – Compare Scenarios

Let’s compare different scenarios, showing the return on investment we would get using different priorities.

1.  Do all features at the same time.
2.  Complete feature 1 (shortest time) first, followed by 2 and 3.
3.  Complete feature 3 (highest value) first, followed by 2 and 1.
4.  Complete feature 2 (highest CD3) first, followed by 3 and 1.





Step 3 – Calculate Financial Impact

Scenario 1 - All
If we do all features at the same time, we get $24,000 of value on our 15th week.  For the 14 weeks we are developing, we incur the COD of all features = $24,000.

Total COD incurred = $336,000.

Scenario 2 - Time
In this scenario, we will get our first ROI of $3,000 from week 3, $9,000 from week 8 and $12,000 from week 15. For the first 2 weeks, our COD is for all 3 features = $24,000 x 2 = $48,000. From week 3 to 7 (5 weeks), our COD is Feature 2 + Feature 3 = $21,000 x 5 = $105,000. From week 8 to 14 (7 weeks), our COD is Feature 3 = $12,000 x 7 = $84,000.

Total COD incurred = $48,000 + $105,000 + $84,000 = $237,000.

Scenario 3 – Value
In this scenario, we will get our first ROI of $12,000 from week 8, $9,000 from week 13 and $3,000 from week 15. For the first 7 weeks, our COD is for all 3 features = $24,000 x 7 = $168,000. From week 8 to 12 (5 weeks), our COD is Feature 2 + Feature 1 = $12,000 x 5 = $60,000. From week 13 to 14 (2 weeks), our COD is Feature 1 = $3,000 x 2 = $6,000.

Total COD incurred $168,000 + $60,000 + $6,000 = $234,000.

Scenario 4 – CD3
In this scenario, we will get our first ROI of $9,000 from week 6, $12,000 from week 13 and $3,000 from week 15. For the first 5 weeks, our COD is for all 3 features = $24,000 x 5 = $120,000. From week 6 to 12 (7 weeks), our COD is Feature 1 + Feature 3 = $15,000 x 7 = $105,000. From week 13 to 14 (2 weeks), our COD is Feature 1 = $3,000 x 2 = $6,000.

Total COD incurred $120,000 + $105,000 + $6,000 = $231,000.

Summary

The results from the different scenarios described above is surprising. One would have expected that doing the feature with the most value first is the best financial decision, but this is not the case. Prioritizing based on the CD3 value of a feature gives the best results. Although the difference is small in the example used, it may not be the case for your product.

Priority Method
Cost of Delay
All
$336,000
Time
$237,000
Value
$234,000
CD3
$231,000

When next time you prioritize your software development portfolio, don’t try to maximize the value delivered. Limit your Cost of Delay, or at least do the calculation before making a decision.

It’s not only about prioritisation!

COD gives you a number of other benefits that will help when you develop new or improved products:

Improved Decision Making
COD will make the economic trade-offs in your projects and processes visible. Every creative process has these trade-off decisions, where we often need feedback about what will work and what won’t fast. There are many trade-offs at the development system level where Cost of Delay can be used as an effective tool for managing workflow. COD can help you calculate suitable levels of capacity application, managing queue lengths, testing WIP limits, or improving batch sizes at different points.

Optimal Prioritisation
You can deliver more total value by using CD3. As there is never an infinite capacity to develop everything, the demand has to be controlled somehow. You have to decide where to start, determine the order in which things should be done and, importantly, when you have to change direction and move on to something else that is more urgent and valuable. If you understand Cost of Delay, you can stop using gut-feel to prioritise and be very specific in determining what to do next. Having a definitive method available will also allow you to communicate your reasoning and the logic behind it clearly.

Change the focus
By using Cost of Delay, you will change the focus from cost and efficiency, to value and speed. It doesn’t help expecting people not to estimate things like delivery dates or cost, if you are not able to give them a practical alternative that will actually help. By defining things in terms of Cost of Delay, you will achieve more of what you want and less of what won’t help you.

Posted on Tuesday, March 28, 2017 by Henrico Dolfing

0 comments: