Where incremental delivery is about delivering smaller portions at a time. iterative development is about developing through repeated cycles, often adding more functionality to the product. multiple iterations repeat or returned to create a fully integrated product. For example, a website may allow payment by credit or debit cards, but the ability to pay by PayPal may be added within a later iteration. The concept of iteration is embedded throughout the lifecycle down to the lowest level of development time boxes. Agile Project Management is pragmatic about change, using iteration to embrace change and produce a better solution.
It recognizes that change is inevitable, and therefore enough design is done up front to create the foundations for development to start. This allows for more detail to emerge and the solution to evolve throughout development within the constraints of time and cost changes actively encouraged by a feedback to evolve the most appropriate solution. Constant review ensures that what is being developed is what the business really needs.