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: The PSYCHOLOGY Of AQUASCAPING 2024, Marec
Anonim

Vývoj softvéru nie je ako tradičné inžinierstvo. Metodológia je to, čo vývojári používajú na rozdelenie práce do zvládnuteľných progresívnych krokov, z ktorých každý môže byť prehodnotený, aby sa zabezpečila kvalita. Tímy spolupracujú so zákazníkom na vytvorení hotového softvérového produktu pomocou jednej z metodík vývoja softvéru. Najpopulárnejšie z nich sú špirála, vodopád alebo kaskádový model (Waterfall); RAD alebo rýchly vývoj aplikácií; Agile Model, alebo flexibilný a iteračný, alebo iteračný model. Existujú aj iné možnosti, ale v tomto článku sa budeme zaoberať iba vodopádom alebo vodopádom, modelom životného cyklu projektu a tiež preskúmame jeho výhody a nevýhody. Hneď si vysvetlime, že ide o postupnosť určitých krokov a jeho zvláštnosťou je nová etapanie je možné, kým nebude dokončená predchádzajúca.

História modelu vodopádu

Metodológia vo svojej tradičnej podobe ponecháva malý priestor na neočakávané zmeny. Ak vývojový tím nie je príliš veľký a projekty sú predvídateľné, Waterfall môže zabezpečiť, že budú dokončené včas.

ľudia sa hádajú
ľudia sa hádajú

Model vývoja vodopádu existuje už viac ako štyridsať rokov. Prvýkrát bol opísaný v roku 1970 v článku W. Roycea ako jeden z úplne prvých oficiálnych modelov procesu vývoja. Bol označovaný za neúčinný pre veľké projekty vývoja softvéru, ale nikto nezakázal jeho použitie pre malé. Takmer pol storočia po svojom objavení je táto technika stále aktuálna v dnešnom obchodnom svete. Nazýva sa zastaraný model a zaobchádza sa s ním s určitým pohŕdaním kvôli zastaranosti tradičného prístupu riadenia projektov. Ale Waterfall je užitočný a predvídateľný prístup, ak sú požiadavky pevné, dobre zdokumentované a jasné, ak je technológia zrozumiteľná a keď dokončenie projektu nezaberie veľa času. V tomto prípade môže vodopádový model životného cyklu softvéru poskytnúť predvídateľnejší konečný výsledok pre daný rozpočet, časový rámec a rozsah práce.

Aký je model vývoja vodopádu?

Model Waterfall možno opísať ako lineárny, sekvenčný vývoj projektu, kde procesy neustále prechádzajú od požiadaviek k návrhu, potom k implementácii, overeniu a nasadeniu snásledná priebežná údržba. Predpokladá sa, že kaskádový model životného cyklu bol vytvorený vďaka W. Royceovi, hoci on sám používal iteračný vývojový model.

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

Pri vývoji Waterfall sa hlavný dôraz kladie na plánovanie, načasovanie, ciele, rozpočty a v konečnom dôsledku na implementáciu celého systému ako jedného celku. Hlavnými výhodami sú jednoduché dopredné a spätné plánovanie a implementácia.

Popis modelu vodopádu

V porovnaní s inými metodikami sa Waterfall zameriava viac ako iné na jasný, definovaný súbor krokov. Pôvodný model pozostával z piatich stupňov. Často sa popisuje ako lineárny sekvenčný model životného cyklu. To znamená, že sleduje jednoduchú fázovú štruktúru, kde výsledky každej fázy postupujú do ďalšej úrovne vývoja. Hlavné kroky sú:

  1. Zhromažďujte požiadavky a vytvorte dokumentáciu.
  2. Dizajn a systémové inžinierstvo.
  3. Implementácia.
  4. Testovanie a nasadenie.
  5. Podpora.
Výhody modelu životného cyklu vodopádu
Výhody modelu životného cyklu vodopádu

Tímy musia dokončiť celý krok predtým, ako prejdú na ďalší, takže ak niečo nie je pripravené do určitého termínu, bude to okamžite viditeľné. Na rozdiel od Six Sigma alebo Scrumu tiež Waterfall nevyžaduje certifikáciu alebo špeciálne školenie pre projektových manažérov alebo zamestnancov.

Kritika modelu vodopádu

Kaskádový model životného cyklu informačného systémubol kritizovaný za svoju nepružnosť po dokončení každého kroku a za oneskorenie schopnosti klienta poskytnúť spätnú väzbu. Táto metodika však môže dobre fungovať pre menšie projekty s obmedzeným rozpočtom. Často sa porovnáva s jednou známou metodikou životného cyklu projektu, PRINCE2, ktorú vytvorila vláda Spojeného kráľovstva. Táto metodika sa stále používa vo verejnom sektore. Jedným z kľúčových rozdielov medzi PRINCE2 a modelom životného cyklu vodopádu je to, že model životného cyklu vodopádu vyžaduje písomný popis všetkých požiadaviek od začiatku, pretože môže byť ťažké ich neskôr revidovať. Pred začatím tvorby akéhokoľvek kódu musia byť presne definované a zafixované. Toto je dôležitá výhoda modelu životného cyklu vodopádu.

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

