Inkrementální model v SDLC: využití, výhody a nevýhody

Co je přírůstkový model?

Inkrementální model je proces vývoje softwaru, kde jsou požadavky rozděleny do několika samostatných modulů cyklu vývoje softwaru. Přírůstkový vývoj se provádí v krocích od návrhu analýzy, implementace, testování/ověření až po údržbu.

Inkrementální model v SDLC

Každá iterace prochází přes požadavky, fáze návrhu, kódování a testování. A každé následující vydání systému přidává funkci k předchozí verzi, dokud nebudou implementovány všechny navržené funkce.

Inkrementální model v SDLC

Systém je uveden do výroby při dodání prvního přírůstku. První přírůstek je často základním produktem, kde se řeší základní požadavky a v dalších přírůstcích se přidávají doplňkové funkce. Jakmile je základní produkt analyzován klientem, existuje plán vývoje pro další přírůstek.

Charakteristika přírůstkového modulu zahrnuje

  • Vývoj systému je rozdělen do mnoha mini vývojových projektů
  • Dílčí systémy jsou postupně sestavovány tak, aby vytvořily konečný celkový systém
  • Požadavek nejvyšší priority je řešen jako první
  • Jakmile je požadavek vyvinut, požadavek na tento přírůstek je zmrazen
Přírůstkové fáze Činnosti prováděné v postupných fázích
Analýza požadavků
  • Shromažďují se požadavky a specifikace softwaru
Design
  • Během této fáze jsou navrženy některé špičkové funkce
Kód
  • Během této fáze se provádí kódování softwaru
test
  • Jakmile je systém nasazen, prochází fází testování

Kdy použít přírůstkové modely?

  • Požadavky na systém jsou jasně srozumitelné
  • Když vznikne požadavek na předčasné uvedení produktu na trh
  • Kdy softwarové inženýrství tým není příliš dobře kvalifikovaný nebo vyškolený
  • Když se jedná o vysoce rizikové funkce a cíle
  • Tato metodika se více používá pro společnosti založené na webových aplikacích a produktech

Výhody a nevýhody inkrementálního modelu

Výhody Nevýhody
Software bude generován rychle během životního cyklu softwaru Vyžaduje to dobré plánování
Je flexibilní a méně nákladné měnit požadavky a rozsah Problémy mohou způsobit kvůli architektuře systému jako takové, že ne všechny požadavky shromážděné předem pro celý životní cyklus softwaru
V průběhu vývojových fází lze provádět změny Každá iterační fáze je rigidní a vzájemně se nepřekrývají
Tento model je ve srovnání s ostatními levnější Odstranění problému v jedné jednotce vyžaduje opravu ve všech jednotkách a zabere spoustu času
Zákazník může reagovat na každou budovu
Chyby lze snadno identifikovat