Study: Bad requirements-gathering hurts IT projects
Obviously nobody is surprised by the results... actually, I lie, I am surprised by the results.
The number of failures is huge. They provide some ideas, but I have two pretty solid explanations myself.
1. IT is voodoo magic
2. People still don't know what they want so projects become too big.
The second one is quite self-explanatory, but still widely misunderstood. Undertakings of more than 2000 man hours (that's 3 people for 4 months) are never as simple as we'd like to believe. They're also too big for most software.
Software is organic, it needs growth time. It's also really easy to spend way too much time on software. The big industry fallacy is that good software can be developed over several months (or sometimes years) and then just magically work at the end of the day.
It can't but very few people in power understand this. Until we start "growing" software with smaller deliverables (call it Agile or Iterative if you want), but until it's "organic", then our software is going to suck. Until we recognize the organic limitations, we're going to keep budgeting software projects like we would a bridge and this too is going to fail spectacularly.
Of course, YMMV.