Pretože technická dokumentácia je nevyhnutnou súčasťou počiatočnej fázy vývoja požiadaviek, znamená to, že všetci členovia tímu jasne rozumejú cieľom projektu. Noví vývojári môžu rýchlo pochopiť pravidlá tvorby kódu a bez problémov sa zapojiť do pracovného postupu. Pri použití vodopádového modelu životného cyklu informačného systému alebo projektu fázová realizácia zabezpečuje disciplínu.

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

Každý krok má dobre definovaný počiatočný bod a záver, čo uľahčuje sledovanie pokroku. Pomáha to znížiť akúkoľvek odchýlku realizácie projektu od dohodnutých časových plánov.rámec. V tomto modeli, na rozdiel od špirály, je softvér považovaný za celok. Preto za predpokladu, že sú splnené všetky požiadavky, funguje efektívnejšie. Ak budeme pokračovať v porovnávaní kaskádových a špirálových modelov životného cyklu, môžeme dospieť k záveru, že prvý je univerzálnejší a dá sa použiť v rôznych oblastiach.

Fáza rokovania o požiadavkách

Ďalšou výhodou vodopádového modelu životného cyklu je to, že po identifikácii všetkých požiadaviek možno náklady odhadnúť s pomerne vysokou presnosťou. Ak je aplikovaný, znamená to, že v prvej fáze sú už všetky testovacie scenáre podrobne popísané vo funkčnej špecifikácii, čím je proces testovania jednoduchší a transparentnejší. A ešte pred vývojom softvéru je dizajn do detailov vypracovaný, vďaka čomu sú potreby a výsledok každému jasné.

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

Jednou zo skvelých vecí na používaní Waterfall je snažiť sa o konečný produkt alebo konečný výsledok od samého začiatku. Preto sa tímy musia vyhýbať odklonu od cieľa. Pri menších projektoch, kde je zámer pomerne jasný, tento krok upozorní tím na celkový cieľ od začiatku, čím sa zníži šanca, že sa stratíte v detailoch, keď projekt napreduje. Waterfallov prístup je veľmi metodický, a preto zdôrazňuje dôležitosť jasnej komunikácie v každej fáze. V procese vývoja softvéru sa v každom novom kroku objavujú noví ľudia. Preto je dôležité snažiť sadokumentovať informácie počas celého životného cyklu projektu.

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

Potenciálne vývojové problémy je možné preskúmať a vyriešiť vo fáze návrhu. Vypracúvajú sa aj alternatívne riešenia a vyberajú sa optimálne. To všetko sa deje pred začiatkom projektu. Mnohé organizácie oceňujú pozornosť, ktorá sa dokumentácii venuje hneď od začiatku, pretože to tiež znamená, že s konečným produktom by nemali byť žiadne prekvapenia. Ale v praxi je zriedka možné urobiť bez vykonania zmien. Pre klientov je často ťažké pochopiť ich vlastné potreby z hľadiska funkčnej špecifikácie až vo fáze požiadaviek. To znamená, že môžu zmeniť názor, keď uvidia konečný produkt. Takýto problém je ťažko riešiteľný. Niekedy musí byť aplikácia takmer úplne prepracovaná.

Nedostatok flexibility v modeli vodopádu

Ďalšou nevýhodou kaskádového modelu životného cyklu IP (alebo projektu) je potenciálny nedostatok flexibility. Môžu sa objaviť otázky na prispôsobenie sa novým zmenám alebo zmenám požiadaviek, ktoré nastali od úvodných konzultácií.

používa sa kaskádový model životného cyklu
používa sa kaskádový model životného cyklu

Úpravy spôsobené obchodnými plánmi alebo vplyvom trhu nemuseli byť zohľadnené pri plánovaní. Okrem toho môže dokončenie projektov trvať dlhšie v porovnaní s použitím iteračnej metodológie, ako je napríklad Agile.

Dôležité body pri použití vodopádovej metodiky

Pokiaľ ide o vývoj Waterfall, je veľmi dôležité, aby vývojári softvéru mohli efektívne viesť a radiť klientom, aby mohli neskôr obísť všetky tieto problémy. Najkritickejším aspektom aplikácie vodopádového modelu životného cyklu je často to, že zákazníci v skutočnosti nevedia, čo skutočne chcú. V mnohých prípadoch k skutočnej obojsmernej interakcii medzi vývojármi a klientmi nedochádza, kým klient neuvidí model v akcii.

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

Pre porovnanie, pri agilnom vývoji môže klient vidieť fragmenty pracovného kódu, ktoré vznikli počas práce na projekte. Na rozdiel od Scrumu, ktorý rozdeľuje projekty do samostatných šprintov, sa Waterfall vždy zameriava na konečný cieľ. Ak má váš tím konkrétny cieľ s jasným dátumom ukončenia, Waterfall eliminuje riziko zmeškania termínu, keď na ňom pracujete. Na základe týchto kladov a záporov sa vývoj Waterfall vo všeobecnosti odporúča pre projekty, ktoré sa pravdepodobne nezmenia alebo potrebujú nový vývoj počas životnosti projektu.

Odporúča: