Agilní vývoj software
Optimální metodika pro řízení vašeho projektu
Co jsou Agilní metodiky vývoje software?
Agilní metodiky vývoje software používají tzv. agilní přístup, kdy je celý proces vývoje rozdělený do několika cyklů, tzv. sprintů. Toto rozdělení procesu vývoje umožňuje vývojářům pružně reagovat na změny zadání. Práce se rozvrhuje vždy na jednotlivý cyklus a jednotlivé výstupy se průběžně testují a ověřují s uživateli.
Zpětná vazba od uživatelů je nepřetržitě implementována do vývoje, jde tedy o dynamický proces.
Sprint
Náplň sprintu
Náplň určí vývojářský tým zároveň s klientem
Doba sprintu
Obvyklá doba trvá jeden týden až jeden měsíc
Vyhodnocení sprintu
Vyhodnocuje se plán versus skutečnost průběhu vývoje
Výhody agilního vývoje
1
Velmi rychlý start samotného vývoje
2
Detailní návrh jednotlivých částí softwaru probíhá v průběhu vývoje jeho první verze.
3
První verze softwaru je minimalistická, a proto se dostává k zákazníkovi co nejdříve
4
Zákazník se průběžně účastní vývoje prostřednictvím schůzek a rozhovorů, může tak ovlivnit zadání i vývoj
5
Software je možné testovat již v průběhu vývoje s koncovými uživateli a přizpůsobovat tak produkt jejich potřebám
6
Financování vývoje je průběžné, vývoj tedy jednorázově nezatěžuje cash-flow klienta
7
Intenzitu vývoje je možné přizpůsobit aktuálním finančním možnostem zákazníka
Srovnání agilního vývoje s modelem Vodopádu
Agilní vývoj | Vodopádový model | |
---|---|---|
Pracovní proces | Agilní řízení rozděluje proces vývoje aplikace do několika sprintů. Každý sprint musí být dokončen a schválen klientem, než začíná další. | Existuje jen jeden vývojový cyklus. Projekt není rozdělený do několika sprintů. Vývojáři získají požadavky od klienta a začnou pracovat na celém projektu.
Na začátku vývoje vzniká několik fází projektu, z nichž poslední fáze je zcela detailní. |
Flexibilita | V agilním řízení lze jednoduše měnit požadavky na vývoj aplikace na základě zpětné vazby od uživatelů. | Model Vodopádu obtížněji reflektuje průběžné změnové požadavky zákazníka. |
Testování | Aplikace se testuje po každém sprintu. To může pomoci vyladit každou část projektu tak, aby vyhovoval potřebám zákazníka. | Aplikace se testuje až po dokončení celé fáze vývoje. Nezískáme tedy průběžnou zpětnou vazbu od uživatelů. |
Angažovanost zákazníků | Klient je zapojen po celou dobu vývoje produktu. | Klient je zapojen pouze v raných fázích projektu a po dokončení finální aplikace. |
Agilní vývoj |
---|
Pracovní proces Agilní řízení rozděluje proces vývoje aplikace do několika sprintů. Každý sprint musí být dokončen a schválen klientem, než začíná další. |
Flexibilita V agilním řízení lze jednoduše měnit požadavky na vývoj aplikace na základě zpětné vazby od uživatelů. |
Testování Aplikace se testuje po každém sprintu. To může pomoci vyladit každou část projektu tak, aby vyhovoval potřebám zákazníka. |
Angažovanost zákazníků Klient je zapojen po celou dobu vývoje produktu. |
Vodopádový model |
---|
Pracovní proces Existuje jen jeden vývojový cyklus. Projekt není rozdělený do několika sprintů. Vývojáři získají požadavky od klienta a začnou pracovat na celém projektu.
Na začátku vývoje vzniká několik fází projektu, z nichž poslední fáze je zcela detailní. |
Flexibilita Model Vodopádu obtížněji reflektuje průběžné změnové požadavky zákazníka. |
Testování Aplikace se testuje až po dokončení celé fáze vývoje. Nezískáme tedy průběžnou zpětnou vazbu od uživatelů. |
Angažovanost zákazníků Klient je zapojen pouze v raných fázích projektu a po dokončení finální aplikace. |