October 9, 2009

Halting Development to Save Money: Good Idea or Not?

CIO magazine published this article, Keeping the Cash: IT Leaders Can Slash Costs which recommends steps to reduce IT costs. One of them caught our attention:

“Halt the development of certain projects temporarily or permanently. If any of these projects are outsourced and your paying the outsourcer for time and materials, stopping the project, even for just a few months, can immediately save you money.”

This may make sense in some cases, but I can’t think of too many. From the perspective of working on high priority mission-critical projects, stopping randomly in the middle of development makes no sense because there is as much or more to lose as there is to gain. Firstly, If you’re working with great people, they will not sit around and wait for you – they will move on to other projects where their skills are useful. Outsourcers can’t afford to leave top talent stagnant for months at a time. Secondly, when you’re ready to get going again, you’ll have new knowledge transfer and ramp-up time issues to get through and this will push out the end date more than just the several months you chose to postpone work.

Here’s a better way to proceed. Rather than stopping and starting, look at your project and focus on delivering value as quickly as possible. It’s pretty well-accepted that many features of a large IT application are not going to be used and not all features have the same value to the organization. Divide up your features, prioritize each feature, then implement the work in small steps and have the project stakeholders evaluate the results at the end of each small step. Be willing to change priorities to match the organization’s goals. This is classic Agile development at work. At some point, you’re going to conclude that you have enough of the project done to meet critical needs and you can stop development and deliver something useful, rather than stopping development with little or nothing to show for your investment to date. It makes a lot of sense for a lot of reasons to keep development teams running smartly towards useful goals unless there is a significant mitigating factor. To get the most from your partners and your investment don’t let your project run on autopilot until a crisis occurs. That’s one way to avoid having to halt all development mid-stream, before you have something to show for your hard work and hard cash.