Just as the ‘abominable snowman’ never existed, and is merely used to frighten children from playing in the snow too long, “Waterfall” is just as nonexistent and is used by agile coaches as
propaganda scare tactics to frighten developers into buying into Agile, Lean, kanban, or whatever the flavor of the month is in project management.
Agilists constantly talk about ‘Waterfall’ in derisive terms, however we can get an idea what this mythical beast is like from the depictions of the Agilists.
- Waterfall requires absolute command and control
- Tasks are assigned
- Testing never happens until after the project is finished
- The customer is not involved until it’s too late
- Everything must be done in strict phases, the phases must be horizontal in nature (eg, no UI gets done until ALL of the database is done, etc), and once a phase is complete it will never be modified in the future
- A huge amount of upfront design is done before coding
Let’s look at the reality
- Royce’s paper does not even use the word “Waterfall” — hence there is no “Waterfall” method at all
- Royce never mentions assigning tasks
- Royce never mentions a command and control environment
- Royce specifically states that a hard phase approach as described in #5 above is unworkable, and shows quite clearly feedback mechanisms between the phases
- Royce never states that phases should be done horizontally
- Royce specifically states that the customer should be involved early, and testing should be done sooner rather than later
So the Agilists present a false dichotomy: Either you choose a (fictitious) Waterfall process that never existed, and make everyone slaves to documentation and management, or you choose their latest Agile scheme, and become slaves to daily Scrums, Poker Games, and begging the Customer to tell you what you should do.
The fact is, there are a lot more choices out there. There are many flavors of traditional management out there; choosing tasks can be done when there are documents and planning.
There are many ways of doing iterative traditional practices as well…see the “my approach” link above for more information.
The next time you hear someone promising you will fail with waterfall you can be sure of a few things:
- They don’t know what they are talking about
- They don’t believe in facts or logic
- They’ll say anything to get the sale
You can always respond smartly with: “Beware the Jabberwock!”