Scrum

Scrum
Metodyka
Zarządzanie projektami
Logo Scrum.org
RozpowszechnianieScrum.org
Scrum Alliance
Powstanie1986 r.
TwórcaKen Schwaber
CertyfikacjaScrum.org
Scrum Alliance
SpołecznośćScrum.org
Scrum Alliance
Podstawowy schemat

adres Oficjalna strona internetowa


Scrum - iteracyjna metodyka prowadzenia projektów, zaliczana do metodyk zwinnych, zgodnych z manifestem Agile. W metodyce tej rozwój produktu podzielony jest na mniejsze, trwające od dwóch do sześciu tygodni, fazy zwane sprintami następującymi bezpośrednio po sobie. Po każdym sprincie zespół pracujący nad rozwojem projektu jest w stanie dostarczyć działający prototyp projektu. Scrum jest często stosowany podczas tworzenia i rozwijania oprogramowania, nie jest jednak ograniczony tylko do tej dziedziny. Głównym celem metodyki jest kreowanie wartości na każdym ze stadiów przygotowania i realizowania projektu mając na uwadze dynamicznie zmieniające się otoczenie oraz potencjał ludzki. Główny nacisk tejże metodyki kładziony jest na indywidualność i interakcje, współpracę z klientami i dostosowywanie się do zmian.

Spis treści

Rozwój standardu

Scrum, znaczy młyn, a nazwa metodyki wywodzi się od określenia stosowanego w grze w rugby. Ogólne założenia metodyki zostały zaprezentowane przez Hirotakę Takeuchi'ego i Ikujiro Nonakę w artykule The New Product Development Game, opublikowanym w Harvard Business Review w styczniu 1986 roku. Pełna metodyka oraz definicja została sformalizowana przez Kena Schwabera i jego kolegę Jeffa Sutherlanda w 1986 roku.

W 1995 roku obaj informatycy przedstawili swoja metodykę w artykule Scrum methodology w Business Object Design and Implementation Workshop wydanym z okazji konferencji OOPSLA, z Austin, w stanie Teksas. W 2001 roku Schwaber pracował z Mike Beedlem nad opisaniem metody w książce Agile Software Development with Scrum.

Zastosowanie

Metodyka Scrum skupia się na:
  • dostarczaniu kolejnych, coraz bardziej dopracowanych wyników projektu
  • włączaniu się przyszłych użytkowników w proces wytwórczy
  • samoorganizacji zespołu projektowego


Metodyka Scrum opiera się silnie na relacjach samoistnie tworzących się między członkami zespołu. Zakłada się, że zespół będzie dokonywał pewnej samoorganizacji i jest to rzecz, która silnie wpływa na wydajność pracy w metodyce. Najczęściej wykorzystywana jest w projektach o wysokim stopniu niepewności, doskonale sprawdza się w projektach informatycznych.

Opis

Przebieg

Zespół projektowy pracuje w określonym przedziale czasowym zwanym przebiegiem (ang. sprint). Efektem przebiegu za każdym razem powinno być dostarczenie użytkownikom kolejnego działającego produktu. Zasadą jest to, że zmiany wprowadzane w jednym przebiegu muszą być namacalne dla użytkowników. Muszą wnosić wartość funkcjonalną. Przebieg może trwać od 2 do 4 tygodni. Zaleca się stosowanie przebiegów o stałych długościach.

W pierwszym etapie tworzona jest lista wymagań użytkownika, są one gromadzone w postaci "historyjek". Każda historyjka opisuje jedną cechę systemu. Właściciel produktu jest też zobowiązany do przedstawienia priorytetów wymagań oraz głównego celu przebiegu. Po tym formułowany jest rejestr wymagań. Cel przebiegu jest zapisywany w widocznym miejscu w pokoju członków zespołu. Następnie wybierane są zadania o najwyższym priorytecie, a jednocześnie przyczyniające się do realizacji celu projektu. Szacuje się czas realizacji każdego zadania. Lista zadań wraz z oszacowaną czasochłonnością nosi nazwę rejestru zadań przebiegu (ang. sprint backlog).

