Agile

Co to jest Scrum: trzy filary Scruma (cz. I)

co to jest scrum

Zwykły, rodzinny obiad jaki odbywa się w każdą niedzielę w polskich domach. Na stole tradycyjnie rosół, w kolejce czeka schabowy z mizerią, a w tle słychać rywalizację rodzin w Familiadzie. Wtem od jednego z członków rodziny pada kłopotliwe pytanie.

A czym Maćku właściwie się zajmujesz?

No jak to czym? Przecież jestem Scrum Masterem!

To znaczy kim?

No… Wiesz co to jest Scrum? Nie? Robimy oprogramowanie, są sprinty czyli iteracje, ważne są retrospektywy, bo wtedy możemy ulepszać proces. Jesteśmy zwinnym zespołem, elastycznie dostosowujemy się do zmian na rynku i oczekiwań użytkowników… No i wprowadzamy zmiany, nieustannie… I codziennie rano daily, daily jest ważne…

Chyba nie muszę opisywać jakie miny po takiej litanii często goszczą na twarzach członków mojej rodziny? Z pozoru proste pytanie bardzo często sprawia mi kłopot. Jak tu w kilku zdaniach wytłumaczyć co to jest Scrum i przenieść go do realiów życia codziennego?

Myślę, że z biegiem czasu zacząłem całkiem dobrze radzić sobie z tłumaczeniem moich obowiązków. Będzie to niezwykle przydatne właśnie dzisiaj, gdyż chce wytłumaczyć wam co to jest Scrum.

Znowu wszystko zaczęło się od IT

Te słowa mogę powtarzać jak mantrę i jestem pewien, że jeszcze kilka razy przewiną się na tym blogu. Otóż… Wszystko zaczęło się od IT.

Aby wytłumaczyć co to jest Scrum musimy wrócić do informatycznego boomu w latach 90. ubiegłego wieku, o którym wspominałem już przy okazji artykułu o Agile Marketingu. Cudowne lata dziewięćdziesiąte przyniosły niesamowity rozwój branży związanej z oprogramowaniem i nowymi technologiami. Internet rozpowszechnił się na tyle, że przestał być dobrem luksusowym i coraz częściej trafiał pod strzechy. Wszystko zaczęło momentalnie przyspieszać, potrzeby użytkowników zaczęły się dynamicznie zmieniać. Progres w jednej dziedzinie oznaczał jednak regres w drugiej. Szybko okazało się, że dotychczasowe metody wytwarzania oprogramowania zawodzą. Tradycyjne metody nie nadążały za zmianami technologicznymi i nie dość, że trwały wyjątkowo długo, to finalny produkt nijak miał się do tego, na co zapotrzebowanie zgłaszał rynek.

W 2001 roku patową sytuację postanowili zmienić pionierzy nowych metodyk tworzenia oprogramowania tworząc Agile Manifesto. Wśród nich znaleźli się Ken Schwaber i Jeff Sutherland – ojcowie metodyki Scrum.

Ken i Jeff wspólnymi siłami stworzyli Scrum Guide, który opisuję opracowaną przez nich metodykę wytwarzania oprogramowania. Scrum pozostaje od wielu lat najpopularniejszą metodyką zwinną wdrażaną w przedsiębiorstwach, także coraz chętniej adaptowaną poza branża IT.

Skąd wzięła się nazwa Scrum?

Skoro wiesz już skąd wziął się i kto stworzył Scrum, to warto dowiedzieć się skąd pochodzi nazwa. Scrum to zapożyczenie z terminologii sportowej. Konkretnie chodzi o formację zawodników w rugby, czyli młyn. To jedna z najbardziej charakterystycznych formacji w tej grze. Następuje w momencie, gdy któryś zawodników popełni błąd w grze.

Pochodzenie nazwy może dziwić, ale biorąc pod uwagę fakt, że bardzo dużo uwagi w przypadku Scruma poświęca się organizacji pracy zespołowej to nawiązanie do rugby wydaje się być idealną metaforą.

O co chodzi w Scrumie?

Już na samym początku podręcznika autorstwa Kena Schwabera i Jeffa Sutherlanda otrzymujemy bardzo cenną wskazówkę:

Scrum jest:  lekki,  łatwy do zrozumienia, trudny do opanowania

Scrum Guide

Z początku wydawało mi się, że ten fragment jest żartem i zawadiackim puszczeniem oka przez ojców założycieli Scruma. Z biegiem czasu okazało się, że to stwierdzenie świetnie opisuje wdrażanie i rozwój tej idei w pracy zespołu.

Aby zacząć pracować w zgodzie z duchem Scruma warto w magiczny sposób wyczyścić swój umysł z dotychczasowego wyobrażenia o pracy nad projektem. Większość z nas ma w głowie tradycyjną, kaskadową metodę, a przed oczami niekończące się i gęsto rozgałęzione wykresy Gantta.

Przecież to oczywiste, że najpierw musimy zasiąść do długiej sesji planowania, podczas której rozpiszemy bardzo dokładnie zadania na najbliższe 3, a może i 6 miesięcy. Każdy dzień zaplanujemy co do godziny, a kierownik projektu przydzieli odpowiednie zadania do zasobów. Później określimy ryzyka i postaramy się przewidzieć jak bardzo prawdopodobne jest, że wystąpi wielkie gradobicie, które spowoduje przerwy w dostawach prądu, co w konsekwencji sparaliżuje pracę całego zespołu. Kiedy nasz plan będzie gotowy to przekażemy niezbędne instrukcje zespołom i wprawimy skomplikowaną maszynę w ruch. Później pozostaje nam tylko modlić się, by po drodze nie zdarzyło się nic nieoczekiwanego, bo i tak jesteśmy na styk z czasem i budżetem.

Pora zapomnieć o dotychczasowej teorii i podejść do sprawy w zupełnie inny sposób.

Sprinty – Iteracyjna organizacja pracy

Scrum opiera się na podejściu empirycznym. Oznacza to, że wszystkie działania i decyzje wynikają z dotychczasowo zdobytych doświadczeń. Jak wygląda to w praktyce?

Przede wszystkim praca zespołu oparta jest na iteracjach. W krótkich, regularnych odstępach czasu członkowie zespołu mają za zadanie wytworzenie przyrostu (gotowej do użycia funkcjonalności lub innego elementu, który stanowi dla użytkownika realną wartość), który może (ale nie musi) być dostarczony klientowi.

Według oficjalnej terminologii taka iteracja nazywana jest w Scrumie Sprintem. Podręcznik do Scruma definiuje wyraźnie, że Sprint w zależności od potrzeb zespołu i procesu może trwać od jednego do czterech tygodni. W trakcie pracy długość Sprintu nie powinna ulegać zmianom. Sprint nie powinien być przerywany, choć w krytycznych sytuacjach istnieje taka możliwość.

Dlaczego zespoły scrumowe pracują w takich krótkich iteracjach? Jest kilka powodów. Chodzi o optymalizację czasu pracy, czyli uniknięcie tzw. prawa Parkinsona (nasza praca trwa dokładnie tyle, ile mamy wyznaczonego czasu, nie ważne czy jest to miesiąc czy 3 miesiące). Krótki i sztywny deadline z jednej strony może wywierać dużą presję. Z drugiej strony ułatwia koncentrację i skłania nad zastanowieniem się nad priorytetami.

Innym powodem do pracowania w krótkich iteracjach jest umożliwienie szybkiej weryfikacji hipotez i zebranie wartościowej informacji zwrotnej od realnych użytkowników. Łatwiej wprowadzać zmiany na początkowych etapach prac niż przebudowywać projekt w zaawansowanym stadium. Włożenie dużej ilości energii w stworzenie czegoś, co ostatecznie po wydaniu okazuje się bezużyteczne jest jednym z największych, demotywujących ciosów.

co to jest scrum infografika

Trzy filary Scruma

Praca w ramach idei Scruma opiera się na trzech filarach. Są to fundamentalne zasady, które pozwalają na efektywne funkcjonowanie procesu empirycznego. Do filarów Scruma zaliczamy: przejrzystość, inspekcję oraz adaptację.

Przejrzystość (transparentność) polega na nieustannej wymianie pełnych i rozumianych przez wszystkich informacji. Istotne jest, by stan prac był jasny nie tylko dla członków zespołu, ale również ich otoczenia (klient, inni pracownicy firmy, akcjonariusze etc.). Nie chodzi tu o raportowanie stanu prac, ale o wspólnym budowaniu świadomości na jakim etapie się obecnie znajdujemy i co jest w tym momencie najistotniejsze. Dotyczy to również informacji na temat wszystkich pojawiających się problemach, które utrudniają realizację celów.

Transparentność oznacza, że wszyscy członkowie zespołu muszą porozumiewać się wspólną terminologią. Nie może ona pozostawiać miejsca na domysły. Innymi elementami rozwijającymi ten aspekt pracy w Scrumie jest m.in. wizualizacja procesu na tablicy kanbanowej czy spotkania daily).

Inspekcja związana jest ze skupieniem uwagi na przebieg procesu i identyfikowaniem zachodzących nieprawidłowości. By można było efektywnie śledzić wszystkie zmiany konieczna jest wspomniana wyżej przejrzystość procesu. Inspekcje należy wykonywać regularnie, przy okazji np. spotkań daily, retrospektyw oraz przeglądów sprintu, ale nie należy przesadzać z częstotliwością. Może wtedy to zaburzyć ustalony rytm pracy wszystkich członków zespołu.

Ostatnim filarem Scruma jest adaptacja. To umiejętność szybkiej diagnozy i wprowadzenia zmian, które są podyktowane zmieniającymi się warunkami na rynku lub wynikają z przeprowadzonej inspekcji. Dostosowanie do nowych warunków i wprowadzenie ulepszeń do procesu następuje w tym samym momencie, co ich inspekcja.

Scrum Guide przewidział specjalne zdarzenia na potrzeby inspekcji i adaptacji, ale o tym napiszę w kolejnym artykule.

***

To pierwszy z serii artykuł wyjaśniający co to jest Scrum i czy można stosować go poza projektami związanymi z wytwarzaniem oprogramowania.

Przeczytaj kolejną część – Co to jest Scrum: role i zdarzenia w Scrumie (cz. II)

i kolejną: Co to jest Scrum: Artefakty w Scrumie (cz. III)

A jeżeli ten post ci się przydał i uważasz go za wartościowy – proszę, udostępnij go znajomym:

You may also like
co to jest scrum artefakty w scrumie
Co to jest Scrum: Artefakty w Scrumie (cz. III)
retrospektywa w pracy zespołowej
Zatrzymaj się, pomyśl i ulepszaj – retrospektywa w pracy zespołowej

Leave Your Comment

Your Comment*

Your Name*
Your Webpage