Model iteracyjno-przyrostowy to sposób prowadzenia projektu, w którym produkt powstaje stopniowo, w kolejnych cyklach pracy. Każdy cykl, czyli iteracja, kończy się dostarczeniem działającego fragmentu systemu, nazywanego przyrostem.
W praktyce oznacza to, że zespół nie czeka z pokazaniem efektów do końca całego projektu. Zamiast tego regularnie dostarcza kolejne części aplikacji, testuje je i zbiera informacje zwrotne od klienta lub użytkowników.
Najważniejsze cechy
- praca odbywa się w powtarzalnych cyklach,
- po każdej iteracji powstaje działający fragment produktu,
- wymagania mogą być doprecyzowywane w trakcie projektu,
- łatwiej reagować na zmiany,
- ryzyko błędnych założeń jest mniejsze niż w modelu wodospadowym.
Związek z Agile
Metodyki zwinne, czyli Agile, są oparte właśnie na podejściu iteracyjno-przyrostowym. Przykładowo w Scrumie praca jest organizowana w sprintach, a po każdym sprincie powinien powstać użyteczny przyrost produktu.
Przykład
Zespół tworzy aplikację sklepu internetowego:
- W pierwszej iteracji powstaje katalog produktów.
- W drugiej dodawany jest koszyk.
- W trzeciej pojawia się logowanie użytkownika.
- W kolejnej integruje się płatności.
Po każdej iteracji aplikacja ma coraz większą funkcjonalność, ale już wcześniejsze wersje mogą być testowane i oceniane.