Po etapie przygotowawczym zespół przechodzi do realizacji przebiegu. W jego trakcie właściciel produktu nie może ingerować w prace zespołu. Nie powinno się także zmieniać zakresu sprintu. Jako że zespół z założenia jest samoorganizującym się ciałem, nie ma mowy o odgórnym przypisywaniu zadań do poszczególnych członków zespołu, lecz samodzielnie dokonują oni wyboru realizowanych zadań, według wspólnych ustaleń, umiejętności czy innych preferencji.

Naczelną zasadą metodyki jest przeprowadzanie codziennych spotkań tzw. Scrum meeting, na których omawiane są zadania zrealizowane poprzedniego dnia, problemy występujące przy ich realizacji oraz zadania do wykonania w dniu spotkania. Sprint kończy się spotkaniem Sprint review, na którym prezentowany jest wynik pracy zespołu, poprzez prezentowanie produktu wykonanego podczas przebiegu. Powinni w nim uczestniczyć wszyscy zainteresowani projektem. Na spotkaniu każdy członek zespołu może zabrać głos i wyrazić opinię o produkcie. Po omówieniu produktu ustalany jest termin spotkania planistycznego do następnego przebiegu.

Role w metodyce Scrum

Zazwyczaj zespół Scrum składa się od 5 do 9 osób. Dobrze, gdy ma charakter interdyscyplinarny i składa się z osób reprezentujących różne umiejętności. Osoby uczestniczące w zespole nie mogą uczestniczyć w innych zespołach. Główne role to:

  • Zespół projektowy scrum(ang. scrum team) - tworzą go 5-9 osób, które są bezpośrednio zaangażowane w pracę koncepcyjną i podejmowanie decyzji w ramach określonego projektu. Role projektowe poszczególnych członków zespołu nie są określone, oznacza to, że zespół sam organizuje swoje działanie.
  • Właściciel produktu (product owner)- jest rzecznikiem "konsumentów" produktu, a więc oczekiwanego wyniku projektu. Rola ta wymaga szerokiej wiedzy z wielu różnych dziedzin, zarówno związanych z funkcjami i procesami biznesowymi, jak i z potrzebami oraz motywami konsumentów. Właściciel produktu zarządza listą spraw do załatwienia, w tym dokładną specyfikacją produktu (ang. product backlog). Lista ta jest dostępna dla całej organizacji, a zespół Scrum jest świadomy wytycznych projektu.
  • Mistrz Młyna (ang. scrum master)- odgrywa rolę mentora i gospodarza, którego zadaniem jest stworzenie odpowiednich warunków do pracy zespołu. Ponadto, poprzez organizację codziennych krótkich (około 15 minutowych) spotkań z zespołem mistrz motywuje i inspiruje zespół do dalszej pracy. Każde spotkanie to także ewaluacja efektów pracy poprzedniego dnia oraz omówienie powstałych problemów i propozycji ich rozwiązania.

Infrastruktura w firmie a Scrum

Scrum nie ma zbyt dużych wymagań względem infrastruktury projektowej, poza jednym ważnym wymogiem - od samego początku metodyka wymagała by zespół pracujący nad projektem wykonywał swoją codzienną pracę w jednym pomieszczeniu. Scrum nie wymaga również specjalnego oprogramowania - starczy tablica i stick notes.

Każdy zespół Scrum powinien pracować w jednym pomieszczeniu. Z uwagi na ten fakt, pomieszczenie to powinno być raczej większe niż mniejsze, czyli około 50m2 wydaje się być wartością optymalną dla zespołu w którym pracuje 9 osób i mistrz młyna (czyli maksymalnie duży zespół).

Jednym z wymogów Scrum jest to, aby samo-organizujący się zespół wykonawczy wytwarzał produkt zgodnie z najlepszymi dostępnymi dla niego dobrymi praktykami. W przypadku tworzenia oprogramowania do takich praktyk należą np. ciągła integracja kodu i testowanie testami automatycznymi, jak i dokumentowanie kodu metod publicznego api wystawianego przez pisane moduły.

Zobacz też

Linki zewnętrzne

Bibliografia

ostatnia modyfikacja 20 sierpnia 2016 r.