Kaskádový model životního cyklu: výhody a nevýhody
Kaskádový model životního cyklu: výhody a nevýhody

Video: Kaskádový model životního cyklu: výhody a nevýhody

Video: Kaskádový model životního cyklu: výhody a nevýhody
Video: HMMC TV 58/2022 | Jak se měří (nejen) emise 2024, Duben
Anonim

Vývoj softwaru není jako tradiční inženýrství. Metodika je to, co vývojáři používají k rozdělení práce do zvládnutelných progresivních kroků, kde každý může být přezkoumán, aby byla zajištěna kvalita. Týmy spolupracují se zákazníkem na vytvoření hotového softwarového produktu pomocí jedné z metodik vývoje softwaru. Nejoblíbenější z nich jsou spirálový, vodopádový nebo kaskádový model (Waterfall); RAD neboli rychlý vývoj aplikací; Agilní model neboli flexibilní a iterativní nebo iterativní model. Existují další možnosti, ale v tomto článku se budeme zabývat pouze vodopádem nebo vodopádem, modelem životního cyklu projektu a také prozkoumáme jeho výhody a nevýhody. Okamžitě si vysvětlíme, že jde o sled určitých kroků a jeho zvláštností je nová etapanení možné, dokud nebude dokončen předchozí.

Historie modelu vodopádu

Metodika ve své tradiční podobě ponechává malý prostor pro neočekávané změny. Pokud vývojový tým není příliš velký a projekty jsou předvídatelné, pak Waterfall může zajistit, že budou dokončeny včas.

lidé se hádají
lidé se hádají

Model vývoje vodopádu existuje již více než čtyřicet let. Poprvé byl popsán v roce 1970 v článku W. Royce jako jeden z vůbec prvních oficiálních modelů pro proces vývoje. Byl popisován jako neúčinný pro velké projekty vývoje softwaru, ale nikdo jeho použití pro malé nezakázal. Téměř půl století poté, co byla objevena, je tato technika stále aktuální v dnešním obchodním světě. Nazývá se zastaralým modelem a je s ním zacházeno s určitým pohrdáním kvůli zastaralosti tradičního přístupu k řízení projektů. Ale Waterfall je užitečný a předvídatelný přístup, pokud jsou požadavky pevné, dobře zdokumentované a jasné, pokud je technologie srozumitelná a pokud dokončení projektu nezabere mnoho času. V tomto případě může vodopádový model životního cyklu softwaru poskytnout předvídatelnější konečný výsledek pro daný rozpočet, časový rámec a rozsah práce.

Jaký je model vývoje vodopádu?

Model Waterfall lze popsat jako lineární, sekvenční vývoj projektu, kde procesy neustále přecházejí od požadavků k návrhu, poté k implementaci, ověření a nasazení snáslednou průběžnou údržbou. Předpokládá se, že kaskádový model životního cyklu byl vytvořen díky W. Royce, ačkoli on sám používal iterativní model vývoje.

Výhody modelu životního cyklu vodopádu
Výhody modelu životního cyklu vodopádu

Hlavní důraz při vývoji Waterfall je kladen na plánování, načasování, cíle, rozpočty a nakonec na implementaci celého systému jako jediné entity. Hlavními výhodami jsou zde jednoduché dopředné a zpětné plánování a implementace.

Popis modelu vodopádu

Ve srovnání s jinými metodikami se Waterfall zaměřuje více než ostatní na jasný, definovaný soubor kroků. Původní model se skládal z pěti stupňů. Často je popisován jako lineární sekvenční model životního cyklu. To znamená, že sleduje jednoduchou fázovou strukturu, kde výsledky každé fáze postupují do další úrovně vývoje. Hlavní kroky jsou:

  1. Shromážděte požadavky a vytvořte dokumentaci.
  2. Návrh a systémové inženýrství.
  3. Implementace.
  4. Testování a nasazení.
  5. Podpora.
Výhody modelu životního cyklu vodopádu
Výhody modelu životního cyklu vodopádu

Týmy musí dokončit celý krok, než přejdou k dalšímu, takže pokud něco není připraveno do určitého termínu, bude to okamžitě patrné. Na rozdíl od Six Sigma nebo Scrumu také Waterfall nevyžaduje certifikaci nebo speciální školení pro projektové manažery nebo zaměstnance.

Kritika vodopádového modelu

Kaskádový model životního cyklu informačního systémubyl kritizován za svou nepružnost po dokončení každého kroku a za zdržování schopnosti klienta poskytnout zpětnou vazbu. Tato metodika však může dobře fungovat pro menší projekty s omezeným rozpočtem. Často je přirovnávána k jedné známé metodice životního cyklu projektu, PRINCE2, kterou vytvořila vláda Spojeného království. Tato metodika se stále používá ve veřejném sektoru. Jedním z klíčových rozdílů mezi PRINCE2 a modelem životního cyklu vodopádu je to, že model životního cyklu vodopádu vyžaduje písemný popis všech požadavků od samého počátku, protože může být obtížné je později revidovat. Než se začne s tvorbou jakéhokoli kódu, musí být přesně definován a fixován. To je důležitá výhoda modelu životního cyklu vodopádu.

Výhody a nevýhody vodopádového modelu

Protože technická dokumentace je nezbytnou součástí počáteční fáze vývoje požadavků, znamená to, že všichni členové týmu jasně rozumí cílům projektu. Noví vývojáři mohou rychle pochopit pravidla tvorby kódu a bez problémů se zapojit do pracovního postupu. Při použití vodopádového modelu životního cyklu informačního systému nebo projektu zajišťuje postupné provádění disciplínu.

nevýhody modelu životního cyklu vodopádu
nevýhody modelu životního cyklu vodopádu

Každý krok má dobře definovaný výchozí bod a závěr, takže je snadné sledovat pokrok. To pomáhá snížit jakoukoli odchylku realizace projektu od dohodnutých časových plánů.rámec. V tomto modelu, na rozdíl od spirály, je software uvažován jako celek. Proto za předpokladu splnění všech požadavků funguje efektivněji. Pokud budeme pokračovat ve srovnávání kaskádových a spirálových modelů životního cyklu, můžeme dojít k závěru, že první je univerzálnější a lze jej použít v různých oblastech.

Fáze vyjednávání požadavků

Další výhodou vodopádového modelu životního cyklu je to, že náklady lze odhadnout s poměrně vysokou mírou přesnosti, jakmile budou identifikovány všechny požadavky. Pokud je aplikován, znamená to, že v první fázi jsou všechny testovací scénáře již podrobně popsány ve funkční specifikaci, což zjednodušuje a zprůhledňuje proces testování. A ještě před vývojem softwaru je design propracován do detailů, díky čemuž jsou potřeby a výsledek každému jasné.

model životního cyklu vodopádu
model životního cyklu vodopádu

Jednou ze skvělých věcí na používání Waterfall je usilovat o konečný produkt, neboli konečný výsledek, od samého začátku. Proto se týmy musí vyvarovat odchýlení od cíle. U menších projektů, kde je záměr poměrně jasný, tento krok upozorní tým na celkový cíl od začátku, čímž se sníží šance, že se ztratíte v detailech, když se projekt posouvá kupředu. Waterfallův přístup je velmi metodický, a proto zdůrazňuje důležitost jasné komunikace v každé fázi. V procesu vývoje softwaru se v každém novém kroku objevují noví lidé. Proto je důležité se o to snažitdokumentovat informace během životního cyklu projektu.

Nevýhody modelu životního cyklu vodopádu

Potenciální vývojové problémy lze prozkoumat a vyřešit během fáze návrhu. Zpracovávají se také alternativní řešení a vybírají se ta optimální. To vše se děje před zahájením projektu. Mnoho organizací oceňuje pozornost věnovanou dokumentaci hned od začátku, protože to také znamená, že s konečným produktem by nemělo dojít k žádnému překvapení. Ale v praxi je zřídka možné obejít se bez provádění změn. Pro klienty je často obtížné porozumět vlastním potřebám z hlediska funkční specifikace až ve fázi požadavků. To znamená, že mohou změnit názor, jakmile uvidí konečný produkt. Takový problém je těžko řešitelný. Někdy musí být aplikace téměř kompletně přepracována.

Nedostatek flexibility v modelu vodopádu

Další nevýhodou kaskádového modelu životního cyklu IP (nebo projektu) je potenciální nedostatek flexibility. Mohou vyvstat otázky k přizpůsobení se novým změnám nebo změnám požadavků, ke kterým došlo od počátečních konzultací.

používá se kaskádový model životního cyklu
používá se kaskádový model životního cyklu

Úpravy způsobené obchodními plány nebo tržními vlivy nemusely být při plánování zohledněny. Dokončení projektů také může trvat déle ve srovnání s použitím iterativní metodologie, jako je Agile.

Důležité body při používání metodologie vodopádu

Pokud jde o vývoj Waterfall, je velmi důležité, aby vývojáři softwaru mohli efektivně vést a radit klientům, aby mohli později vyřešit všechny tyto problémy. Často nejkritičtějším aspektem aplikace vodopádového modelu životního cyklu je to, že zákazníci ve skutečnosti nevědí, co skutečně chtějí. V mnoha případech ke skutečné obousměrné interakci mezi vývojáři a klienty nedochází, dokud klient neuvidí model v akci.

kaskádový model životního cyklu informačního systému
kaskádový model životního cyklu informačního systému

Pro srovnání, v agilním vývoji může klient vidět fragmenty pracovního kódu, které byly vytvořeny během práce na projektu. Na rozdíl od Scrumu, který rozděluje projekty do samostatných sprintů, se Waterfall vždy zaměřuje na konečný cíl. Pokud má váš tým konkrétní cíl s jasným datem ukončení, Waterfall eliminuje riziko zmeškání termínu, když na něm pracujete. Na základě těchto kladů a záporů je vývoj Waterfall obecně doporučován pro projekty, které se pravděpodobně během životnosti projektu nezmění nebo potřebují nový vývoj.

Doporučuje: