Select Page

Velocity w Scrum, czyli znaczenie prędkości w Agile

by | kwi 7, 2025 | Scrum | 0 comments

Zespoły Agile nieustannie poszukują sposobów na mierzenie i przewidywanie swoich postępów. Jednym z powszechnie stosowanych w Scrumie wskaźników jest velocity, czyli prędkość zespołu. Zrozumienie, czym jest velocity, jak się ją oblicza i jakie ma znaczenie, pozwala zespołom na efektywniejsze planowanie i dostarczanie wartości.

Co oznacza velocity w Scrum?

W kontekście Scruma velocity odnosi się do ilości pracy, jaką Zespół Scrum jest w stanie ukończyć w ciągu jednego Sprintu. Praca ta najczęściej mierzona jest w Story Pointach, które są relatywną miarą wysiłku, złożoności i ryzyka związanego z danym elementem Backlogu Produktu, na przykład user story. Velocity nie jest miarą czasu ani liczbą osób pracujących, lecz odzwierciedleniem zdolności zespołu do dostarczania ukończonej pracy. 

Definicja według Scrum Glossary:

Velocity (prędkość): opcjonalny, ale często używany wskaźnik wielkości Backlogu Produktu przekształconego w przyrost produktu w trakcie Sprintu przez Zespół Scrumowy, śledzony przez Deweloperów w ramach Zespołu Scrumowego”

Od 2020 jest to opcjonalny wskaźnik, który Zespół Scrum może wykorzystać do monitorowania swoich postępów i planowania przyszłych Sprintów. We wcześniejszych przewodnikach velocity było traktowane jako część frameworku. Obecnie w Scrum Guide mamy jedynie wzmiankę o korzystaniu z  past performance do planowania Sprintu. Jest wiele praktyk mierzenia wydajności zespołów w Agile. Równie dobrze możemy skorzystać z takich miar jak Throughput i Cycle Time, żeby zaplanować Sprint.

Velocity powinno być zawsze używane jako wskaźnik, a nie miara, która będzie potem traktowana jako KPI, ponieważ bardzo łatwo można zmanipulować wielkość velocity, zmieniając oszacowania elementów Backlogu Produktu. Kiedy managerowie chcą, żeby velocity rosło co Sprint, to zaczyna rosnąć zgodnie z przewidywaniami. Tylko że teraz ten wskaźnik jest bezwartościowy, bo rzeczywista prędkość zespołu tak naprawdę się nie zmieniła.

Jaka jest dobra prędkość Sprintu w Scrum?

W Scrumie nie istnieje uniwersalna definicja “dobrej” prędkości Sprintu. Velocity jest unikalne dla każdego Zespołu Scrumowego i zależy od wielu czynników, takich jak wielkość zespołu, jego doświadczenie, złożoność realizowanej pracy oraz stabilność środowiska. 

Na velocity będzie miała wpływ także skala stosowana do szacowania elementów Backlogu Produktu. Spójrzmy na dwa siedmioosobowe Zespoły Scrumowe pracujące nad różnymi produktami. Jeden zespół może oszacować średnią user story mieszczącą się do Sprintu na 3 Story Pointy, a drugi może przyjąć 8 Story Pointów jako swój punkt odniesienia. W rezultacie jeden zespół będzie miał średnie velocity na poziomie 25 SP/Sprint, a drugi 55 SP/Sprint. To nie oznacza, że drugi zespół jest dwa razy szybszy.

Zamiast dążyć do osiągnięcia określonej liczby, zespół powinien skupić się na obserwowaniu trendów swojej własnej velocity w czasie. Stała lub rosnąca prędkość może wskazywać na dojrzewanie zespołu i poprawę jego efektywności. Pozytywne zmiany w velocity mogą być także związane z usuwaniem przeszkód na drodze zespołu. Z kolei zmiany w składzie zespołu, niezaplanowana praca i nieobecności będą negatywnie wpływać na prędkość. 

Ważniejsze od konkretnej wartości velocity jest utrzymanie zrównoważonego tempa pracy, które pozwala zespołowi dostarczać wysokiej jakości Incrementy w długim okresie czasu w sposób przewidywalny. Agile coach może wspierać zespół w analizie i zrozumieniu swojej velocity.

Jak obliczyć velocity?

Obliczenie velocity jest stosunkowo proste. Po zakończeniu Sprintu zespół sumuje Story Pointy wszystkich elementów Backlogu Produktu, które zostały w pełni ukończone zgodnie z Definicją Ukończenia. Ta suma stanowi velocity danego Sprintu. Elementy nieukończone są traktowane jako zero i wracają do Backlogu Produktu.

Aby uzyskać bardziej miarodajny obraz do planowania, zaleca się obliczanie średniej velocity z kilku ostatnich Sprintów (zazwyczaj 3–5). Średnia velocity pozwala na uwzględnienie naturalnych wahań wydajności zespołu i stanowi lepszą podstawę do prognozowania przyszłej pracy. Wartości skrajne mogą być odrzucone przy obliczaniu średniej, aby uniknąć zakłócenia obrazu. Niektórzy twierdzą, że mediana kilku ostatnich Sprintów sprawdzi się lepiej. Product Owner powinien rozumieć, jak obliczana jest velocity, aby móc efektywnie współpracować z zespołem przy planowaniu.

Dlaczego prędkość jest ważna w Scrum?

Zespoły samozarządzające, które są fundamentem Scruma, wykorzystują velocity, aby zaplanować Sprint i prognozować postęp w dalszym horyzoncie czasowym. Znając prędkość Zespołu Scrum, można policzyć, kiedy będzie możliwe wydanie produktu lub kiedy zostanie ukończony konkretny element Backlogu Produktu.

Do Planowania Sprintu najczęściej wykorzystuje się wzorzec Yesterday’s Weather, czyli zakładamy, że w tym Sprincie Zespół Scrum prawdopodobnie ukończy tyle samo pracy, co w poprzednim. Oczywiście zakładamy tutaj, że Sprinty są tej samej długości. Wtedy można je porównywać.

Velocity odgrywa istotną rolę w Scrumie, przede wszystkim wspomagając planowanie i prognozowanie. Znając swoją średnią prędkość, Zespół Scrum może w bardziej realistyczny sposób prognozować, ile pracy jest w stanie ukończyć w nadchodzących Sprintach. Pomaga to w podejmowaniu świadomych decyzji podczas Planowania Sprintu dotyczących liczby elementów Backlogu Produktu, które zostaną podjęte do realizacji. Velocity dostarcza również wglądu w postępy pracy w dłuższej perspektywie. Obserwując zmiany w prędkości, Zespół Scrum i interesariusze mogą ocenić, czy tempo pracy jest wystarczające do osiągnięcia Celu Produktu w przewidywanym czasie. Ciągłe śledzenie velocity ze Sprintu na Sprint pozwala na szybkie zareagowanie i wprowadzenie zmiany w oczekiwanym zakresie lub czasie. Regularne śledzenie velocity wspiera empiryczne podejście do zarządzania zakresem i datami wydań.

Jak wykorzystać velocity do przewidywania postępów pracy?

Velocity, w połączeniu z oszacowaniami pozostałych elementów Backlogu Produktu, może być wykorzystana do prognozowania potencjalnych dat ukończenia przyszłych prac lub całych wydań. Można w tym celu stosować różne techniki wizualizacji, takie jak wykresy spalania (burn-down charts) czy stożek niepewności (Cone of Uncertainty). Prognozy oparte na velocity nie są jednak absolutnymi pewnikami, lecz stanowią przybliżenia oparte na dotychczasowych wynikach zespołu. Jeżeli Zespół Scrum ma średnie velocity na poziomie 25 SP/Sprint, to w ciągu kolejnych 5 Sprintów powinien ukończyć 125 SP. Jeżeli chcemy wiedzieć, ile potrzebujemy czasu, żeby ukończyć funkcjonalność oszacowaną w sumie na 200 SP, to wystarczy tę wartość podzielić przez velocity. Potrzebujemy 8 Sprintów.

W złożonych środowiskach Agile, gdzie zmiany są nieuniknione, velocity pomaga w adaptacyjnym planowaniu i dostosowywaniu oczekiwań interesariuszy. Prognoza może się zmienić. Agile leader powinien rozumieć, jak interpretować velocity do celów planowania strategicznego.

Podsumowanie

Velocity w Scrumie to cenny wskaźnik, który dostarcza zespołom Scrum informacji o ich zdolności do dostarczania wartości. Nie jest celem samym w sobie, lecz narzędziem wspierającym efektywne planowanie, monitorowanie postępów i prognozowanie przyszłych prac.

Zespoły powinny skupić się na zrozumieniu i wykorzystaniu swojej unikalnej velocity, dążąc do ciągłego doskonalenia i przewidywalności w dostarczaniu przyrostów produktu, co ostatecznie przyczynia się do osiągnięcia Celu Produktu.

Jednak nadal należy pamiętać, że velocity to jedynie wskaźnik, który pomaga tworzyć przybliżone prognozy, i łatwo może ulec zmianie.

Krystian Kaczor
Latest posts by Krystian Kaczor (see all)