Co to jest Scrum?

Co to jest Scrum?

Szukasz efektywnego sposobu na stworzenie nowego produktu? Chciałbyś wiedzieć, gdzie naprawdę jesteście w dowolnym momencie? Chciałbyś móc reagować na zmiany otoczenia, rynku czy oczekiwań klienta? Chciałbyś wykorzystać wiedzę, którą będziesz zdobywał w miarę rozwoju produktu? A może ilość niewiadomych i ryzyk jest tak duża, że ciężko zaplanować wszystkie aktywności? Jeżeli na choć jedno pytanie odpowiedziałeś tak, to Scrum jest prawdopodobnie tym, czego szukasz. Na początku służył do tworzenia produktów informatycznych, ale dzięki swojej prostocie i skuteczności zdobywa coraz większą popularność również poza IT, gdzie jest wykorzystywany do tworzenia nowych produktów i usług.

Co to jest Scrum?

Produkt i jego przyrost

Scrum to Zwinne (Agile) podejście do tworzenia nowego produktu. Produktem jest często oprogramowanie, ale może to być dowolna rzecz, która ma dla kogoś wartość. Na przykład kampania marketingowa, konferencja, video podcast albo samochód. Scrum opiera się na dostarczaniu produkt w małych przyrostach, co powoduje, że w dowolnym momencie wiemy gdzie jesteśmy i mamy działającą wersję produktu.

Role Scrum

Role w scrum

Scrum bazuje na pracy zespołu, który ma wszystkie niezbędne umiejętności i zasoby, żeby ten produkt dostarczyć. A jak nie ma, to chcemy, żeby je zdobył. Czyli najczęściej członkowie zespołu będą mieli różne, uzupełniające się kompetencje - na przykład analiza, programowanie i testowanie. Zespół nazywamy Deweloperskim, bo jest odpowiedzialny za dewelopowanie, czyli rozwój tego produktu.

Oprócz zespołu mamy również w Scrumie Właściciela Produktu (czyli Product Ownera, PO), który ma wizję swojego produktu i dzięki temu może decydować o tym, co jest w danym momencie najważniejsze.

Więcej o roli Właściciela Produktu dowiesz się z artykułu Kim jest Product Owner.

Ostatnią rolą jest Scrum Master (SM), który skupia się na tym jak działamy. Dzięki temu może się dzielić swoimi obserwacjami z pozostałymi i pomóc im zwiększyć efektywność współpracy.

O tym w jaki sposób Scrum Master wypełnia swoją rolę przeczytasz w artykule Co robi Scrum Master.

Proces Scrum

Sprint

Zespół dostarcza kolejne wersje (inkrementy) działającego produktu w krótkich cyklach zwanych Sprintami. Każdy ze Sprintów jest ograniczony czasowo i trwa maksymalnie miesiąc (zwykle od tygodnia do czterech, najpopularniejsze są Sprinty dwutygodniowe). Gwarantuje to Product Ownerowi, że wie ile pracy inwestuje i jeżeli coś złego się wydarzy, to nie straci więcej niż długość Sprintu. Tym samym nie ma ryzyka, że przez pół roku nie będzie miał pojęcia, co się dzieje z jego produktem i kiedy wreszcie zakończą się nad nim prace. Co więcej, zespół wraz z PO ustala jednoznacznie, co to znaczy, że produkt działa (Definicja Ukończenia, Definition of Done, DoD), żeby uniknąć niespodzianek tak często spotykanych szczególnie w tworzeniu oprogramowania (“No co? U mnie działa!”).

artefakty

Product Owner umieszcza listę wszystkich swoich potrzeb w Rejestrze Produktu (Product Backlog) w kolejności od najważniejszej do najmniej ważnej. PO chce na koniec Sprintu zaprezentować nową wersję produktu swoim interesariuszom, klientom i użytkownikom, tak aby dostać od nich informację zwrotną. Dlatego na początku Sprintu zespół ustala co i w jaki sposób jest w stanie dostarczyć z Product Backlogu. To spotkanie nazywamy Planowaniem Sprintu (Sprint Planning) i nawet przy miesięcznych Sprintach nie powinno trwać dłużej niż jeden dzień. Sam plan natomiast nazywamy Rejestrem Sprintu (Sprint Backlog), żeby go odróżnić od Rejestru Produktu. Ponieważ to zespół stworzył plan, tak więc zespół wie jak go zrealizować. Dlatego zespół synchronizuje się codziennie, żeby zobaczyć czy cel jest wciąż realny i jak poszczególni członkowie mogą sobie nawzajem pomóc. To krótkie spotkanie nazywamy Daily Scrum i nie powinno przekraczać 15 minut. W trakcie sprintu zespół chce również przygotować się do następnych Sprintów poprzez przeglądnięcie, omówienie i uporządkowanie Rejestru Produktu. Na to Porządkowanie Backlogu (Backlog Refinement) zespół najczęściej poświęca 5-10% całego czasu ze Sprintu.

