27 Sep Is “Waterfall” a Dirty Word in Project Management?
Waterfall is a lovely ideal — but changes happen, and some things don’t work out in application as well as they did on paper.
Only project managers like waterfall. That’s a common comment you’ll hear among software developers. Another is that waterfall not only doesn’t work today, but it didn’t work when Dr. Winston W. Royce supposedly articulated it back in 1970. (And there’s some dispute whether Royce was seriously advocating the method or not.)
Before we get too far down this path, let’s back up the truck and take a look at this project management method.
What is Waterfall?
Waterfall’s roots are in manufacturing and construction industries. Picture a construction project: A client says “I need a building,” then a team captures the client’s requirements and takes that to a design team that develop blueprints that go to the builders and physical construction gets underway. Each stage must be complete before the next begins.
And that’s how waterfall got its name: the action flows downhill from level to level, like a waterfall cascading from one pool to the next. The water never flows back uphill and it doesn’t move to the next pool until the one above is full.
Now apply that method to software development. The project flows from capturing the system requirements, to analysis, to design, etc. Each stage is separate, sequential, documented, and approved.
Risks in Waterfall
It’s a lovely ideal—but as we all know, changes happen, and some things don’t work out in application as well as they did on paper. We also know that some clients can’t picture what they want or need until they actually see it. That’s an expensive risk in the waterfall method: if you get to the end and need to make a change, the entire project may have to be torn down, or a major compromise accepted.
Royce himself said this method “is risky and invites failure” for those same reasons.
Agile allows for changes and continuous improvement at any point in the process.
What’s the Alternative?
Many software developers prefer the agile methodology to waterfall. This approach is team-based, as opposed to management-based, and emphasizes the rapid delivery of small components of a project over delivery of the completed whole. Agile allows for changes and continuous improvement at any point in the process. And the fast, constant delivery produces momentum and a high perception of value in clients’ eyes.
The Pros of Waterfall
But waterfall has its good points, too.
- The emphasis on documentation is reassuring for some. It also means no knowledge is lost if team members change.
- Progress is easily measured because the scope is defined in advance.
- The final product is based on a carefully considered design, with less likelihood of having a piecemeal effect.
- Speed is not key to success.
Still wondering what approach is right for you? Talk to our project management experts today.