Waterfall is more like: You want to go to Mars. You start to build the rocket. Managers that don’t know anything about building a rocket starts having meetings to tell the engineers who do know how to build a rocket what they should be doing. Management decides to launch the rocket based on a timeline that’s not based in reality. Management tries to launch the rocket based on the timeline instead of when it’s actually finished. Rocket explodes. Management blames the engineers.
The various methodologies don’t actually change what the engineers need to do. But some of them can be effective at requiring more effort from management to interfere in the project. Bad managers are lazy so they’re not going to write a card, so they can be somewhat effective in neutralizing micromanagement. I say somewhat, because bad management will eventually find a way to screw things up.
These are all accurate, except the first Waterfall one, who also doesn’t go to Mars.
Right. They design the whole rocket, spend years to build the rocket exactly according to the design doc, then the rocket explodes on the launchpad and they have to start all over.
That’s why testing comes before launching.
The build phase took too much time, you now have 1 day to test all the features and design elements of the rocket, because launch day is tomorrow. Good luck!
A software engineer was not involved in this if waterfall is painted positively.
I think the last time I heard an engineer unironically advocating for a waterfall IRL was about a decade ago and they were the one of the crab-in-a-bucket, I-refuse-to-learn-anything-new types—with that being the very obvious motivation for their push-back.
And here I am, running projects for the past 20 years mostly using agile, and still very much unconvinced about its supposed superiority over waterfall.
Waterfall only works if the programmer knows what the client needs. Usually it goes like:
- Client has a need
- Client describes what they think they need to a salesperson
- Salesperson describes to the product manager what an amazing deal they just made
- Product manager panics and tries to quickly specify the product they think sales just sold
- Developers write the program they think product manager is describing
- The program doesn’t think. It just does whatever buggy mess the programmer just wrote
- The client is disappointed, because the program doesn’t solve their needs
They forgot the bit where the Waterfall method blew through the budget and deadline about five times over.
Yeah, but waterfall requires that management knows what they want. It’s impossible!
This but unironically
I don’t think that they were being ironic…
Old man yells at cloud these damn Americans using “ironic” when they mean “sarcastic”
Sarcasm is a type of irony.