Agile (CS)

From Systems analysis Wiki
Jump to navigation Jump to search

Agilní metodologie vývoje — zastřešující termín pro celou řadu přístupů a praktik, založených na hodnotách Manifestu agilního vývoje softwaru a 12 principech, které tvoří jeho základ. Mezi agilní metodologie patří zejména extrémní programování, DSDM, Scrum, FDD, BDD a další.

Mezi „agilní" metody patří zejména XP, DSDM, Scrum, FDD, BDD.

Většina „agilních" metod je zaměřena na minimalizaci rizik rozdělením doby vývoje na iterace (periody) — časové úseky poměrně krátké délky. Iterace obvykle trvá dva až tři týdny, připomíná softwarový projekt v miniaturním měřítku a zahrnuje následující úkoly nezbytné pro dosažení malého přírůstku funkcionality: plánování, analýzu požadavků, projektování, programování, testování a dokumentování. Jedna iterace obvykle nestačí k vydání nové verze softwaru, předpokládá se však, že na konci iterace je nová verze softwaru připravena k vydání. Po skončení iterace tým přehodnotí priority vývoje.

„Agilní" metody se opírají o komunikaci tváří v tvář. Většina lidí pracuje v jedné kanceláři, která se někdy nazývá anglicky bullpen. V kanceláři pracuje přinejmenším „zákazník" (anglicky product owner) — zadavatel vývoje softwaru nebo zástupce zadavatele, který určuje požadavky na software. Roli „zákazníka" může plnit projektový manažer, business analytik nebo klient. V kanceláři mohou pracovat také testeři, návrháři rozhraní, techničtí spisovatelé a manažeři.

Metriky „agilních" metod jsou spojeny s funkčností vyvíjeného softwaru. Uživatelé „agilních" metod (ve srovnání s uživateli jiných metod) více komunikují a méně píší dokumentaci, kvůli čemuž jsou považováni za méně disciplinované.