Gdy upłynie czas zarezerwowany na Sprint pora na informację zwrotną. Najpierw zespół wraz z PO na Przeglądzie Sprintu (Sprint Review) pokaże co stworzył w trakcie Sprintu, żeby dowiedzieć się co o tym myślą interesariusze i użytkownicy. Następnie w swoim gronie w trakcie Retrospektywy Sprintu (Sprint Retrospective) zespół ustala w jaki sposób może pracować skuteczniej.

Opis elementów z jakich zbudowany jest Scrum znajdziesz w poście "Co to jest Scrum - Elementy Scruma".

Scrum Framework

Framework

Ken Schwaber, współtwórca Scruma, określa go mianem „Ramy” (Framework). Tym samym Scrum nie jest rozbudowaną metodyką, a raczej zbiorem prostych reguł pozwalających na szybkie otrzymanie informacji zwrotnej co się dzieje z produktem i jak działa nasz proces. Jak jednak dodaje Ken „Scrum jest prosty, ale trudny”. Chociaż te reguły wydają się łatwe, stosowanie Scruma natychmiast uwidacznia problemy i dysfunkcje. Tym samym Scrum nie pozwala na chowanie głowy w piasek, spychotechnikę i zrzucanie winy na innych. Zamiast tego promuje otwartość, odwagę, szacunek i współpracę.

Filary Scruma

Filary

Scrum opiera się na trzech filarach. Pierwszy to Przejrzystość (Transparency), która pozwala wszystkim zobaczyć co tak naprawdę się dzieje. Jeżeli zespół mówi, że ukończył pracę nad funkcjonalnością, to znaczy, że naprawdę ukończył, ona działa i klient może z niej korzystać. Jeżeli pojawiają się opóźnienia w stosunku do ambitnych planów Product Ownera, to są one natychmiast widoczne. Jeżeli w organizacji jest jakaś dysfunkcja (np. członkowie różnych działów ze sobą nie współpracują), to również jest to wyciągane na powierzchnię. Przejrzystość umożliwia Inspekcję (Inspect), czyli przeanalizowanie co się dzieje w zespole, produkcie czy organizacji. Tym samym Scrum pozwala szybko zauważyć problemy (np. wolny czas odpowiedzi systemu) ale również okazje (np. nowa funkcjonalność otwierająca przed nami nowy rynek). Te mogą zostać zaadresowanie przez Adaptację (Adapt), czyli zmianę planów i dostosowanie procesu czy produktu do rzeczywistości. Może to być na przykład zmiana zakresu, technologii, czy sposobu działania zespołu.

Mój kolega, Peter Stevens mówi:

najskuteczniejszą metodą, żeby Scrum nie zadziałał jest unikanie przejrzystości (brak transparencji), informacji zwrotnej (brak inspekcji) i podejmowania decyzji na podstawie tych informacji (brak adaptacji).

Więcej o fundamentach Scrum dowiesz się z artykułu Zasady Scrum.

Praktyka czyni mistrza

Szachy

Ken Schwaber i Jeff Southerland, współtwórcy Scruma, porównali ostatnio Scruma do szachów. Tam również reguł nie jest wiele, ale możliwości rozegrania partii - nieskończoność. Oczywiście są pewne praktyki i sposoby grania, ale każda partia jest niepowtarzalna. Co innego jest znać zasady, a co innego wygrywać rozgrywki. Nauczyć się reguł jest bardzo prosto, ale żeby zostać mistrzem trzeba wytrwale ćwiczyć. Cytując Mike’a Cottmeyer’a

Udawanie, że grasz w szachy kiedy tak naprawdę nie grasz w szachy nikomu nie pomaga i tylko irytuje graczy

Jeśli chcesz sprawdzić jak daleko zaszedłeś już w drodze do zwinności skorzystaj z listy kontrolnej.

Zainteresował Cię temat? Zapraszamy do lektury i obejrzenia materiałów video.

Więcej na temat Scruma dowiesz się na szkoleniach Scrum Essentials i Certified ScrumMaster.

Tomasz Wykowski

Opublikowano: 02.09.2011

Tomasz Wykowski

Międzynarodowy gawędziarz i jedyny polski trener Scrum Alliance. Ciągle poszukuje nowych rozwiązań.

Podobne

Komentarze (0)

Brak komentarzy, dodaj pierwszy!

Dodaj komentarz