The waterfall model is flow-based, where we pass each phase once and cannot return to it. The most prominent disadvantage of this approach is that requirements cannot be changed. Whereas in the iterative process model, software development life cycles are implemented in which initial development begins with initial requirements. Then features are added to the base product as iterations continue until a final system is created.