The Government Accountability Office found that 95 major systems have exceeded their original budgets by a total of $295 billion, bringing their total cost to $1.6 trillion, and are delivered almost two years late on average.Hopping over to the GAO site itself, I also find this:
GAO found that 63 percent of the programs had changed requirements once system development began, and also experienced significant program cost increases....[R]oughly half the programs that provided GAO data experienced more than a 25 percent increase in the expected lines of software code since starting their respective system development programs.To be honest, my first reaction to this was, "Hey, that's not as bad as I would have guessed!" Based on my own meager private sector experience, I would have figured that 100% of the programs would change requirements after development began. And given the size and scope of the systems we're talking about, a 26% increase in cost and a 25% increase in lines of code actually seems kind of low to me.
But cynical first impressions aside, the chart on the right tells the real story: DoD sloppiness is getting worse and worse. The Pentagon is bulking up with ever more systems that are ever more complex, and cost overruns and schedule delays are getting bigger and longer. There aren't enough people to oversee all these systems, so the number of outside consultants has increased and oversight has been spread thin. And of course, the worst part is that this growth is not only producing overruns and delays, but it's unnecessary in the first place. The Pentagon has treated 9/11 as a gigantic treasure chest to justify acquisition of lots of shiny new systems designed to fight Russians and Chinese, and an awful lot of them are close to useless for the kind of war we're more likely to fight in the next few decades.
On the bright side, lots of military contractors are making lots of money, and they're building their fancy new systems in lots and lots and lots of different congressional districts. So who's complaining?