As 2013 begins it's last few weeks, we may be experiencing the beginning of the end of poorly managed software development projects. I'll bet, if we take a close look, we will see all the earmarks of yet another disaster in the making. And don't get me wrong, this isn't an advertisement for Agile; I'm not condemning waterfall (though you won't catch me using it ever again).
We live in an economy and in a world where organizations are challenged to do the same amount of work (frequently MORE work) with fewer people. Frankly, in the United States and Europe, if we don't quickly learn how to succeed with fewer people than we had a few years ago, we won't be able to compete in a growing technology labor market where labor costs are substantially lower.
We labor under an invalid premise that what works in the traditional factory setting, works in software application development. We have chosen to believe that building software is a defined process where we first identify the product requirements and the system requirements and then move forward to analyze, design, code, and (finally) test -- a method historically called the "waterfall" approach.