It's only for not well understood problems that it fails so completely. In software, in my opinion, fewer problems are well understood at the moment, and so we tend to avoid waterfall.
However, if someone wanted me to set up a webserver to serve static files that don't change? I'm 99% sure I could set up nginx on a virtual machine "fully waterfall" and have no problems.
The same is true for many other real life "waterfall" processes, like buildings, or bridges.
Or if the problem is that well-understood, there's an off-the-shelf solution so good nobody seriously thinks about re-implementing it.
> However, if someone wanted me to set up a webserver to serve static files that don't change? I'm 99% sure I could set up nginx on a virtual machine "fully waterfall" and have no problems.
Exactly. That's barely software development. That's using fully-commoditized components in well-understood fashions to achieve a well-understood goal.
You could script that. I'm sure some places have.
Source: was a commercial interiors contractor before I was a software engineer.
The most well defined piece of software I know of, sel4, had a full machine checkable formal proof up front, and they still ran into issues during implementation that required them to go back and modify the spec.
Our industry being rather foolish, people read the paper and thought, 'hey, this sounds like a good idea!'
It's not my fault that it appears you've been using the term wrong. Waterfall with feedback ceases to be waterfall.
I don't think it really has anything to do with gravity.
That is a very strange thing to say considering that the method comes from "real" branches of engineering (mech, civil, electrical, etc) and you can simply look around you at your built environment to know that it has delivered an awful lot of real, actual stuff. They didn't agile up the building you're sitting in or the roads that lead to it or power station that makes it work or any of the things in it.
Waterfall as far as software is concerned has its origins in a paper from Winston W. Royce and not an unguided adoption of mech/civil/electrical engineering principles: http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/wate...
Do you know where I'm sitting?
I mean... there's no correct application of waterfall. The whole waterfall process comes from a paper as an example of how not to run an engineering project.