Skip to content

Metodyki Agile – wprowadzenie

Metodyka Agile leży u podstaw zwinnego zarządzania projektami. Zarządzanie zgodnie z założeniami Agile polega na cyklicznym wykonywaniu konkretnych etapów, które składają się na poszczególne cykle. Pomiędzy cyklami progres prezentowany jest klientowi, a otrzymany feedback wdraża się w kolejnym cyklu. Ten typ pracy pozwala na ciągłe doskonalenie produktu. Należy zauważyć, że zwinne zarządzanie nie ogranicza się do jednego systemu prowadzenia projektów.


Czym jest Agile?

W ostatnich latach termin „agile” stał się coraz bardziej popularny w świecie biznesu. Ale co to właściwie znaczy?

W swej istocie agile to filozofia, która kładzie nacisk na współpracę, elastyczność i ciągłe doskonalenie. W zwinnej organizacji zespoły współpracują ze sobą, aby realizować projekty w krótkich sprintach lub cyklach. Takie podejście pozwala firmom szybciej reagować na zmiany i lepiej dostosowywać się do zmieniających się potrzeb klientów. Filozofię Agile można zastosować do każdego typu organizacji, ale szczególnie dobrze nadaje się do tworzenia oprogramowania. Dzieje się tak, ponieważ tradycyjne podejście kaskadowe do tworzenia oprogramowania — w którym zespoły pracują sekwencyjnie nad oddzielnymi częściami projektu — jest często zbyt sztywne i nieelastyczne.

Agile pomaga programistom być bardziej produktywnym, umożliwiając im pracę w mniejszych, iteracyjnych cyklach. Pomimo wielu zalet, Agile nie jest pozbawiony wyzwań. Jednym z największych wyzwań jest to, że rozpoczęcie pracy z Agile może być trudne, ponieważ wymaga to zmiany myślenia zarówno dla menedżerów, jak i pracowników. Ponadto zwinne wymaga ścisłej współpracy między członkami zespołu, co może być trudne do osiągnięcia, jeśli członkowie zespołu nie są odpowiednio dopasowani do swoich zadań.

Cykl zwinnego zarządzania – podstawa działania

Zwinne zarządzanie powstało na początku XX wieku w związku z rozwojem nowoczesnych technologii, które w odróżnieniu do wcześniejszych przedsięwzięć wyróżniała szczególna dynamika i duże ryzyko. Metody Agile zostały stworzone w szczególności dla projektów IT, w przypadku których stosowanie klasycznych metod zarządzania było nieefektywne. Potrzeby klienta dezaktualizowały się zanim wykonawca zakończył prace nad zleceniem, prowadząc do znaczących strat finansowych. Ta zaleta metodyk zwinnych jest nadal aktualna. Co więcej, można przypuszczać, że zarówno dynamika jak i ryzyko projektów IT wzrosły wraz z rozwojem licznych technologii i dużą konkurencją na rynku. Również możliwość ciągłego monitorowania rozwoju produktu i dostarczania informacji zwrotnej do wykonawcy pozwala na stworzenie rezultatu, który jak najlepiej odpowiada na potrzeby klienta bądź konsumentów. W związku z tym metodyki Agile stosuje się przy pracach z różnego rodzaju innowacjami – produktowymi, procesowymi oraz informatycznymi.

Najważniejsze etapy cyklu zwinnego zarządzania to:

  • Planowanie – pozwala na uzgodnienie założeń i oczekiwań klienta.
  • Projektowanie – polega na opracowaniu sposobów realizacji konkretnych części projektu, pozwalając na oszacowanie zasobów potrzebnych do wykonania zlecenia.
  • Rozwój – jest centralnym etapem cyklu i odnosi się do wdrażania projektu określonego w etapie projektowania.
  • Testowanie – umożliwia sprawdzenie, czy wdrożone w fazie rozwoju usprawnienia spełniają odpowiednie wymagania i skutecznie realizują swoje funkcje.
  • Implementacja – polega na zakończeniu danego etapu projektu po wcześniejszej akceptacji klienta oraz na zebraniu i usystematyzowaniu wniosków z cyklu prac, które służą usprawnieniu kolejnych iteracji projektowych.

