Данная модель разработки ПО является фундаментальной основой современного подхода к разработке ПО. Как следует из названия модели, ей свойственна определённая двойственность:
- - с точки зрения жизненного цикла модель является итерационной, т.к. подразумевает многократное повторение одних и тех же стадий;
- - с точки зрения развития продукта (приращения его полезных функций) модель является инкрементальной.
Ключевой особенностью данной модели является разбиение проекта на относительно небольшие промежутки (итерации), каждый из которых в общем случае может включать в себя все классические стадии, присущие водопадной и v-образной моделям .
Итогом итерации является приращение (инкремент) функциональности продукта, выраженное в промежуточном билде.
Длина итераций может меняться в зависимости от множества факторов, однако сам принцип многократного повторения позволяет гарантировать, что и тестирование и демонстрация продукта конечному заказчику, включая получение обратной связи, будет активно применяться с самого начала и на протяжении всего времени разработки проекта.
Во многих случаях допускается распараллеливание отдельных стадий внутри итерации и активная их доработка с целью устранения недостатков, обнаруженных на любой из предыдущих стадий.
Итерационная инкрементальная модель очень хорошо зарекомендовала себя на объёмных и сложных проектах, выполняемых большими командами на протяжении длительных сроков. Однако к основным недостаткам этой модели часто относят высокие накладные расходы, вызванные высокой «бюрократизированностью» и общей громоздкостью модели.