Waterfall
Waterfall projects are broken down into linear steps; each step relies on the previous one being completed before starting the next. The first step is to gather user requirements, followed by designing and planning, and then finally software development. Once testing and deployment are done, we enter the maintenance and operation mode.
Figure 12.2: Waterfall process
This type of delivery methodology has a long history outside of software development, especially in traditional engineering. When building a bridge or a factory, the project plan lays out the requirement of all the people, resources, tasks, and timelines for the overall project of work. The Waterfall approach can be described as a plan-driven engineering process where success is measured according to how well development is able to keep up with the plan.
By following a plan, individual variations are minimized. In the industrial world, this helps make both delivery and cost predictable...