The team's development process defines who is doing what, when, and how.
In the waterfall model, software activities proceeded through a sequence of steps, and requirements were "fixed" early.
In the spiral model, the first steps were taken to a more risk-driven and incremental approach to development.
The iterative approach, a hybrid of the waterfall and spiral models, decouples the lifecycle phases from the software activities that take place in each phase.
The iterative model is a more robust model and provides for successive refinement of the requirements over time.