12 zasad Agile

Twórcy metodyki Agile wyjaśniają założenia zwinnego zarządzania na podstawie 12 zasad opisujących ideały zwinnego zarządzania. Są to:

1. Zadowolenie klienta – działania w ramach metodyk Agile powinny realizowane w szybkim tempie oraz wysokich standardach, priorytezując satysfakcję klienta. Cykliczność charakterystyczna dla metodyk zwinnych umożliwia szczegółowe dopasowanie prac do potrzeb klienta oraz sprzyja dynamice działania.

2. Gotowość do zmian – główną zaletą Agile jest umożliwienie wprowadzania częstych zmian na każdym etapie projektu.

3. Częste dostarczanie składowych produktu – metodyka Agile preferuje jak najczęstsze dostarczanie klientowi zakończonych elementów projektu.

4. Ścisła współpraca – zwinne zarządzanie wymaga interdyscyplinarnej współpracy ekspertów realizujących zarówno techniczne jak i biznesowe elementy projektu, umożliwiając płynną wymianę informacji i realizację założeń klienta.

5. Zaangażowanie i motywacja – dynamika charakteryzująca projekty Agile sprzyja stresowi. W celu zapewnienia najlepszych standardów pracy i wydajności zespołu, członkowie projektu powinni mieć zapewnione komfortowe warunki pracy sprzyjające ich zaangażowaniu i motywacji.

6. Bezpośrednia komunikacja – metodyka Agile wymaga sprawnego przepływu informacji, który najlepiej zapewnia bezpośrednia komunikacja.

7. Działający produkt (np. oprogramowanie) – jest głównym wyznacznikiem postępu i sukcesu projektu.

8. Równe tempo – zwinne zarządzanie wymaga równego postępu prac na wszystkich płaszczyznach projektu. W związku z tym przeszkody powinny być monitorowane a problemy sprawnie rozwiązywane.

9. Ciągłe doskonalenie – metodyka Agile promuje stałe usprawnianie procesów oraz ciągłe poszukiwanie usprawnień i lepszych metod wykonowania konkretnych zadań.

10. Prostota – produkt rozwijany z użyciem metod Agile powinien być zgodny z wymaganiami klienta lecz możliwie jak najprostszy. Skomplikowane rozwiązania sprawiają, że produkt staje się chaotyczny i nieintuicyjny.

11. Samodzielność – metodyki zwinne zakładają, że poszczególne elementy cykli realizowane są przez ekspertów, którzy znają się na tym, co robią. W związku z tym menadżer projektu powinien koordynować postępy, a nie narzucać konkretny sposób pracy.

12. Wyciąganie wniosków – zwinne zarządzanie opiera się o ciągłą naukę, dlatego każdy cykl iteracji powinien kończyć się ewaluacją i wyciągnięciem lekcji, które należy wdrażać w kolejnych cyklach i projektach.

Zarządzanie ze wsparciem zwinnych metod zarządzania przynosi nieograniczone możliwości biznesowe dla każdego kto umie powyższe zasady przestrzegać oraz im sprostać. Nie wystarczy pracować w sprintach czy angażować klientów i odbiorców. W Agile przede wszystkim chodzi o elastyczność – o reakcje na zmiany i szybkość dostosowania się. Wymaga to nie tylko doświadczenia, ale również odpowiednich kompetencji, znajomości teorii, historii i wartości metod zwinnych. Managerowie o odpowiednich kompetencjach nie tylko są cenniejszym zasobem, są także promotorami zmian wyznaczającymi nowe standardy pracy. Warto inwestować w umiejętności swojego zespołu, zwłaszcza w te przekładające się bezpośrednio na korzyści firmy. Sprawdź ofertę naszego szkolenia, które oprócz konkretnych narzędzi i praktycznej wiedzy przekazuje także prawdziwą istotę Agile – uczy zwinności i elastyczności

