The waterfall is a project management approach where a project is
completed in distinct stages and moved step by step toward ultimate
release to consumers. You make a big plan upfront and then execute
linearly, hoping there won’t be any changes in the plan.
When you take traditional project management and apply it to software
development, you get Waterfall. As such, no one invented Waterfall -
instead, we gave it a name once we realized there are other ways to
manage projects (like agile project management
Waterfall was the first software development methodology, inherited
from the manufacturing and construction industry, where you can't
afford to iterate (after you've built a bridge, you can't go back to
"improve" the foundation). But because the software is prone to
frequent change and issues, Waterfall is not the best solution.
Waterfall is often mentioned alongside Agile and stands in contrast to
it. The main difference is that Waterfall doesn't react ...