Agilné vs V metodológie (model)
V softvérovom priemysle sa dnes používa množstvo rôznych metodológií vývoja softvéru. V Methodologies (V-Model) je rozšírením metódy Waterfall (ktorá je jednou z prvých metód). Hlavným zameraním V-Modelu je dať rovnakú váhu kódovaniu a testovaniu. Agilný model je novší model vývoja softvéru, ktorý bol zavedený na riešenie nedostatkov zistených v existujúcich modeloch. Hlavným zameraním Agile je čo najskoršie začlenenie testovania a veľmi skoré uvoľnenie pracovnej verzie produktu rozdelením systému na veľmi malé a spravovateľné čiastkové časti.
Čo je to metodológia V (model)?
V Methodologies (V-Model) je model vývoja softvéru. Považuje sa za rozšírenie typického modelu vývoja softvéru Waterfall. V-Model používa rovnaké vzťahy medzi fázami definovanými v modeli vodopádu. Ale namiesto lineárneho klesania (ako model Waterfall) V-Model zostúpi diagonálne a potom sa presunie späť nahor (po fáze kódovania), čím vytvorí tvar písmena V. Tento tvar V je vytvorený, aby ukázal vzťah medzi každou fázou vývoj/návrh a zodpovedajúca testovacia fáza. Čas a úroveň abstrakcie sú reprezentované horizontálnou a vertikálnou osou.
Testovanie (vzostupná cesta, pravá strana V) sa vykonáva na overenie, zatiaľ čo zodpovedajúce fázy návrhu (zostupná cesta, ľavá strana V) sa používajú na overenie. V modeli V sa kódovaniu a testovaniu prikladá rovnaká váha. V-Model odporúča vytvoriť testovací dokument spolu s dizajnovými dokumentmi/kódom. Napríklad dokumenty o testovaní integrácie by sa mali napísať pri dokumentovaní návrhu na vysokej úrovni a testy jednotky by sa mali zdokumentovať počas prípravy podrobného plánu návrhu. To znamená, že plán implementácie pre každý test by mal byť vytvorený vopred, nie čakať na dokončenie vývoja, aby ho bolo možné odovzdať testovaciemu tímu.
Čo je Agile?
Agile je najnovšia metodológia vývoja softvéru založená na agilnom manifeste. Toto bolo vyvinuté na vyriešenie niektorých nedostatkov v tradičných metodológiách vývoja softvéru V-Model a Waterfall. Agilné metódy sú založené na vysokej priorite účasti zákazníka na začiatku vývojového cyklu. Odporúča začleniť testovanie zákazníkom včas a čo najčastejšie. Testovanie sa vykonáva v každom bode, keď je k dispozícii stabilná verzia. Základ Agile je založený na spustení testovania od začiatku projektu a pokračovaní v priebehu až do konca projektu. Kľúčovými hodnotami Agile je „kvalita je zodpovednosťou tímu“, čo zdôrazňuje, že za kvalitu softvéru je zodpovedný celý tím (nielen testovací tím). Ďalším dôležitým aspektom Agile je rozdelenie softvéru na menšie spravovateľné časti a ich veľmi rýchle dodanie zákazníkovi. Dodanie funkčného produktu je nanajvýš dôležité. Potom tím pokračuje v zdokonaľovaní softvéru a priebežnom poskytovaní každého hlavného kroku. Dosahuje sa to veľmi krátkymi uvoľňovacími cyklami nazývanými sprinty a získavaním spätnej väzby na zlepšenie na konci každého cyklu. Prispievatelia bez veľkej interakcie tímu, ako sú vývojári a testeri v predchádzajúcich metódach, teraz spolupracujú v rámci agilného modelu.
Aký je rozdiel medzi agilnou a V metodológiou (model)?
Agilný model prináša pracovnú verziu produktu veľmi skoro v porovnaní s V-Modelom. Keďže sa postupne dodáva viac funkcií, zákazník si môže niektoré z výhod uvedomiť už čoskoro. Čas testovacieho cyklu Agile je relatívne krátky v porovnaní s V-Modelom, pretože testovanie prebieha súbežne s vývojom. Agile je proaktívny model (kvôli jeho veľmi krátkym cyklom) v porovnaní s oveľa reaktívnejším V-Modelom. V-Model je veľmi tuhý a relatívne menej flexibilný ako Agile model. Kvôli všetkým týmto výhodám je momentálne Agile uprednostňovaný pred V-modelom.