W pracy testera istotnym elementem jest metodologia zarządzania projektami. Jeśli nie znasz ich, może być Ci trudno odróżnić np. tablicę Kanban’owej od tablicy Scrum’owej. Problemem też może okazać się zrozumienie różnic między metodologią Agile a Waterfall. Przy tak wielu podobnych terminach, może się wydawać, że nie ma żadnego znaczenia, którą metodologię wybierzemy. Czy rzeczywiście? Przyjrzyjmy się temu tematowi, gdyż każda z tych metodologii oferuje różne korzyści.
Chociaż te metodyki różnią się znacząco, należy przyznać, że każda z nich ma ostatecznie ten sam cel: ułatwienie realizacji projektów. W tym celu, każda z metodologii pomaga zarządzać procesami pracy Twojego zespołu poprzez strukturę i komunikację. Choć każdą z tych metodologii wdraża się inaczej, mają one wiele wspólnego.
Choć różnice między poszczególnymi metodologiami mogą wydawać się niewielkie, to jednak wiemy, że są. W rzeczywistości, te pozornie drobne szczegóły mówiąc kolokwialnie “robią dużą różnicę” w sposobie funkcjonowania danej metody. Mając to na uwadze, zbadajmy, co wyróżnia każdą z metod zarządzania projektami.
Waterfall i jego unikalność
W zarządzaniu projektami metodą Waterfall, projekty są podzielone na etapy liniowe i sekwencyjne, w których każdy element projektu opiera się na ukończeniu poprzednich wyników. Waterfall jako taki posiada dwie unikalne cechy.
Zarządzanie projektami metodą Waterfall ma swój początek w budownictwie i przemyśle wytwórczym, gdzie jeden etap musi być zakończony przed rozpoczęciem drugiego. Ten nacisk na wykonanie liniowe ma kluczowe znaczenie dla przebiegu pracy w tej metodzie. Waterfall wykorzystuje różne fazy, a nie jednoczesną pracę. Kiedy używasz tej metodologii, musisz ukończyć każdy etap przed rozpoczęciem kolejnego. Podobnie, nie można wrócić do poprzedniego etapu. Każda zmiana wymaga ponownego uruchomienia całego procesu. Jeśli więc rozważasz Agile vs. Waterfall dla swojego stylu zarządzania projektem, pamiętaj, że Waterfall oferuje mniejszą elastyczność.
Ponieważ Waterfall nie pozwala na powrót do poprzedniej fazy, wymagania projektu muszą być jasne z góry. Metodologia ta rozpoczyna się od zebrania i udokumentowania wymagań, a następnie udostępnienia ich członkom zespołu.
Członkowie zespołu dokumentują również swoją pracę w miarę jak projekt jest kontynuowany w każdej fazie. Idealnie byłoby, gdyby członkowie zespołu mogli wyjść lub wejść do projektu bez zakłócania przepływu pracy, dzięki czemu Waterfall byłby dobrym rozwiązaniem dla zespołów oczekujących zmian w przepustowości.
Agile i jego unikalność
Metodologia Agile – typowo stosowana w tworzeniu oprogramowania – to wspólne, samoorganizujące się, wielofunkcyjne podejście do realizacji zadań i wymagań.
Choć można usłyszeć, że mówi się o niej jako o odrębnej metodologii, Agile project management bardziej poprawnie odnosi się do kategorii metodologii, która obejmuje Scrum i Kanban. Nadal istnieją fundamentalne różnice pomiędzy zarządzaniem projektami Agile i Waterfall. Agile skupia się na adaptacyjnych, jednoczesnych przepływach pracy – dalekich od liniowej natury Wodospadu. Każda z metodologii Agile będzie miała następujące cechy.
Równoczesna, przyrostowa praca
Jest to najbardziej wyróżniająca się cecha przy porównywaniu metodologii Waterfall vs. Agile. Metody Agile rozbijają projekty na mniejsze, powtarzające się okresy, które szczególnie dobrze sprawdzają się w przypadku produktów, które korzystają z testów użytkowników i regularnych przeglądów (np. oprogramowania).
Zdolność adaptacji
Ponieważ metody Agile działają przyrostowo, zespoły mogą dostosowywać swoje procesy z pewną częstotliwością. Tam, gdzie Waterfall wykorzystuje ustalony, nieelastyczny proces, metodyki Agile zachęcają zespoły do ulepszania i dostosowywania przepływu pracy w miarę potrzeb.
Adaptacyjność metod Agile jest szczególnie dobrze dopasowana do projektów, w których oczekuje się zmiany wymagań lub ograniczeń. O ile w miarę możliwości należy unikać takich zmian, metodologie Agile pozwalają zespołom na dostosowanie procesu w celu zrekompensowania takich zmian.
Kanban i jego unikalność
Podczas gdy wiele osób chce porównać Kanban vs. Agile, metodologia Kanban jest dokładniej określonym typem metodologii Agile. Kanban dąży do lepszej koordynacji i zrównoważenia pracy z przepustowością i pasmem wśród pracowników. Wykorzystuje zasady metodologii Agile omówione powyżej, ale wdraża je w szczególny sposób.
Tablica Kanban
Tablica imienna Kanbana wizualizuje przebieg pracy zespołu. Tablica jest podzielona na kategorie pracy do wykonania, pracy w toku i pracy zakończonej, a zespoły mogą dodawać więcej kategorii w razie potrzeby, aby lepiej wizualizować swój proces. Każde zadanie jest zapisywane na karcie Kanban, która przesuwa się od kolumny do kolumny na planszy w miarę przechodzenia przez proces pracy zespołu.
Zarząd Kanban utrzymuje członków zespołu na tej samej stronie, ale również pomaga zespołom określić, gdzie procesy wymagają poprawy. Sprawia, że problemy takie jak wąskie gardła są bardzo widoczne, co pozwala zespołowi na wprowadzanie poprawek w miarę potrzeb.
Limity WIP
Metodologia Kanban wymaga ścisłego ograniczenia ilości pracy w toku w danym momencie. Zespoły przydzielają limit na ilość kart w dowolnych kolumnach pracy aktywnej. Po osiągnięciu limitu, żadna nowa praca nie może wejść do kolumny, dopóki zadanie nie zostanie ukończone i przeniesione do następnej kolumny. System ten ponownie pomaga zespołom w identyfikacji wąskich gardeł i zachęca poszczególnych uczestników do wspólnego mobilizowania się w celu ich usunięcia.
Ciągłe udoskonalanie
Celem metodologii Kanban jest usprawnienie procesu pracy zespołu. Zespół spotyka się okresowo, aby przedyskutować zmiany, które należy wprowadzić, a dane wyświetlane na tablicy Kanban obrazują te dyskusje.
Regularnie odbywające się spotkania pomagają zespołowi stale poprawiać i dostosowywać swój proces. Usprawnia to przepływ pracy bez wprowadzania żadnych nagłych lub dramatycznych zmian, zapewniając łatwe wdrożenie Kanbana w niemal każdym zespole.
Scrum i jego unikalność
Ostatnia metodologia, którą się zajmiemy to Scrum. To kolejna metodologia Agile, która wykorzystuje stopniowe podejście do pracy w celu szybszego ukończenia projektów. Metodyka Scrum zazwyczaj zajmuje się złożoną pracą nad wiedzą, taką jak tworzenie oprogramowania. Jeśli chodzi o Kanban vs. Scrum, Kanban zajmuje się przede wszystkim usprawnianiem procesów, podczas gdy Scrum zajmuje się szybszym wykonywaniem większej ilości pracy.
Sprinty
Scrum wykorzystuje dwutygodniowe sprinty, aby wykonać pracę. Te sprinty są planowane z wyprzedzeniem, realizowane, a następnie weryfikowane pod koniec dwutygodniowego okresu. Podczas planowania sprintu, zespół tworzy listę (tzw. backlog) sprintu. Zespół wykonuje te zadania podczas sprintu, zarządzając pracą między sobą.
Członkowie zespołu organizują również 15-minutowe spotkanie Scrum każdego dnia sprintu. W tym czasie uczestnicy omawiają wszelkie potencjalne blokady, które mogą przeszkadzać w powodzeniu projektu. Dokonują również przeglądu prac z poprzedniego dnia oraz planów na najbliższy dzień. To spotkanie Scrum zapewnia, że zespół pracuje wspólnie i pozostaje zsynchronizowany.
Scrum Master
Scrum master łączy zespół z właścicielem produktu. Przed rozpoczęciem projektu, Scrum Master współpracuje z właścicielem produktu w celu zdefiniowania wymagań. Następnie pomaga zespołowi zaplanować sprinty. Po rozpoczęciu sprintu, Scrum Master pomaga w usunięciu wszelkich pojawiających się blokad.
Należy zauważyć, że Scrum Master nie jest tradycyjnym kierownikiem projektu, ponieważ Scrum Master ułatwia pracę, a nie zarządza nią. Metodologia Scrum zachęca zespoły do zarządzania własną produktywnością; Scrum Master tylko im w tym pomaga.
Wykresy Burndown
Podczas sprintu Scrum używa wykresu Burndown, który pozwala członkom zespołu zobaczyć postępy. Zamiast wyświetlać ukończone zadania, wykres pokazuje, co pozostało do zrobienia. Powinien on być stale aktualizowany, aby pomóc członkom zespołu w zarządzaniu ich pracą.
Jaką metodologię zarządzania projektem powinieneś zastosować?
Co ciekawe, odpowiedź na to pytanie zależy od Twojego wyjątkowego zespołu i jego celów. Aby pomóc ci podjąć decyzję, zadaj sobie te dwa pytania.
Jakie mam cele dla mojego zespołu?
Podczas gdy każda metodologia ma ten sam cel realizacji projektu, ich cele drugorzędne czynią je naprawdę odrębnymi. Twoje cele mogą pomóc Ci zdecydować, która metodologia jest dla Ciebie najbardziej odpowiednia.
Określić to, czego najbardziej pragniesz dla swojego zespołu. Jeśli po prostu chcesz pracować szybciej, spróbuj Scrum. Jeśli chcesz usprawnić proces produkcji, użyj Kanban. Jeśli Twoje projekty wymagają liniowego przepływu pracy, zaimplementuj Waterfall. Jeśli nie jesteś pewien, zbadaj inne opcje Agile i zadaj sobie następne pytanie.
Jakiej metodologii będziemy się faktycznie trzymać?
Różnice w metodach zarządzania projektami mają znaczenie tylko wtedy, gdy stosuje się je konsekwentnie. Bez ograniczeń WIP, na przykład, Kanban jest tylko kolejną skomplikowaną metodologią Agile. A jeśli podczas używania Waterfall nie zachowasz dyskrecji faz, równie dobrze możesz po prostu użyć metodologii Agile.
W związku z tym najlepszą metodologią zarządzania projektami dla Twojego zespołu jest ta, dzięki której doskonale wykonasz założony cel i plan. Tak więc, o ile z pewnością potrafisz dostosować metodologię do potrzeb swojego zespołu, najlepiej jest stosować ją zgodnie z założeniami, dostosowując ją tylko w razie potrzeby.
źródło: https://www.lucidchart.com/blog/agile-vs-waterfall-vs-kanban-vs-scrum