Agile vs Scrum – którą metodykę zwinną wybrać przy realizacji projektów?

Klasyczne metody zarządzania projektami stosuje się wtedy, gdy dana inicjatywa jest przewidziana od A do Z, ma wszechstronną dokumentację, a ryzyko, że coś ulegnie zmianie, jest bliskie zeru. Są jednak takie projekty, w których żaden z tych aspektów może być niemożliwy do spełnienia. Wówczas warto  postawić na metodyki zwinne. Ich wyróżnikiem jest to, że doskonale nadają się do tych projektów, w których często zachodzą rozmaite zmiany. W poniższym artykule omawiamy dwie metodyki zwinne: Agile i Scrum.

 

 

Czym są metodyki zwinne?

 

Na samym początku wyjaśnijmy definicję słowa „metodyka”. Jest to po prostu zbiór metod. Dawniej podziału na tradycyjne i zwinne metodyki zarządzania projektami nie było. Stosowano wyłącznie te pierwsze. Zakładało ono podział projektu na określone fazy oraz tworzenie bardzo dokładnej dokumentacji. Określało się to pojęciem waterfall – każda z faz projektu polegała na tworzeniu określonych półproduktów, które były przekazywane do następnej. Przykładowo: faza pierwsza mogła zakładać analizę, a w jej wyniku tworzono harmonogram. Wszystkie efekty były przekazywane konkretnym zespołom.

Należy pamiętać o tym, że tradycyjne metody zarządzania projektami mają nie tylko zalety, ale również szereg wad. Podstawową przywarą jest fakt, iż ten rodzaj zarządzania sprawdza się wyłącznie w tych projektach, w których nie są wprowadzane zmiany. Z tego powodu branża IT wykorzystuje je stosunkowo rzadko. W branży IT niezwykle istotne jest ciągłe dostosowywanie się do nowych technologii cyfrowych, podążanie za konkurencją oraz tworzenie nowych produktów. Tym samym projekty w IT muszą być łatwe do zmodyfikowania, ponieważ reagowanie na zmieniające się otoczenie pełni w tej branży szczególnie ważną rolę.

Gdy realizowane są projekty innowacyjne, zaplanowanie krok po kroku wszystkich prac, które miałby wykonać zespół, jest w zasadzie niemożliwe. Bardzo często zdarza się, że podczas realizacji prac pojawia się mnóstwo problemów, którym trzeba stawić czoła.

Dynamiczny rozwój nowoczesnych technologii powoduje, że w trakcie realizacji projektu mogą pojawić się nowe wymagania techniczne, które będzie trzeba wziąć pod uwagę, aby móc dostarczyć klientowi oprogramowanie o odpowiedniej jakości. 

Istotą metodyk zwinnych (z ang. agile project management) jest zatem uwzględnianie dynamicznie zmieniających się uwarunkowań zewnętrznych – konkurencyjności w branży, powstawania nowych rozwiązań technologicznych czy rosnących potrzeb klientów. 

Najważniejsze wytyczne dotyczące koncepcji zwinnego zarządzania projektami zostały ogłoszone w 2001 roku. Wówczas wskazano cztery najważniejsze obszary:

  • współpraca z klientami, 
  • właściwie funkcjonujący produkt,
  • ludzie i narzędzia technologiczne,
  • reakcja na zachodzące zmiany. 

W tym samym roku ogłoszono również Manifesto for Agile Software Development, czyli manifest grupy twórców tej idei, w której zawarto 12 podstawowych zasad, którymi powinny kierować się podmioty stosujące metodykę zwinną.

 

 

Czym jest Agile i Scrum?

 

Jeśli chodzi o znaczenie terminów Agile i Scrum, na tym polu pojawia się wiele sprzeczności. Sporo osób używa tych terminów zamiennie, co jest dużym błędem. Scrum to najważniejsza i najczęściej stosowana metodyka Agile.  Oznacza to zatem, że Scrum jest zbiorem metod, czyli metodyką. Z kolei Agile nie charakteryzuje metodyki pracy wprost.

Gdy wprowadza się Agile, nie wdraża się określonych, wyspecjalizowanych narzędzi. Za pomocą Agile możemy jedynie zaimplementować fundamenty, czyli kulturę organizacji. Dopiero wtedy możemy pójść o krok dalej i wybrać określoną metodykę, np. Scrum.

W ramach Agile wyróżnia się także inne metodyki, takie jak:

  • Lean – zakłada tworzenie produktów o wysokiej jakości z wykorzystaniem możliwie najprostszych sposobów, 
  • Kanban – priorytetem jest tu przedstawianie projektów za pomocą technik wizualnych.

Czym różni się Agile od Scrum?

Metodyka Scrum zakłada wykorzystanie określonych narzędzi, a jednocześnie czerpie z zasad Agile. Należy jednak zaznaczyć, że Scrum powstał wcześniej, co może nieco zaburzyć nasze rozumowanie.

Scrum został utworzony w latach 1990-1995, zaś Agile Manifesto o którym wspomnieliśmy wyżej, został opublikowany w roku 2001. Przy tworzeniu tego dokumentu brali jednak udział twórcy koncepcji Scrum, zatem mieli duży wpływ na jego treść. Wszystkie zasady i wytyczne zawarte w manifeście Agile odnośnie sposobu realizacji projektów, nastawienia czy myślenia są podstawą koncepcji funkcjonowania metodyki Scrum.

Ważną cechą metodyki Scrum jest dbałość, aby poszczególne elementy projektu tworzone w ramach zespołów były ze sobą integrowane. Wówczas cały czas mamy do swojej dyspozycji projekt, który możemy w zależności do potrzeb wdrożyć w dowolnym momencie. Jest to również doskonała sposobność do tego, aby na bieżąco monitorować, jak stworzone oprogramowanie funkcjonuje w czasie rzeczywistym. Klienci z pewnością docenią to, że zobaczą na własne oczy, jak działa zamówiony przez nich produkt już w fazie testów. Elementem rozpoznawczym Scruma jest zatem dbałość o „wdrażalność” przedsięwzięcia na każdym etapie.

 

 

Jaką metodykę zarządzania projektem wybrać?

 

W branży IT od wielu lat stosuje się przede wszystkim zwinne metodyki zarządzania projektami, takie jak Scrum, Kanban czy Lean. Wyróżnia je spora elastyczność oraz możliwość szybkiego reagowania na zmiany zachodzące na rynku oraz potrzeby klienta.

Metody klasyczne sprawdzą się, gdy wytyczne zostały jasno i bardzo szczegółowo określone a klient jest pewny, że nie będzie chciał wprowadzać żadnych zmian. Decyzję odnośnie wyboru najlepszej metodyki zarządzania konkretnym projektem trzeba bardzo dokładnie rozważyć uwzględniając przede wszystkim uwarunkowania wewnętrzne i zewnętrzne.