How to Invest Less and Make More From Your Software Projects

As the saying goes, “Cash is king.” It doesn’t matter how good your P&L or balance sheet looks or how good the business case for your project is, if you don’t have enough cash every month to pay the bills, you won’t stay in business.

With the economy tightening, then, companies are desperately trying to cut costs in order to stay cash flow positive. In IT the major cost is salary, so cutting costs means cutting people. Nobody likes that.

Fortunately, there’s a simple way to reduce expenses and increase returns on a software project: incremental releases.

A Typical Big Bang Release

Let’s look at a example. Our project will spend $1m (mostly salaries) for a year of development starting in January 2009, release at the end of that year, and is projected to make $2m over its first year in production. We’ll simplify this model and assume that expenses and returns will be distributed evenly over their respective years. We’ll ignore ramp up time and we won’t discount future cash.

The result is a cumulative cash flow chart that looks like this:

We spend money linearly until we’ve spent our whole million. Then, we release the software and start making money linearly until we make the projected two million. We break even in June of 2010, 18 months in, and we see a 100% ROI.

Variation 1: Incremental Releases

Now, let’s keep all those same assumptions and make one small change. Instead of building the software and releasing it all at once, let’s break it into four equal size feature sets. Every three months we’ll build and release one until the whole product is released. To simplify things again, we’ll assume that each feature set is equally valuable and will account for a quarter of the expected return. Since we can start seeing returns as soon as we release a feature set, our cumulative cash flow now looks like this:

With this arrangement, we only need to invest $375k in the project rather than $1m. We break even in February 2010, 14 months in. With an investment of $375k for $1.75m in returns ($2.75m in revenue less the same $1m in expenses as the previous example) we see a 467% ROI over two years.

Variation 2: Prioritizing Releases by Value

For most projects, however, value isn’t distributed evenly across the features. Usually an 80/20 rule applies and some features are much more valuable than others. For our hypothetical project, let’s assume that we can divide up our features to get a pretty typical distribution where Feature Set A accounts for 50% of the value, Feature Set B for 30%, Feature Set C for 12%, and Feature Set D for 8%. Now, our cumulative cash flow looks like this:

When we deliver feature increments by value, we have to invest only $250k for a $2.1m return, or 844% ROI. We break even in November 2009, before the original project was even going to release!

Variation 3: Cutting Out Low-Value Releases

Once we’ve prioritized our features by value, we can go one step further. We can decide that some features aren’t worth the investment. With their long 15 and 19 month waits to break even, feature sets C and D may not be worth it. Over the two years we’re considering, those features have a negative ROI. Let’s cut them out of the project and have the team do something else more valuable. Here’s our cumulative cash flow now:

This variation generates less revenue, but only spends half as much. The return is $2.15m on a $250k investment, or 860% ROI. It breaks even in August 2009, tying up the cash for less time and freeing the team to do something else more valuable. In fact, if we can assign the team to two feature sets on another project as valuable as A and B were on this project, our two year cumulative cash flow looks like this:

Now we see $3.5m returned on our $250k investment, an ROI of 1400%. We break even in October 2009, still three months before the original plan would have had us starting to see a return at all. Simply by rearranging our work by value and releasing incrementally, we’ve dramatically improved our cash flow situation while increasing our revenue. And we didn’t have to lay anyone off to do it. Going into a tight economy, odds are that this is exactly what your business needs.

(In case you’re interested, here are the details behind the charts: big-bang-vs-incremental-releases-cash-flow.xls.)

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Richard Lawrence

Is co-owner of Agile For All. He trains and coaches people to collaborate more effectively with other people to solve complex, meaningful problems. He draws on a diverse background in software development, engineering, anthropology, and political science. Richard is a Scrum Alliance Certified Enterprise Coach and Certified Scrum Trainer, as well as a certified trainer of the accelerated learning method, Training from the Back of the Room. His book, Behavior-Driven Development with Cucumber, was published by Addison-Wesley in 2019 (for more information, visit bddwithcucumber.com).

Connect

richard.lawrence@agileforall.com Twitter LinkedIn Subscribe to RSS Feed Blog posts by this author