Read time: 5 minutes
My last article on business predictability asserts that we in software development are at a disadvantage relative to sales and manufacturing because we can’t define our output in terms of value that the business understands. Would you believe me if I told you that there is a way that you can quantify the financial value of software increments below the release level and above the feature level? Stick with me.
I came up with a way after thinking really hard about how to assign “Cost of Delay (CoD)” to software. I will explain CoD in more detail in a future article but suffice it to say that it’s basically the profit or income lost by delaying a software release by one month. CoD was introduced in Don Reinertsen’s classic book, The Principles of Product Development Flow: Second Generation Lean Product Development. It’s a great book that models software development as a series of queues. Don’s keynote at the 2013 Construx Software Leadership on CoD changed my life.
The concept is brilliant. However, I wasn’t aware of anyone who had implemented it. And most clients hadn’t heard of it. How could this be? Reinertsen showed that prioritizing software projects by what he called “Weighted Shortest Job First (WSJF)”, which is CoD divided by cycle time, optimizes software development ROI. It was free money! Then I realized the implementation challenges.
The first challenge was the inability to associate income with software increments smaller than the large releases still being put out with waterfall planning, despite Agile development. Planning still starts with a mound of features of questionable value targeted for a release.
I turned the problem on its head. Let’s define the smallest increment of software that can generate revenue or reduce operational expenses as an "Agile Investment." Such an increment has a CoD by definition. Everything we do in software development should directly or indirectly provide a positive return on software. That’s the reason that software development organizations exist. “Software Value” now means income, which the business understands.
For example, a software release to enter a new market would be an “Investment.” Or a modular increment of software that could be priced and released separately would be an “Investment.” The term "Investment" was used to remind software development that they don't do software projects. They provide value that returns profit for the business.
The Agile Investment planning hierarchy looks like this:
Author: Bob Webber
Related Content
#product-management
#agile
#cost-of-delay
#investment-planning
#softwaredevelopment
#ProductInnovationProcess