piątek, 28 grudnia 2012

[scrum] Wykresy spalania

Celem stosowania wykresów spalania jest dostarczanie Zespołowi Scrum'owemu aktualnych informacji na temat ilości pracy, jaka pozostała do wykonania przed końcem sprintu. Głównym beneficjentem tworzenia i aktualizowania wykresu spalania jest Zespół Deweloperski, który dzięki wizualizacji postępów swojej pracy może dokonywać różnego rodzaju zmian w jej organizacji.

Wykresy spalania są niezwykle prostym narzędziem. Mimo to, można na ich podstawie wyciągać cenne wnioski dotyczące pracy zespołowej. Wymaga to utrzymywania rygoru Daily Scrum, który jest podstawowym źródłem danych dla wykresu spalania, a także dyscypliny Zespołu Deweloperskiego. Dobry Scrum Master dba o codzienne aktualizacje wykresu spalania, a także o jego powszechną znajomość i zrozumienie w całym Zespole Scrum'owym. Zdecydowanie warto dbać o jakość wykresu, ponieważ w określonych sytuacjach może się on stać podstawą do negocjacji z Właścicielem Produktu (Product Owner).


Tworzenie Wykresu Spalania
Do przygotowania wykresu spalania niezbędny jest Rejestr Sprintu (Sprint Backlog), zawierający informacje o szacowanej ilości pracy w całym sprincie, czyli Pracy Zaplanowanej (Estimated Velocity). Szacowanie jest jednym z najważniejszych zadań stojących przed Zespołem Deweloperskim podczas Planowania Sprintu, ponieważ od niego zależy ile elementów Rejestru Produktu (Product Backlog) wejdzie do Rejestru Sprintu. Jest to szczególnie trudne dla organizacji dopiero zaczynających pracę ze Scrum'em, ponieważ nie mają one informacji z poprzednich projektów, dotyczących relacji pomiędzy Pracą Zaplanowaną, a Pracą Wykonaną (Actual Velocity). Henrik Kniberg radzi w takich wypadkach przyjmować wartość Współczynnika Skupienia (Focus Factor) równą 70%.

Jeżeli Rejestr Sprintu jest gotowy, można przystąpić do tworzenia Wykresu Spalania. Dwie najważniejsze informacje, potrzebne na początku, to:

  1. Praca Zaplanowana
  2. Długość sprintu
Posiadając te dane można wykreślić układ współrzędnych, który posłuży za kanwę Wykresu Spalania.

Do sporządzenia powyższego przykładowego wykresu spalania przyjęto, że Zaplanowana Praca wynosi 14 Story Points, a czas trwania Sprintu to 14 dni. Weekendy zostały wykluczone z wykresu, jako dni potencjalnie poświęcane na inne zajęcia niż praca. Oś Y reprezentuje Pracę, a X czas sprintu. Linia trendu, nazwana "Drogą do sukcesu" obrazuje w jakim tempie powinny postępować prace, żeby cel Sprintu został osiągnięty i wszystkie przyjęte do Sprintu elementy Rejestru Produktu zostały wykonane na czas.

Warto zwrócić uwagę, że Wykres Spalania nie określa żadnego typu współzależności pomiędzy wykonywanymi przez Zespół Deweloperski zadaniami. Dzięki temu, nie zostaje złamana zasada samoorganizacji, zgodnie z którą Zespół Deweloperski sam decyduje to tym jak wykona Zaplanowaną Pracę. Z samoorganizacją kłóciłby się na przykład popularny Harmonogram Gantta, który w innych metodykach zarządzania projektami jest wykorzystywany bardzo często.

Wykres Spalania jest uzupełniany codziennie, po Daily Srum'ie. Zespół Deweloperski dostarcza informacji o nowych szacunkach, a także określa, które elementy Rejestru Sprintu są już zakończone. Dzięki tym danym Scrum Master może obliczyć jaka liczba Story Points została "spalona" i zaznaczyć to na wykresie.
Powyższy schemat pokazuje potencjalny Wykres Spalania, jaki został wygenerowany podczas czternastodniowego Sprintu. Do wyznaczenia czerwonej krzywej "Pozostała Praca" Scrum Master musi po każdym Daily Scrum'ie zapytać Zespół Deweloperski ile pracy (w Story Points) zostało do ukończenia wszystkich elementów Rejestru Sprintu. Uzyskaną odpowiedź zaznacza na Wykresie Spalania.

Interpretacja Wykresu Spalania
Powyższy wykres pokazuje sytuację idealną, czyli taką, w której Zespół Deweloperski ukończył wszystkie przyjęte do Sprintu elementy Rejestru Produktu, a podczas pracy nie napotykał na anomalie. Wskazują na to niewielkie odchylenia od "Drogi do sukcesu", która pokazuje jak w przybliżeniu powinny postępować prace, żeby ukończyć wszystkie zadania w zaplanowanym czasie.

Scrum Master musi być czujny i odpowiednio reagować na odchylenia pojawiające się na Wykresie Spalania. Wprawdzie Zespół Deweloperski organizuje się samodzielnie, ale zadaniem Scrum Mastera jest czuwanie nad tym, żeby odpowiednio reagował na niepokojące sygnały płynące z Wykresu Spalania.



Wykres zamieszczony powyżej prezentuje dwie potencjalne sytuacje, jakie mogą wystąpić podczas Sprintu. Pierwsza z nich, zaznaczona czerwoną krzywą, jest bardzo niebezpieczna, ponieważ wskazuje na to, że Zespół Deweloperski nie zrealizuje zadeklarowanego zakresu zadań. Może ona wystąpić, jeżeli:

  1. Zespół źle oszacował czas potrzebny na wykonanie zadań (wznoszenie się wykresu może oznaczać aktualizację szacunków)
  2. Zespół nie potrafi się zorganizować
Druga sytuacja również nie jest korzystna. Może wskazywać na to, że Zespół Deweloperski wziął na siebie zbyt mało zadań (na przykład z powodu zbyt ostrożnego szacowania czasu) i powinien negocjować z Właścicielem Produktu przyjęcie kolejnych elementów Rejestru Produktu do Sprintu. Możliwe jest także, że  Zespół Deweloperski zaczął prace nad mniej ważnymi zadaniami i zaniedbuje priorytety. Scrum Master może zbadać przyczyny zaburzenia wykresu analizując aktualny stan Rejestru Sprintu. 

Wnioski
Wykresy Spalania są prostym, a zarazem potężnym narzędziem w rękach dobrego Scrum Mastera. Pozwalają na odpowiednio szybką adaptację Zespołu Deweloperskiego do zmian zachodzących w projekcie, zapobiegają konfliktom z Właścicielem Produktu na koniec Sprintu, a także motywują Zespół Deweloperski do coraz lepszej samoorganizacji. Scrum Master musi dbać o aktualność i przejrzystość Wykresu Spalania oraz zapewniać jego powszechną dostępność.

Brak komentarzy:

Prześlij komentarz