Iterativní přístup k vývoji software, výhody, nevýhody.

Z Na státnice zvesela!

Přejít na: navigace, hledání

U současných rozsáhlých systémů není již možné na začátku přesně definovat celý problém, navrhnout řešení, provést implementaci a až na závěr - kdy je spotřebována většina přidělených finančních prostředků - celý systém otestovat.

Iterativní přístup spočívá v rozdělení celého projektu na čtyři fáze, z nichž každá se skládá z několika iterací se životním cyklem typu “vodopád”. Výsledkem každé této iterace je spustitelná verze. Příkladem iterativního přístupu je model Spirála nebo Průzkumný vývoj.

Každá iterace je miniprojekt (cca vodopád), jehož cílem je iterační release (neúplný produkt, ale úplná část). V souvislosti s iteračním vývojem je aplikován také evoluční (adaptivní) vývoj, ve kterém je zdůrazněna reakce na změnu požadavků (a její přizpůsobení) a inkrementální vývoj, ve kterém se postupně produkt kompletuje po inkrementech, které jsou výstupem jednotlivých iterací.

[editovat] Průběh iterace

  1. Plánování cíle iterace (funkčnost)
  2. Doplnění / zpřesnění požadavků
  3. Dotváření návrhu
  4. Implementace funkčností
  5. Integrace přírůstku a otestování
  6. Nasazení do provozu


[editovat] Výhody iterativního přístupu

  • Možnost objektivního posouzení stavu projektu
  • Rovnoměrnější pracovní vytížení vývojářského týmu. Přímo souvisí s předchozím bodem. Projekt je koncipován tak, aby co nejdříve přinášel konkrétní výsledky. Při rozdělení na iterace je možné snáze sledovat průběh projektu a dodržování stanovených termínů pro jednotlivé iterace.
  • Možnost testování meziverzí
  • Spolupráce s uživateli v průběhu celého projektu
  • Včasné rozpoznání nesrovnalostí mezi požadavky, návrhem a implementací. Tato výhoda přímo vyplývá z předchozích dvou bodů. Díky tomu, že uživatelé mají možnost kontrolovat a hodnotit dílčí části systému, značně se omezuje riziko vysokých nákladů způsobených úpravami produktu v pozdní fázi vývoje.
  • Snazší zapracování změn požadavků