SDLC – Iterativní model

Reklama

V Iterativním modelu iterativní proces začíná jednoduchou implementací malé sady softwarových požadavků a iterativně vylepšuje vyvíjející se verze, dokud není kompletní systém implementován a připraven k nasazení.

Iterativní model životního cyklu se nesnaží začít s úplnou specifikací požadavků. Místo toho vývoj začíná specifikací a implementací pouze části softwaru, která je poté přezkoumána za účelem identifikace dalších požadavků. Tento proces se pak opakuje a na konci každé iterace modelu vzniká nová verze softwaru.

Iterativní model – návrh

Iterativní proces začíná jednoduchou implementací podmnožiny požadavků na software a iterativně vylepšuje vyvíjené verze, dokud není implementován celý systém. V každé iteraci se provádějí úpravy návrhu a přidávají se nové funkční schopnosti. Základní myšlenkou této metody je vyvíjet systém prostřednictvím opakovaných cyklů (iterativně) a po menších částech (inkrementálně).

Následující obrázek je znázorněním iterativního a inkrementálního modelu –

Iterativní a inkrementální vývoj je kombinací iterativního návrhu neboli iterativní metody a inkrementálního modelu sestavování pro vývoj. „Během vývoje softwaru může současně probíhat více než jedna iterace vývojového cyklu softwaru.“ Tento proces lze popsat jako přístup „evolučního získávání“ nebo „přírůstkového sestavování“.“

V tomto inkrementálním modelu je celý požadavek rozdělen do různých sestavení. Během každé iterace prochází vývojový modul fázemi požadavků, návrhu, implementace a testování. Každá následující verze modulu přidává funkce k předchozí verzi. Proces pokračuje, dokud není kompletní systém připraven podle požadavku.

Klíčem k úspěšnému použití iterativního životního cyklu vývoje softwaru je důsledné ověřování požadavků a ověřovací & testování každé verze softwaru podle těchto požadavků v rámci každého cyklu modelu. Jak se software vyvíjí v dalších cyklech, musí se testy opakovat a rozšiřovat, aby se ověřila každá verze softwaru.

Iterativní model – aplikace

Stejně jako ostatní modely SDLC má i iterativní a inkrementální vývoj některé specifické aplikace v softwarovém průmyslu. Tento model se nejčastěji používá v následujících scénářích –

  • Požadavky na celý systém jsou jasně definovány a pochopeny.

  • Hlavní požadavky musí být definovány; některé funkce nebo požadovaná vylepšení se však mohou časem vyvíjet.

  • Existuje časové omezení pro trh.

  • Při práci na projektu se používá nová technologie, kterou se vývojový tým učí.

  • Zdroje s potřebnými dovednostmi nejsou k dispozici a plánuje se jejich využití na základě smlouvy pro určité iterace.

  • Existují některé vysoce rizikové funkce a cíle, které se mohou v budoucnu změnit.

Iterativní model – výhody a nevýhody

Výhodou tohoto modelu je, že existuje funkční model systému ve velmi rané fázi vývoje, což usnadňuje hledání funkčních nebo návrhových chyb. Nalezení problémů v rané fázi vývoje umožňuje přijmout nápravná opatření v rámci omezeného rozpočtu.

Nevýhodou u tohoto modelu SDLC je, že je použitelný pouze pro velké a objemné projekty vývoje softwaru. Je to proto, že je obtížné rozdělit malý softwarový systém na další malé provozuschopné přírůstky/moduly.

Výhody iterativního a inkrementálního modelu SDLC jsou následující –

  • Některé funkční funkce lze vyvinout rychle a na počátku životního cyklu.

  • Výsledky se získávají brzy a pravidelně.

  • Lze plánovat paralelní vývoj.

  • Postup lze měřit.

  • Méně nákladné je měnit rozsah/požadavky.

  • Testování a ladění během menší iterace je snadné.

  • Rizika jsou identifikována a řešena během iterace; a každá iterace je snadno zvládnutelným milníkem.

  • Snadnější řízení rizik – vysoce riziková část je provedena jako první.

  • Každým přírůstkem je dodán funkční produkt.

  • Problémy, výzvy a rizika zjištěná z každého inkrementu lze využít/aplikovat na další inkrement.

  • Lepší analýza rizik.

  • Podporuje měnící se požadavky.

  • Počáteční provozní doba je kratší.

  • Vhodnější pro velké a kritické projekty.

  • V průběhu životního cyklu se software vyrábí brzy, což usnadňuje hodnocení a zpětnou vazbu od zákazníka.

Nevýhody iterativního a inkrementálního modelu SDLC jsou následující –

  • Může být zapotřebí více zdrojů.

  • Náklady na změnu jsou sice nižší, ale není příliš vhodný pro měnící se požadavky.

  • Vyžaduje větší pozornost vedení.

  • Mohou vzniknout problémy s architekturou nebo návrhem systému, protože ne všechny požadavky jsou shromážděny na začátku celého životního cyklu.

  • Definice přírůstků může vyžadovat definici celého systému.

  • Není vhodná pro menší projekty.

  • Složitost řízení je větší.

  • Nemusí být znám konec projektu, což představuje riziko.

  • Pro analýzu rizik jsou zapotřebí vysoce kvalifikované zdroje.

  • Postup projektu je velmi závislý na fázi analýzy rizik.

Reklama

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.