Waterfall method

The waterfall method uses a linear approach to software development. The project is divided into a sequence of tasks, and the highest level grouping is called phases.
 
This methodology is a formal process in which each phase comprises a list of detailed tasks with accompanying documentation and exit criteria. Thus, progress flows steadily towards completion (like a waterfall) through the phases: analysis, design, development, testing...
 
The goal of the Waterfall method is to eliminate most project risks through detailed investigation. Some of the advantages of the waterfall methodology are:
  • It is easy to manage as each phase has specific deliverables and a review process.
  • Improves resource utilization because tasks can be split to work in parallel or grouped to leverage resource skills.
  • Phases do not overlap.
  • Requirements are completed early in the project, allowing the team to define the full scope of the project, create a complete schedule, and design the overall application.
  • The status of the project is more easily measured based on a schedule.