Agile (PL)

From Systems analysis Wiki
Jump to navigation Jump to search

Zwinna metodologia wytwarzania oprogramowania — termin zbiorczy obejmujący szereg podejść i praktyk opartych na wartościach Manifestu Zwinnego Wytwarzania Oprogramowania oraz 12 zasadach stanowiących jego fundament. Do zwinnych metodologii zalicza się m.in. ekstremalne programowanie, DSDM, Scrum, FDD, BDD i inne.

Do „zwinnych" metod zalicza się w szczególności XP, DSDM, Scrum, FDD, BDD.

Większość „zwinnych" metod nakierowana jest na minimalizację ryzyka poprzez podział czasu wytwarzania na iteracje (okresy) — przedziały czasu stosunkowo krótkiego. Iteracja trwa zazwyczaj dwa lub trzy tygodnie, przypomina projekt programistyczny w miniaturze i obejmuje następujące zadania niezbędne do osiągnięcia niewielkiego przyrostu funkcjonalności: planowanie, analizę wymagań, projektowanie, programowanie, testowanie i dokumentowanie. Jedna iteracja zazwyczaj nie wystarcza do wydania nowej wersji oprogramowania, zakłada się jednak, że pod koniec iteracji nowa wersja oprogramowania jest gotowa do wydania. Po zakończeniu iteracji zespół ponownie ocenia priorytety wytwarzania.

„Zwinna" metody opierają się na komunikacji twarzą w twarz. Większość osób pracuje w jednym biurze, nazywanym niekiedy ang. bullpen. W biurze pracuje co najmniej „właściciel produktu" (ang. product owner) — zleceniodawca wytwarzania oprogramowania lub jego przedstawiciel, określający wymagania wobec oprogramowania. Rolę „właściciela produktu" może pełnić kierownik projektu, analityk biznesowy lub klient. W biurze mogą pracować testerzy, projektanci interfejsów, pisarze techniczni i kierownicy.

Metryki „zwinnych" metod związane są z funkcjonalnością tworzonego oprogramowania. Użytkownicy „zwinnych" metod (w porównaniu z użytkownikami innych metod) więcej komunikują się i piszą mniej dokumentacji, przez co uchodzą za mniej zdyscyplinowanych.