The waterfall model is a sequential approach to software development where each phase must be completed before the next can begin, from requirements definition to maintenance. It is best for small, short projects with clearly defined and fixed requirements. While it has clear phases and limits change and risk, the waterfall model is inflexible and not suitable for large projects with uncertainty. It can take a long time to deliver a working system and does not support iteration or partial development.
Related topics: