Streszczenie: Wskaźniki Scrum to konkretne punkty danych, które zespoły Scrum mogą śledzić i wykorzystywać do poprawy wydajności i skuteczności. Zespoły Scrum używają wskaźników do podejmowania świadomych decyzji i zwiększenia efektywności planowania oraz realizacji, a także wyznaczania celów i opracowywania planów ulepszeń.
„Jeśli nie da się czegoś zmierzyć, nie da się tego poprawić” — zwraca uwagę słynny teoretyk zarządzania, Peter Drucker. Choć stwierdzenie to nie sprawdza się w każdym aspekcie życia, dotyczy zespołów praktykujących Scrum w metodyce Agile. Wykorzystując określone wskaźniki, zespoły Scrum mogą dostosowywać, modyfikować i udoskonalać skuteczność zespołu.
Czym jest Scrum?
Scrum to ramy postępowania Agile i sposób pracy, który ułatwia zespołom rozwiązywanie złożonych problemów, a równocześnie iteracyjne opracowywanie rozwiązań w ramach konkretnego celu. Metoda pracy Scrum charakteryzuje się stosowaniem sprintów, czyli zdefiniowanych odcinków czasu, w trakcie których zespoły Scrum pracują nad ukończeniem określonej ilości pracy.
Dzięki możliwościom dostosowania ramy postępowania Agile, takie jak Scrum, upowszechniły się poza zespołami technicznymi i zaczęto je stosować w działach wsparcia, projektowych, marketingowych i wielu innych. Wskaźniki Scrum jako takie odgrywają coraz większą rolę w pomiarze wydajności i skuteczności zespołu.
Czym są wskaźniki Scrum?
Wskaźniki Scrum to konkretne punkty danych, które zespoły Scrum mogą śledzić i wykorzystywać w celu poprawy wydajności i efektywności. Po zdefiniowaniu, poznaniu i wdrożeniu wskaźniki Scrum mogą stanowić wskazówki ułatwiające wyznaczenie i udoskonalenie sposobu stosowania metodyki Agile w zespole.
Zespoły Scrum wykorzystują wskaźniki do podejmowania świadomych decyzji i zwiększania wydajności planowania oraz realizacji. Można ich również użyć do wyznaczenia punktu odniesienia dla status quo, wyznaczania celów i opracowywania planów ulepszeń. Nie ma obecnie żadnej standardowej miary branżowej, w odniesieniu do której można by wszystkich porównać. Wynika to z faktu, że porównywanie punktów danych bez kontekstu przypomina porównywanie jabłka z ostrygą. Każdy zespół jest unikatowy — może różnić się rozmiarem, rodzajem używanych technologii, typem wykonywanych prac itp.
Każdy zespół musi samodzielnie uzgodnić zbiór wskaźników, które będzie śledzić, oraz określić sposób ich wykorzystania. Nie jest to wysiłek indywidualny ani coś, co może zdefiniować i wymusić na zespołach kierownictwo niższego lub wyższego szczebla.
Dlaczego potrzebujesz wskaźników Scrum?
Wskaźniki Scrum mogą ułatwić zespołom wyznaczanie wartości odniesienia i ustalanie kierunku prac. Dlatego są przydatnym narzędziem zarówno dla istniejących, jak i nowych zespołów.
Śledzenie wskaźników Scrum pomaga również zwiększyć widoczność różnych wymiarów efektywności zespołu — jego prędkości, potencjału wykonawczego, przewidywalności dostarczania czy jakości produktu. Kluczowe wskaźniki pozwalają zwiększać świadomość dotyczącą wydajności zespołu i inicjować działania mające na celu zmianę lub poprawę. Dodatkowo z czasem mogą one nawet pomóc w ocenie poziomu zadowolenia członków zespołu.
Często wiele zespołów Agile idzie na łatwiznę i ocenia wydajność zespołu, opierając się na przeczuciach lub intuicji. Choć taki nawyk może wynikać z licznych przesłanek praktycznych, prowadzi on do zmarnowania ogromnej szansy.
Czy wskaźników Scrum można używać jako wskaźników KPI?
I tak, i nie. Wskaźniki Scrum można wykorzystać do skonfigurowania kluczowych wskaźników wydajności (KPI), jednak zależy to od rodzaju i zakresu pracy. Same wskaźniki Scrum nie są w stanie zmierzyć wartości dla klienta ani wykazać, czy zespół dostarczył właściwe wyniki prac. Ostatecznym celem wskaźników KPI w zespole Agile powinno być wykazanie, na ile zespół wspiera realizację priorytetów firmy.
Podczas pomiaru wydajności zespołu Scrum należy wziąć pod uwagę także inne wskaźniki, wykraczające poza metodykę Scrum, takie jak:
- Zwrot z inwestycji (ROI) dla firmy — firmy mierzą tę wartość na wiele sposobów w zależności od celów, uwzględniając wzrost przychodów, miesięczną liczbę aktywnych użytkowników (MAU) i wiele innych danych.
- Zadowolenie klienta — śledzenie powodzenia projektu mogą ułatwić wskaźniki statystyczne, takie jak Net Promoter Score (NPS) czy ocena zadowolenia klienta (CSAT). Aby wykazać wartość dostarczaną klientom przez zespół Scrum, konieczne jest stosowanie spójnych wskaźników zadowolenia klienta w odniesieniu do każdego wydania.
- Zadowolenie zespołu — wystarczy zapytać swój zespół o poziom motywacji w trakcie projektu i zaangażowanie w działania zespołowe, aby wychwycić problemy, takie jak rotacja i odejścia pracowników czy wzrost liczby niezadowolonych programistów.
Kluczowe wydarzenia Scrum i wskaźniki do obserwacji
Choć ramy postępowania Scrum w metodyce Agile definiują kilka wydarzeń cyklicznych, takich jak sprint, planowanie sprintu, codzienne spotkanie scrumowe, przegląd sprintu czy retrospektywa sprintu, same te wydarzenia nie gwarantują postępów ani sukcesu. Każde z nich umożliwia jednak członkom zespołu analizowanie i dostosowywanie swojego sposobu pracy.
Planowanie sprintu
Spotkanie dotyczące planowania sprintu odbywa się na początku każdego sprintu. W jego trakcie zespół dzieli opisy historyjek na szczegółowe zadania. Pozwala to oszacować prace, które mają zostać wykonane w trakcie sprintu. Istnieje grupa punktów danych, które mogą usprawnić planowanie sprintu przez zespół, na przykład cele sprintu, bieżąca prędkość i potencjał wykonawczy zespołu oraz rodzaj pracy. Aby ułatwić planowanie naszych sprintów, korzystamy z szablonu spotkania dotyczącego planowania sprintów.
Cele sprintu
Cele sprintu pomagają zespołom zadecydować, co chcą uzyskać w trakcie sprintu, wprowadzają spójność wśród elementów prac i ustalają priorytety. Często przyczyniają się do realizacji większego celu, który można osiągnąć dopiero w kilku sprintach. Priorytet nadawany celom sprintu powinien zależeć od ich wpływu na uzyskanie tego wyniku. Naprawdę skuteczny zespół będzie regularnie przeglądał cele i ich priorytety, aby przyjąć odpowiednią strategię w zakresie kolejności i podziału prac technicznych.
Prędkość zespołu
Ilość pracy, której wykonania zespół może się podjąć w trakcie sprintu, zasadniczo sprowadza się do jego prędkości, czyli ilości pracy, jaką jest w stanie wykonać w określonym czasie, a także potencjału wykonawczego lub inaczej dostępności. Wykres prędkości, taki jak używany w systemie Jira, ujawnia ilość wartości dostarczanej w trakcie sprintu. To z kolei pomaga przewidywać ilość prac, którą zespół będzie w stanie wykonać w trakcie przyszłych sprintów. Prędkość zespołu można ustalić dopiero po zrealizowaniu z zespołem kilku sprintów. Z czasem prędkość ustabilizuje się w wyniku współpracy zespołu. Wiąże się to nie tylko z poszerzaniem wiedzy na temat stosowanych technologii, ale także ze zrozumieniem wzajemnych kompetencji i nauką pracy w zespole.
Poniżej przedstawiono przykładowy wykres prędkości zawierający (1) statystykę oszacowania opartą na punktach historyjek, (2) zobowiązania, czyli oszacowania wszystkich zgłoszeń w sprincie, (3) ukończone oszacowania i (4) ukończone sprinty.
Team Capacity
Nie powinien dziwić fakt, że ilość pracy, którą zespół może wykonać podczas sprintu, zależy od jego potencjału wykonawczego i dostępności. Stabilna prędkość nie ma znaczenia, jeśli połowa zespołu jest akurat na urlopie. Jednym ze sposobów planowania potencjału wykonawczego jest zgromadzenie danych na temat dostępności każdego członka zespołu na przestrzeni kilku sprintów i dodanie ich sumy w celu uzyskania procentu całkowitego potencjału wykonawczego. Zmiany na ostatnią chwilę lub sytuacje awaryjne mogą przydarzyć się każdemu, dlatego dobrym rozwiązaniem jest zachowanie 10-procentowego bufora przy podejmowaniu zobowiązania dotyczącego sprintu, aby uniknąć przyjęcia zbyt dużej ilości prac i dostarczenia zbyt małej liczby wyników.
Typ pracy
Kiedy backlog sprintu staje się coraz większą mieszaniną prac związanych z tworzeniem funkcji, poprawek błędów oraz długu technicznego, trudno jest dostrzec, na co zespół poświęca czas w trakcie sprintu. Błędy lub dług techniczny lubią przenikać do sprintów, zwłaszcza jeśli zespół programistyczny przywiązuje dużą wagę do jakości. Jeśli jednak zespół nie będzie ostrożny, może zakończyć sprint, nie wiedząc, dlaczego nie udało się dostarczyć klientom tego, co planowano.
Świadomie podchodź do pracy, którą zespół zobowiązuje się wykonać, analizując podział różnego typu prac na etapie planowania sprintu. Wówczas, nawet jeśli odkryjesz w backlogu pokaźny dług techniczny oraz prace o niskiej jakości, możesz rozwiązać problem strategicznie, planując sprint mający na celu uporanie się z długiem technicznym lub podnieść poprzeczkę w zakresie QA.
Spotkania stand-up (inaczej codzienne spotkania scrumowe)
Spotkania stand-up lub codzienne spotkania scrumowe, to krótkie spotkania odbywające się każdego dnia, podczas których członkowie zespołu zdają relację ze swojej pracy. Efektywne zespoły Scrum omawiają w trakcie spotkań stand-up nie tylko aktualne informacje na temat postępów poszczególnych osób w realizacji ich list czynności do wykonania. Te spotkania są dla nich okazją do przejrzenia postępów sprintu zespołu i zmiany priorytetów przy podejmowaniu codziennych drobnych i poważnych decyzji, które mogą w istotny sposób wpłynąć na wynik sprintu.
Mogą w tym pomóc następujące dane oraz wskaźniki:
Postępy w realizacji celów sprintu
Choć członkowie zespołu mogą mieć czytelny obraz stanu oraz postępów własnych prac, czasami łatwo jest przegapić ogólne postępy w realizacji zbiorowego celu sprintu. Dlatego ważne jest zaprezentowanie i przejrzenie wraz z zespołem listy celów sprintu w trakcie spotkania stand-up.
Potraktuj to jako okazję do omówienia, czy zespół podąża właściwym torem. Jeśli nie, zastanówcie się, co można z tym zrobić. Jeśli zaistnieje problem, którego nie można rozwiązać, ważne jest poinformowanie o tym kluczowych interesariuszy, aby każdy był na bieżąco.
Wykres spalania sprintu
Aby lepiej uzmysłowić sobie postępy zespołu, jego członkowie mogą spojrzeć na wykres spalania sprintu. Pozwala on monitorować realizację prac w trakcie sprintu. Odbywa się to poprzez porównanie czasu oraz ilości prac, które trzeba wykonać, wyrażonych w punktach historyjek lub godzinach. Ten wykres pomaga przewidywać zdolność zespołu do ukończenia prac w wyznaczonym czasie i dostrzec niekontrolowane rozrastanie się zakresu. Jeśli na wykresie spalania widać gwałtowny spadek, może to oznaczać, że ilość prac nie została oszacowana dokładnie.
Poniżej przedstawiono wykres spalania sprintu w systemie Jira zawierający (1) statystykę oszacowania, (2) pozostałe wartości odpowiadające łącznej ilości prac, która jeszcze pozostała do wykonania w trakcie sprintu, oraz (3) wytyczną ilustrującą w przybliżeniu, na jakim etapie powinien znajdować się zespół.
Rozkład obciążenia pracą
Jednym z elementów, które zespół powinien przez cały czas monitorować, jest ilość pracy przyjmowanej przez poszczególne osoby. Zrozumienie, ile poszczególne osoby biorą na siebie, jest szczególnie trudne w kulturze pracy zdalnej. Brak wglądu w tę wartość może skutkować tym, że niektórzy członkowie Twojego zespołu będą przepracowani. Spotkanie stand-up jest momentem, podczas którego członkowie zespołu mogą zwracać się do siebie o wsparcie i pomoc. Może również służyć dostosowaniu obciążenia pracą w taki sposób, aby ułatwić osiąganie celów sprintu.
Decydując się na wykorzystanie tego wskaźnika w swoim zespole, należy pamiętać o jednym — nie może się on stać bronią. Jeśli będzie wykorzystywany do pomiaru produktywności poszczególnych osób, ostatecznie może działać na zespół zniechęcająco. Zamiast tego stwórz bezpieczne środowisko, w którym każdy będzie mógł otwarcie mówić o tym, ile pracy bierze na siebie, i w jakich obszarach potrzebuje pomocy.
Analizy na podstawie kontekstu
Po ustaleniu kadencji wydarzeń Scrum ważne jest ciągłe korzystanie ze wskaźników w celu optymalizacji wydajności. Analizy są dla zespołów doskonałym narzędziem oceny wskaźników, gdy zachodzi taka potrzeba: w trakcie planowania sprintów, raportowania postępów podczas codziennych spotkań stand-up lub podczas optymalizacji dostarczania. Analizy można znaleźć w prawym górnym rogu widoków tablicy, backlogu oraz wdrożeń w systemie Jira.
Retrospektywa sprintu
Retrospektywa sprintu może przynieść korzyści nawet najlepszym zespołom. Jest to moment, w którym wraz z zespołem przyglądacie się przebiegowi sprintu, świętując sukcesy oraz wskazując obszary wymagające poprawy i przyczyny ewentualnych niepowodzeń w tych obszarach. Jest to również doskonały czas i miejsce do przyjrzenia się kluczowym wskaźnikom sprintów, w tym realizacji celów sprintu i zadowoleniu ze sprintu.
Poniżej znajduje się przykład retrospektywy mojego zespołu zamieszczonej na stronie Confluence:
Realizacja celu sprintu
Jak Twój zespół radził sobie z celami wyznaczonymi podczas planowania sprintu? Jeśli członkom zespołu udało się odhaczyć wszystkie pozycje z listy, to świetnie! Jeśli nie, co można było zrobić lepiej? Przy ocenie powodzenia zespołu mogą przydać się omówione już wcześniej wskaźniki Scrum. Warto świętować każdą poprawę w przepływie pracy zespołu. Być może Twój zespół realizował pracę szybciej, ponieważ nie było żadnych niespodziewanych zmian zakresu. Dla zespołów praktykujących podejście DevOps może to być również okazja na przejrzenie kluczowych wskaźników DevOps, takich jak czas cyklu czy częstotliwość wdrożeń, w celu omówienia ulepszeń w procesie dostarczania, które mogą zwiększyć prawdopodobieństwo realizacji celów sprintu. Takie działanie ułatwi zespołowi uporanie się z problemem i opracowanie bardziej czytelnego planu działania.
Zadowolenie ze sprintu
Po prostu zapytaj członków swojego zespołu, czy są zadowoleni ze sprintu. Niektóre zespoły wykorzystują w tym celu skalę liczbową, żartobliwe opinie, a nawet emoji / animacje GIF. Zespół może zastanowić się nad swoimi celami oraz zgodnością z nimi danego typu prac. Czy zbyt dużo czasu poświęcono na wyeliminowanie długu technicznego zamiast na ukończenie funkcji?
W trakcie całej retrospektywy zachęcaj członków zespołu do zabierania głosu, a w razie potrzeby ich wywołaj. Najlepsze retrospektywy cechuje mnogość perspektyw i różnorodność opinii. Ważne, aby do końca spotkania zespół uzgodnił najważniejsze problemy, ich właścicieli oraz zaplanował kolejne kroki zmierzające do uporania się z nimi.
Podsumowując…
Celem metodyki Scrum jest pomoc zespołom w podnoszeniu jakości ich pracy, a celem wskaźników Scrum jest dostarczenie potwierdzenia, że Scrum sprawdza się w ich przypadku. Stosując wskaźniki Scrum, zespół nie powinien czuć się nimi przytłoczony, tylko czerpać z nich inspirację. Nie trzeba śledzić każdego wskaźnika opisanego w tym artykule. Można zacząć od jednego lub dwóch i sprawdzić, czy pomogą one usprawnić pracę zespołu. Z drugiej strony Twój zespół Scrum może mieć wypracowaną dojrzałą praktykę Scrum i wskaźniki Scrum nie wniosą wiele nowego. To idealna sytuacja. Nie wolno tylko zapominać o dobrych nawykach, które te wskaźniki pomogły wypracować. Od czasu do czasu warto ponownie je przeanalizować, aby sprawdzić stan swojej praktyki Scrum.