Co to jest Agile?

Minęło już wiele lat, a pamiętam pierwszy stand-up, jakby to było wczoraj. Z pełnym przekonaniem mogę stwierdzić, że to właśnie podejście zwinne zdecydowało o zmianie mojej kariery zawodowej z programisty na menedżera projektów. Czym jest Agile? Zapraszam do lektury.

Skąd się wziął Agile?

Agile (Zwinny) pojawił się jako remedium na wszelkie bolączki tradycyjnego podejścia do tworzenia oprogramowania. Miał pomóc w rozwiązaniu takich problemów, jak:

  • testowanie rezultatów projektu dopiero na końcu,
  • przekazanie produktów na zakończenie projektu,
  • duży koszt zmiany wymagań.

Czy pomógł? Zdecydowanie tak! Wystarczy zwrócić uwagę, że PMI bardzo duży nacisk położył na Agile w PMBOK6. Mamy do dyspozycji takie metodologie jak PRINCE2 Agile czy Agile Project Management.

Świat projektów widzi dużą wartość w byciu zwinnymi, mimo dużego wysiłku potrzebnego w zmianę myślenia – świadczy o tym chociażby ostatnia konferencja PMI Organizational Agility Conference 2018, w której miałam przyjemność uczestniczyć.

Co to jest Agile?

Agile to stan umysłu, w którym zwinność reagowania na wszelkie sygnały ma największe znaczenie. Jeśli coś się wydarzy, szybkość i adekwatność reakcji świadczy o naszej ‘agility’.

W byciu Agile znaczenie mają wartości opisane w Agile Manifesto jako bardziej cenione:

  • Ludzi i interakcje cenimy bardziej niż procesy i narzędzia
  • Działające oprogramowanie cenimy bardziej niż obszerną dokumentację
  • Współpracę z klientem cenimy bardziej niż negocjowanie formalnych umów
  • Reagowanie na zmiany cenimy bardziej niż podążanie za planem.

Co ważne, wskazanie tych czterech wartości po lewej jako cenniejsze nie oznacza, że o wartości po prawej nie musimy już dbać.

Uzupełnieniem manifestu jest 12 zasad zwinnego tworzenia oprogramowania:

  1. Priorytetem jest satysfakcja klienta poprzez wdrażanie oprogramowania często i jak najwcześniej.
  2. Zmiana może się pojawić na każdym etapie pracy nad oprogramowaniem – nawet późnym i to jest OK.
  3. Działające oprogramowanie jest dostarczane często – w odstępach kilkutygodniowych lub kilkumiesięcznych.
  4. Środowisko biznesowe i zespół deweloperski pracują blisko każdego dnia trwania projektu.
  5. Projekty są realizowane przez zmotywowany zespół. Istotne jest zaufanie dla tego zespołu.
  6. Komunikacja twarzą w twarz jest najbardziej skuteczną metodą wymiany informacji w zespole projektowym.
  7. Działające oprogramowanie jest najważniejszą metryką postępu projektu.
  8. Stały rozwój, równe tempo pracy.
  9. Ciągłe skupienie się na technicznej jakości i dobrym projektowaniu służy zwinności.
  10. Minimalizacja pracy niezbędnej do wykonania jest esencją prostoty.
  11. Samoorganizujący się zespół wytwarza najlepsze rozwiązania, wymagania i projekty.
  12. Zespół regularnie analizuje możliwości poprawy swojej wydajności, wyciąga wnioski i wdraża je.

Podsumowanie

Zwinność to bycie otwartym na klienta, jego potrzeby (poprzez częste przekazywanie mu działających rezultatów i gotowość do wprowadzania zmian w produktach projektu); to zmotywowany zespół projektowy, do którego biznes ma zaufanie; i wreszcie to biznes aktywnie uczestniczący w projekcie.