Incremental vs iterative delivery

Iterative delivery and incremental delivery are both approaches used in software development and project management.

Incremental delivery, as the name suggests, involves providing smaller portions at a time. In the context of creating a painting, this approach entails constructing individual sections with precision. The entire concept is well-detailed and is conveyed in sequential phases, one segment at a time. This approach aligns with the waterfall model, where each stage is completed before the next one begins. While incremental delivery does consider client or user feedback to influence subsequent phases, it does not prioritize feedback extensively because the entire consent is already well defined.

On the other hand, iterative delivery approach is feedback driven. We do not know the whole picture, so in first step we make a picture with not much detail and then iteratively add to it, based in the feedback received. According to Jeff Patton

Iterating allows you to move from vague idea to realization
“iterating” builds a rough version, validates it, then slowly builds up quality

It is not an iteration if you only do it once

In each iteration, a subset of the total functionality is developed. The system becomes more complete with each iteration. The scope of the project can change between iterations. It allows for adaptations based on feedback and evolving requirements. Iterative delivery helps in identifying and mitigating risks early in the project by addressing issues incrementally.

Both iterative and incremental delivery approaches aim to create and improve a software product over time. The key difference lies in their approach to how work is divided and how feedback and change are incorporated:

  • Iterative delivery focuses on repeating cycles of development, with flexibility in scope and a strong emphasis on feedback. It’s suitable for projects where requirements are likely to change.
  • Incremental delivery divides the project into phases, adding new features or capabilities in each phase. The scope is usually fixed for each phase, making it suitable for projects with well-defined requirements that don’t frequently change.

Reference: https://itsadeliverything.com/revisiting-the-iterative-incremental-mona-lisa

Tayyaba Sharif