The right way to manage a large problem is to periodically examine your processes, figure out the flaws and bottlenecks, and fix them.
While I agree with that, there's a lot of merit in packaging up some common sense and nest practice (that few people in fact do, sense not being all that common). It gives developers an excuse to do the right thing. It also gives them a buzzword to offer up to management.
Nobody fails because they honestly believe that a single "waterfall" cycle is the correct way to run a large project.
I disagree. If you honestly believe that a single "waterfall" cycle is the correct way to run a large project, then you will fail. The last time I saw it happen up close was late 1990s, but it's most likely happening somewhere right now.