Scrum

Scrum jest oparty na częstym dostarczaniu klientowi gotowych części produktu. Oznacza to, że zespół projektowy regularnie spotyka się z klientem, przedstawiając mu zakończone elementy prac. W przypadku projektów IT są to gotowe części oprogramowania, np. moduły lub poszczególne funkcjonalności aplikacji. Prace rozwojowe nad produktem odbywają się natomiast w tzw. Sprintach – krótkich cyklach prac, pomiędzy którymi klient otrzymuje wgląd w postępy prac. Dzięki temu, klient może weryfikować zasadność założeń i modyfikować cele tak, by końcowy produkt jak najlepiej odpowiadał na jego potrzeby.

Samo określenie „Scrum” pochodzi z gry zespołowej rugby, opisując taktykę młyna. Zarówno na boisku w rugby jak i w projektach wykorzystujących zwinne zarządzanie w systemie Scrum, w zespole nie ma hierarchii ważności ani konkretnej zależności przełożony-pracownik. Zespół Scrum często cechuje zróżnicowanie kompetencji (programiści, testerzy, analitycy biznesowi), co umożliwia sprawną współpracę nad produktem. Każdy z członków zespołu ma taką samą sprawczość w podejmowaniu decyzji i każdy jest niezbędny do zapewnienia sukcesu projektu. Tego typu zespół pozwala na dostarczenie produktu o jak najwyższej jakości, odpowiadającego na specyficzne potrzeby klienta.

Ponadto, metodyka Scrum zakłada, że z zespołem bezpośrednio zaangażowanym w rozwuj produktu dla klienta współpracują dwie osoby: Product Owner i Scrum Master. Product Owner ma za zadanie reprezentować klienta. Posiadając dokładne zrozumienie potrzeb klienta i ściśle określoną wizję produktu, Product Owner ustala priorytety i zarządza zadaniami, dbając, by produkt odpowiadał na wymagania klienta. Rolą Scrum Mastera jest pilnowanie, by praca zespołu była zgodna z założeniem metodyk agile i zasad Scrum, eliminując pojawiające się przeszkody oraz analizując i ewaluując prace tak, by zwiększyć efektywność kolejnych etapów bądź projektów.

Kanban

Filozofia Kanban wywodzi się z japońskich fabryk Toyoty, kiedy to w latach 40. XX w. firma zaczęła optymalizować procesy inżynieryjne, wzorując się na tym, jak robią to supermarkety. W sklepowych magazynach powinno być dokładnie tyle danego produktu, by sprostać popytowi. Magazynowanie większej ilości produktu prowadzi do obniżenia wydajności. Wdrażając podobną metodę do swych fabryk, Toyota miała na celu obniżenie ogromnych ilości inwentarzu do poziomu odpowiadającego ich konsumpcji. Kiedy na linii produkcyjnej kończył się zapas danego materiału, pracownicy fabryk Toyoty przekazywali specjalną kartę („kanban”) wyliczającą potrzebne materiały do odpowiednich zespołów. Następnie pracownicy magazynu przygotowywali odpowiednią ilość materiałów do wysłania do fabryki oraz przekazywali tę samą kartę („kanban”) do dostawcy. Metodologia Kanban polega zatem na wizualizowaniu procesu oraz eliminacji marnotrawstwa w oparciu o strategię Just In Time (JIT).

Współczesna metodyka Kanban jest oparta na strategii „pull”. Oznacza to, że każdy etap procesu pociąga za sobą działania z poprzedniego etapu, równocześnie sygnalizując, że poprzedni etap jest gotowy na kolejny krok.

