Story Points w Scrumie to względna miara rozmiaru elementu backlogu. Pomagają ocenić złożoność, zakres pracy, ryzyko i niepewność, ale nie określają liczby godzin potrzebnych na realizację. Dzięki temu zespół może planować na podstawie własnych, historycznych wyników, zamiast składać pozornie precyzyjne deklaracje dotyczące czasu.
Dlaczego godziny nie zawsze sprawdzają się w IT?
Estymowanie w godzinach wygląda rozsądnie, dopóki zakres pracy jest dobrze znany i powtarzalny. W przypadku tworzenia oprogramowania często pojawiają się jednak niewidoczne wcześniej zależności, problemy integracyjne, zmiany wymagań, nieznane elementy technologii albo opóźnienia po stronie innych zespołów. Sama liczba godzin nie pokazuje, jak duża jest niepewność związana z zadaniem.
Gdy zespół mówi, że funkcja zajmie 16 godzin, odbiorca łatwo może potraktować tę wartość jako zobowiązanie. Tymczasem jest to zwykle tylko przybliżenie. Presja na precyzyjne deklaracje skłania ludzi do dodawania buforów, szczegółowego rozbijania pracy i obrony własnych wycen, zamiast do wspólnego rozpoznania problemu.
Story Points zmieniają pytanie z „ile godzin to potrwa?” na „jak duży jest ten element w porównaniu z innymi?”. To nie usuwa niepewności, ale pozwala ją lepiej uwzględnić i ogranicza fałszywe poczucie dokładności.
Czym jest wycena relatywna?
Wycena relatywna polega na porównywaniu elementów Product Backlogu między sobą. Zespół wybiera zadanie referencyjne i określa, czy kolejny element jest od niego mniejszy, podobny, czy kilka razy większy pod względem pracy i trudności.
Można powiedzieć: „ta historyjka jest około dwa razy większa od tamtej”, zamiast: „ta historyjka zajmie dwie godziny”. Wartość punktu nie ma znaczenia poza konkretnym zespołem. Dla jednej grupy 5 SP może oznaczać typowy element, a dla innej bardzo duże wymaganie.
Story Points przypisuje się zwykle całemu Product Backlog Item, czyli elementowi dostarczającemu określoną wartość, a nie pojedynczym zadaniom technicznym wykonywanym przez konkretne osoby. W wycenie zespół bierze pod uwagę kilka wymiarów:
Najczęściej analizowane czynniki to:
- Złożoność – jak trudne jest rozwiązanie problemu.
- Pracochłonność – ile działań trzeba wykonać, aby dostarczyć gotowy element.
- Ryzyko – co może utrudnić realizację lub wymagać dodatkowej pracy.
- Niepewność – czego zespół jeszcze nie wie o wymaganiu, technologii lub zależnościach.
Abstrakcja jest przydatna, ponieważ skupia rozmowę na rozmiarze problemu. Dwie osoby mogą wykonać tę samą pracę w różnym czasie, lecz względna wielkość wymagania pozostaje podobna. Dzięki temu zespół nie musi uzależniać planowania od indywidualnej szybkości jednej osoby.
Story Points a roboczogodziny – czym się różnią?
Obie metody mogą wspierać planowanie, ale opisują pracę z innej perspektywy. Godziny próbują określić czas trwania, natomiast Story Points pokazują względny rozmiar elementu i pomagają zespołowi ocenić jego pojemność w kolejnych Sprintach.
| Cecha | Story Points | Roboczogodziny |
|---|---|---|
| Jednostka | Abstrakcyjna, względna miara rozmiaru | Jednostka czasu |
| Cel | Porównanie elementów i planowanie pracy zespołu | Przybliżenie czasu wykonania pracy |
| Podejście do ryzyka | Ryzyko i niepewność są częścią oceny rozmiaru | Ryzyko trzeba dopisać do czasu lub osobnego bufora |
| Odpowiedzialność | Wspólna ocena całego zespołu | Często wycena zadania przez konkretną osobę |
| Wpływ emocjonalny | Mniejsza presja na dokładną datę lub deklarację | Łatwo staje się obietnicą albo narzędziem rozliczania |
Story Points nie są automatycznie lepsze od godzin. Ich przydatność zależy od kontekstu, stabilności zespołu i celu estymacji. Najważniejsze jest to, aby nie mieszać znaczeń obu miar.
Jak wyceniać Story Points?
Najczęściej stosuje się ciąg Fibonacciego lub jego przybliżone odmiany. Popularna skala wygląda tak: 1, 2, 3, 5, 8, 13, 20, 40. W niektórych zespołach pojawiają się także wartości 0, ½, 100 albo symbole oznaczające brak wystarczającej wiedzy.
Rosnące odstępy między liczbami mają znaczenie. Przy większych elementach trudniej wskazać różnicę między 8 a 9, ponieważ rośnie liczba niewiadomych. Skala nie zachęca więc do udawania większej dokładności, niż rzeczywiście ma zespół.
Przykładowo, jeśli mała i dobrze znana zmiana otrzymała 2 SP, podobny element może dostać 3 SP. Funkcja wymagająca kilku integracji, dodatkowych testów i pracy z nieznanym interfejsem może otrzymać 8 albo 13 SP. Nie oznacza to odpowiednio 8 lub 13 godzin.
W praktyce pomaga Planning Poker. Jest to przede wszystkim technika wymiany wiedzy, a nie samo głosowanie kartami. Proces może wyglądać następująco:
- Zespół wybiera element Product Backlogu i zapoznaje się z jego celem oraz kryteriami akceptacji.
- Każdy uczestnik samodzielnie wybiera kartę odpowiadającą jego ocenie rozmiaru.
- Wszyscy odkrywają karty jednocześnie, aby pierwsza opinia nie wpłynęła na pozostałe.
- Osoby z najniższą i najwyższą oceną wyjaśniają, jakie ryzyko lub założenie doprowadziło je do takiej wartości.
- Zespół doprecyzowuje wymaganie i głosuje ponownie, aż uzyska wystarczającą zgodność.
Rozbieżność między ocenami jest cenna. Niska wartość może oznaczać, że ktoś zna prostsze rozwiązanie, a wysoka – że inna osoba dostrzegła zależność, której reszta nie zauważyła. Jeśli dyskusja ujawnia, że wymaganie jest zbyt duże albo niejasne, należy je doprecyzować lub zdekomponować, zamiast wymuszać jedną liczbę.
Dekompozycja dużego elementu powinna przebiegać w logicznej kolejności:
- Określ, jaka wartość biznesowa ma zostać dostarczona.
- Rozpoznaj główne części funkcjonalności i zależności techniczne.
- Podziel element tak, aby każda część mogła dostarczyć sensowny rezultat.
- Sprawdź, czy mniejsze elementy mieszczą się w jednym Sprincie i dają się niezależnie zweryfikować.
- Oszacuj nowe elementy ponownie, zamiast mechanicznie dzielić pierwotną liczbę punktów.
Po kilku Sprintach zespół może obserwować swoją Velocity, czyli liczbę Story Points dostarczanych w kolejnych iteracjach. Służy ona do prognozowania pojemności, a nie do oceniania produktywności ludzi. Wynik pojedynczego Sprintu może się zmieniać, dlatego sens mają dopiero dane z większej liczby iteracji.
Jakie korzyści dają Story Points?
Dobrze używane punkty pomagają zespołowi rozmawiać o pracy w sposób mniej obciążony presją terminu. Wycena jest wspólna, a każdy uczestnik może ujawnić informacje dotyczące testów, wdrożenia, architektury lub zależności.
Najważniejsze korzyści obejmują:
- Wspólny język do porównywania elementów backlogu.
- Lepszą wymianę wiedzy między programistami, testerami i innymi osobami zaangażowanymi w dostarczanie produktu.
- Uwzględnianie ryzyka i niewiadomych bez udawania precyzji godzinowej.
- Planowanie Sprintów na podstawie rzeczywistych wyników zespołu.
- Łatwiejsze wykrywanie zbyt dużych, niejasnych lub wymagających doprecyzowania elementów.
Antywzorce w pracy ze Story Points
Najczęstszy błąd polega na traktowaniu punktów jak ukrytych godzin. Przelicznik w rodzaju „1 SP to 8 godzin” niszczy sens wyceny relatywnej. Gdy zespół zaczyna używać takiego przelicznika, wraca do dokładnie tych problemów, przed którymi miały chronić Story Points.
Podobnym antywzorce jest przeliczanie punktów na pieniądze, dni pracy lub indywidualne wyniki programistów. Koszt projektu można analizować na poziomie zarządzania, ale nie powinno się zmieniać punktów zespołu w walutę i używać tego jako bezpośredniego miernika wartości pracy.
Nie należy także podnosić każdej estymaty przez „magiczny mnożnik”. Jeśli zespół ma tendencję do niedoszacowywania, lepiej sprawdzić, jakie informacje pomija, czy elementy nie są zbyt duże i czy dane z poprzednich Sprintów są właściwie interpretowane. Sztuczny bufor nie zastępuje uczenia się na podstawie rzeczywistych wyników.
Product Owner ustala priorytety i wyjaśnia wartość biznesową, ale nie powinien narzucać zespołowi liczby Story Points. Estymację wykonują osoby, które wspólnie dostarczają element, ponieważ to one znają techniczne zależności i biorą odpowiedzialność za planowanie pracy. PO może zakwestionować niezrozumiałe założenia, lecz nie powinien wymuszać, aby określona liczba punktów zmieściła się w Sprincie.
Story Points nie powinny też służyć do porównywania zespołów. Każdy zespół buduje własną skalę odniesienia, dlatego Velocity jednej grupy nie jest miarodajna dla innej. Używanie punktów jako rankingu prowadzi do inflacji estymat i osłabia szczerość podczas Planning Pokera.
Kiedy Story Points nie są potrzebne?
Relatywna wycena nie jest obowiązkowym elementem każdego projektu. Może być zbędna, gdy koszt wprowadzenia metody przewyższa jej wartość albo zespół nie będzie miał warunków do korzystania z danych historycznych.
Rozważ rezygnację z SP w następujących sytuacjach:
- Skład zespołu często się zmienia i trudno zbudować stabilną historię wspólnych wyników.
- Zespół jest bardzo mały, na przykład liczy jedną lub dwie osoby, więc formalna sesja wyceny niewiele wnosi.
- Projekt jest krótki i nie ma potrzeby prognozowania większego zakresu ani harmonogramu.
- Praca ma charakter badawczy, a jej zakres zmienia się szybciej, niż można go sensownie oszacować.
- Członkowie zespołu pracują niemal całkowicie niezależnie i nie mogą wzajemnie przejmować zadań.
- Zespół nie rozumie jeszcze metody, a prostsze śledzenie liczby podobnych elementów lepiej odpowiada jego potrzebom.
Alternatywą może być liczenie ukończonych elementów, rozmiary T-shirt Sizes albo ograniczenie liczby elementów rozpoczynanych jednocześnie. Nie istnieje jedna metoda pasująca do każdego zespołu.
Najczęstsze pytania o Story Points
Czy muszę używać Story Points w Scrumie?
Nie. Scrum nie wymaga estymowania elementów backlogu za pomocą Story Points. To praktyka wspierająca planowanie, a nie reguła frameworka. Zespół może używać godzin, rozmiarów względnych, liczby podobnych elementów albo innego podejścia, jeśli pomaga mu podejmować lepsze decyzje.
Co zrobić, jeśli zespół nie chce używać SP?
Najpierw trzeba ustalić przyczynę. Opór może wynikać z wcześniejszego używania punktów do rozliczania ludzi, braku wspólnej skali albo zbyt długich sesji estymacyjnych. Nie warto wdrażać metody przez nakaz. Można przeprowadzić próbę na części backlogu, jasno oddzielić planowanie od raportowania i po kilku Sprintach ocenić, czy metoda przynosi zespołowi wartość.
Jak przeliczyć Story Points na czas projektu?
Nie należy przeliczać pojedynczego punktu na stałą liczbę godzin. Można natomiast użyć danych historycznych do prognozy zakresu. Jeśli zespół regularnie dostarcza podobną liczbę punktów w Sprintach, jego średnia prędkość pomaga ocenić, ile iteracji może wymagać określony backlog. To prognoza obarczona niepewnością, a nie gwarantowany termin.
Scrum nie potrzebuje pozornie dokładnych liczb. Potrzebuje przejrzystości, częstej weryfikacji założeń i zespołu, który wspólnie rozumie zakres pracy. Story Points mają sens wtedy, gdy wspierają te cele – nie wtedy, gdy stają się kolejnym narzędziem kontroli.