“And still I persist in wondering whether folly must always be our nemesis.” — Edgar Pangborn
Large information technology (IT) projects rarely get into trouble for purely technical reasons. Instead, it’s human factors that almost always lead to delays, cost overruns, or outright failures. In over a decade of reviewing troubled or failed IT projects, we have found a handful of truisms that you must absolutely accept if you are going to bring that next IT project in on-time and within budget. These include:
- Quality costs time and money, but ultimately saves both. It staggers belief — but is nonetheless true — that large organizations will spends millions, tens of millions, even hundreds of millions of dollars on large IT projects, yet will seek to short-cut or minimize their software quality assurance practices. Most such organizations would probably see a noticeable improvement in their IT development track record if they doubled (or tripled) their SQA staff and cut their development staff in half.
- Talent matters. Organizations will spend vast sums of money on their CEOs, will scour the top business schools for their managers, and will run a brutal Darwinist effort to find the top salespeople — yet they treat software architects, developers, and quality engineers as interchangeable components. Indeed, most corporate and government IT policies and practices are almost guaranteed to drive off the best and the brightest.
- More is not better — at least, not at first. Bruce Henderson, a top software architect, is fond of saying, “Start out stupid and work up from there.” Put a bit more elegantly: the only way to create a large, complex system that works is to evolve it from a small, simple system that works. And yet most large IT projects take a “big bang” approach, seeking to implement the entire range of functionality at once.
- Champions — and change management — are essential. Many large IT projects founder due to the lack of an empowered champion within the organization, as well as a deliberate effort at organizational change management to adapt to the new system (and resulting business processes). Indeed, we have seen major projects fail because the existing champion left the organization or was otherwise relieved of responsibility.
These may seem like simple or obvious points, yet time and again we have seen major IT projects fail due to one or more of them. We’d like to help ensure that yours does not.