Jakie są zalety i wady modelu przyrostowego?

Główną zaletą modelu przyrostowego jest szybsza i szybsza generacja działającej aplikacji podczas cyklu życia oprogramowania; jednak mogą występować problemy z fazami iteracji, jeśli nie są one poprawnie implementowane, a koszty rozwoju mogą być wysokie. Aby odnieść sukces, cały system musi być jasno zdefiniowany, zanim zostanie podzielony i opracowany w modelach przyrostowych.

Elastyczność modelu przyrostowego ułatwia testowanie i debugowanie w porównaniu do innych modeli programistycznych. Ponieważ w trakcie każdej fazy przyrostowej wprowadzane są tylko niewielkie zmiany, programiści mogą rygorystycznie kierować i testować każdy moduł w większej aplikacji. Ale jeśli źle zaimplementowane, każda faza iteracji będzie sztywna i nie będzie właściwie nakładać się z innymi fazami powodując problemy, które nie były widoczne we wcześniejszych iteracjach.

Model przyrostowy drastycznie obniża początkowe koszty dostawy, ale wynikające z tego koszty opracowania całej aplikacji będą prawdopodobnie wyższe w porównaniu do modelu kaskadowego. Podział oprogramowania na mniejsze moduły pozwala programistom stale otrzymywać informacje zwrotne dotyczące każdej wersji produktu. Model ten można zastosować tylko do dużych projektów programistycznych, ponieważ niepraktyczne byłoby rozbicie małej aplikacji na mniejsze moduły.

Model przyrostowy jest również nazywany iteracyjnym modelem cyklu życia, ponieważ każdy moduł musi przejść przez fazę wymagań, projektowania, implementacji i testowania. Jest używany głównie wtedy, gdy aplikacja musi zostać uruchomiona tak szybko, jak to możliwe.