Centralnym elementem metody zwinnego zarządzania Kanban jest tzw. tablica Kanban, która służy wizualizacji zadań na danym etapie realizacji. Przykładowym układem tabeli mogą być kolumny To Do, Working, Validating, Done, w których wymienione są zadania odpowiednio do zrealizowania, w trakcie realizacji, w trakcie testowania oraz zadania zakończone. Należy zauważyć, że tablica Kabnab może składać się z kilku procesów, z których każdy może mieć kolumny określające stopień realizacji zadania. Co więcej, poszczególne procesy należy opatrzyć określoną wartością punktową odpowiadającą liczbie lub poziomowi trudności zadań tak, by wartości punktowe poszczególnych zadań w danej kolumnie nie przekraczały wyznaczonego progu. Dzięki temu uniknie się powstawania tzw. „wąskich gardeł” oraz „korków” w realizacji zadań.

Podsumowując, głównymi zaletami metodyki Kanban są zapewnienie ciągłości pracy, wizualizacja zadań zwiększająca wydajność zespołu, przejrzystość postępu oraz eliminacja marnotrawstwa.

Wyzwania związane z Agile

Nie ma wątpliwości, że zwinność zmieniła sposób, w jaki pracujemy. Pomogło nam działać szybciej, szybciej reagować na zmiany i osiągać lepsze wyniki. Ale rośnie też poczucie, że coś jest nie tak ze sposobem, w jaki Agile jest używany w wielu organizacjach. Istnieje wiele wyzwań związanych ze sposobem wdrażania Agile, które powodują problemy dla zespołów i organizacji.

Oto niektóre z głównych problemów:

  1. Agile jest często postrzegany jako srebrna kula, która rozwiąże wszystkie problemy organizacji. Oznacza to, że jest często wymuszany na zespołach, które mogą nie być gotowe lub nie chcą go przyjąć. Podstawą do wprowadzenia nowych metod pracy i zarządzania jest skuteczne Zarządzanie zmianą – złożony proces, który edukuje na temat wprowadzanych zmian zarówno pracowników jak i przełożonych.
  2. Agile może być bardzo nakazowy, mówiąc zespołom dokładnie, jak powinny pracować. Może to prowadzić do braku kreatywności i innowacyjności, a także poczucia mikrozarządzania.
  3. Skupienie się na szybkości może często prowadzić do schodzenia na skróty i ścinania zakrętów, co może mieć wpływ na jakość produktu końcowego.
  4. Brak formalnej dokumentacji może utrudniać przekazywanie projektów innym zespołom lub osobom, a także może tworzyć luki w wiedzy w organizacjach.

Nie ma wątpliwości, że agile jest główną siłą w świecie tworzenia oprogramowania od kilku lat. Ale jak w każdym podejściu, zawsze są krytycy i pesymiści. Jedną z największych krytyki agile jest to, że jest zbyt nakazowy – że nie pozwala na wystarczającą elastyczność i kreatywność. To słuszna krytyka, ale mija się z celem agile. Celem Agile jest reagowanie na zmiany – umiejętność szybkiego i łatwego dostosowywania się do nowych wymagań lub nowych pomysłów. Gdyby zwinność była naprawdę nakazowa, pokonałaby swój własny cel. W rzeczywistości żadne podejście – czy to zwinne, kaskadowe czy coś innego – nie może być całkowicie nakazowe.

Michał Mądry

Michał Mądry

Partner

+48 512 460 692
m.madry@jpweber.com
MATERIAŁY POWIĄZANE

WARTO WIEDZIEĆ

Czym są kamienie milowe projektu i jak ich używać
ARTYKUŁ
Czym są kamienie milowe projektu i jak ich używać?
Nowoczesne metody zarządzania w świecie VUCA – czy będą skuteczne
ARTYKUŁ
Nowoczesne metody zarządzania w świecie VUCA – czy będą skuteczne?

Usługi powiązane.


Masz jakieś pytania? Skontaktuj się z nami.

 

Skontaktuj się z JP Weber