Unfortunately, large bloated IT consulting companies have no interest in developing software cost-effectively. Now it's important to understand that I'm not proposing that there is some sort of conspiracy to make software development projects cost more than they have to. It doesn't have to be that IT consulting companies are purposefully developing methodologies that make software development take longer. It is simply, in the absence of transparency and competition, the companies that cost the most are the ones that will be the most successful. Basically, they'll make the most money.

Again, I'm all for companies making more money. I don't actually have the chip on my shoulder about so-called corporate greed that so many people appear to have. All I'm saying is that in the absence of competition (or more importantly – diversity) and transparency there is no incentive for big bloated IT consulting companies to convert to more efficient methodologies for software development.

Now this is a worrisome state for the IT industry to be in. But it's even more worrisome when you consider that for a young generation of talented (or rather intelligent) recruits into IT consulting these methodologies are the only way of developing software they have ever know! Born and breed in an environment which sells the approach through a bastardised definition of risk management and fear mongering about software failures, these talented graduates learn to justify and sell the approach until they actually start to believe their own PowerPoint presentations. All the while, by ignoring the alternatives, they are paying only lip service to risk management and quality by turning these processes into a disconnected series of reviews and lists.

Real software quality, at reduced costs, is available to organisations through improved software processes. Monolithic software processes which require feats of great prediction and hundred's of hours of b-grade consulting to implement are not the answer. These process success only in ensuring value is delivered as late in the process as possible.