Backlog — to uporządkowana lista wszystkich zadań, wymagań i ulepszeń, które należy zrealizować w projekcie. Jest centralnym artefaktem metodyk zwinnych: w Scrum backlogiem zarządza Product Owner, w Kanban — cały zespół. Według Scrum Guide, 2020, backlog nigdy nie jest ukończony: stale ewoluuje wraz z produktem i wymaganiami rynku.
Najważniejsze
Backlog (z ang. backlog) — to jednolite źródło wymagań dla wszystkich zmian w produkcie. Product Owner odpowiada za jego zawartość, dostępność i przejrzystość: każdy członek zespołu powinien rozumieć, jakie zadania znajdują się w backlogu i w jakiej kolejności będą realizowane.
Product Backlog zawiera wszystkie zadania projektu w perspektywie — od funkcji na następny kwartał po pomysły na rok. Sprint Backlog — to podzbiór zadań z Product Backlog, które zespół bierze do bieżącego sprintu. Sprint Backlog jest zamrażany na czas sprintu, podczas gdy Product Backlog zmienia się stale.
W Scrum backlog jest ściśle ustrukturyzowany: istnieje Product Backlog i Sprint Backlog, zadania są szacowane w story pointach, sprinty mają stałą długość. W Kanban backlog jest bardziej elastyczny: zadania są wyciągane w miarę zwalniania się programistów, priorytety mogą się zmieniać codziennie, a limity WIP (work in progress) regulują przepływ zadań.
Wysokiej jakości backlog zawiera różnorodne typy zadań, a nie tylko nową funkcjonalność. Zrównoważony backlog uwzględnia wszystkie aspekty rozwoju produktu.
| Typ elementu | Opis | Przykład |
|---|---|---|
| User Story | Nowa funkcjonalność z perspektywy użytkownika | „Jako użytkownik chcę zresetować hasło” |
| Bug | Defekt lub błąd w istniejącej funkcjonalności | „Przycisk rejestracji nie działa na iOS 16” |
| Tech Debt | Ulepszenie bazy kodu bez widocznego dla użytkownika efektu | „Zaktualizować zależności do najnowszych wersji” |
| Spike / Research | Badanie lub prototyp w celu zmniejszenia niepewności | „Zbadać możliwość migracji na Jetpack Compose” |
| Improvement | Usprawnienie procesów lub infrastruktury | „Skonfigurować CI/CD do automatycznej kompilacji” |
Głównym budulcem backlogu jest User Story (historia użytkownika). Dobra User Story opisuje, jaką wartość otrzyma użytkownik, a nie jakie czynności techniczne należy wykonać. Format INVEST: Independent, Negotiable, Valuable, Estimable, Small, Testable. Historia powinna mieścić się w jednym sprincie, w przeciwnym razie należy ją zdekomponować.
Kryteria akceptacji (acceptance criteria) określają, kiedy zadanie jest uważane za wykonane. Zapisuje się je w formacie Given-When-Then lub jako prostą listę warunków. Na przykład: „Użytkownik może zresetować hasło przez e-mail, wiadomość przychodzi w 30 sekund, link działa 24 godziny”. Jasne kryteria akceptacji eliminują spory na etapie demonstracji.
Priorytetyzacja — najważniejszy i najtrudniejszy proces zarządzania backlogiem. Product Owner musi uwzględniać wartość biznesową, nakład pracy, ryzyka i zależności między zadaniami.
MoSCoW — klasyczna metoda priorytetyzacji. Must have — bez zadania produkt nie działa. Should have — ważne zadanie, ale można odłożyć. Could have — ulepszenie, które chcielibyśmy zrobić. Won’t have — zadania odłożone na przyszłość. Podział: 60% Must, 20% Should, 20% Could. Metoda pomaga skupić się na krytycznej funkcjonalności.
Macierz „wartość / nakład pracy” dzieli zadania na cztery ćwiartki: Quick Wins (wysoka wartość, niski nakład) — robimy najpierw, Big Bets (wysoka wartość, wysoki nakład) — planujemy z wyprzedzeniem, Fill-ins (niska wartość, niski nakład) — robimy w przerwach, i Avoid (niska wartość, wysoki nakład) — nie robimy. To podejście pozwala maksymalizować wartość przy ograniczonych zasobach.
WSJF — metoda priorytetyzacji z SAFe, oparta na wzorze: wartość / rozmiar zadania. Im większy stosunek wartości do rozmiaru, tym wyższy priorytet. WSJF uwzględnia wartość biznesową, krytyczność czasową i ryzyka. Metoda jest odpowiednia dla dojrzałych zespołów produktowych z dużą ilością backlogu.
Efektywne zarządzanie backlogiem wymaga regularnych działań, odpowiednich narzędzi i dyscypliny całego zespołu.
Refinement — regularne spotkanie (zwykle raz w tygodniu), na którym zespół doprecyzowuje, ocenia i zmienia priorytety elementów backlogu. Scrum Guide zaleca poświęcanie na refinement nie więcej niż 10% czasu zespołu. Rezultat: górne 20-30% backlogu jest gotowe do planowania sprintu — ma ocenę, kryteria akceptacji i akcepty.
Najpopularniejsze narzędzia do zarządzania backlogiem: Jira (standard branżowy z elastyczną konfiguracją workflow), Linear (szybki i nowoczesny tracker), Trello (dla małych zespołów i Kanban), Notion (elastyczna przestrzeń z bazami danych) oraz Youtrack. Wybór narzędzia zależy od wielkości zespołu, metodologii i budżetu.
Nawet doświadczeni Product Ownerzy popełniają błędy w zarządzaniu backlogiem, które obniżają efektywność zespołu i jakość produktu.
Najczęstszy błąd — wrzucanie do backlogu wszystkich pomysłów bez filtrowania i priorytetyzacji. Backlog rozrasta się do setek zadań, w których trudno się zorientować. Rozwiązanie: regularnie czyścić backlog — usuwać nieaktualne zadania, łączyć podobne, odkładać niepilne. Zdrowy backlog zawiera 50-100 elementów, a nie tysiące.
Gdy backlog składa się tylko z User Story, dług techniczny rośnie, a ulepszenia infrastrukturalne są odkładane. Prędzej czy później zespół uderza w sufit wydajności z powodu nieaktualnych zależności, braku testów lub problemów architektonicznych. Zasada: 20% zadań w sprincie powinno być technicznych — refaktoryzacja, testy, aktualizacje.
Szczegółowe opisywanie zadań na 3-6 miesięcy do przodu — strata czasu. Wymagania się zmieniają, rynek ewoluuje, a szczegółowo rozpisane zadania trzeba przepisywać. Uszczegóławiaj tylko te zadania, które trafią do najbliższych 1-2 sprintów. Dla odległych zadań wystarczy tytuł i krótki opis.
Drobne błędy nie trafiają do backlogu, bo „nie ma czasu” lub „naprawimy później”. Z czasem błędów przybywa, jakość spada, a produkt traci zaufanie użytkowników. Zasada: każdy błąd jest rejestrowany w backlogu, nawet jeśli ma niski priorytet. Jeśli błędów nagromadziło się dużo — przeznacz sprint na ich naprawę.
Często zadawane pytania
Product Backlog — to pełna lista wszystkich zadań projektu w perspektywie długoterminowej, zarządzana przez Product Ownera. Sprint Backlog — to podzbiór zadań z Product Backlog, które zespół bierze do bieżącego sprintu. Sprint Backlog jest zamrażany na czas sprintu, Product Backlog stale się zmienia.
Za backlog odpowiada Product Owner. Określa priorytety, formułuje zadania i podejmuje decyzje o gotowości elementów do sprintu. Programiści mogą proponować zmiany, dodawać zadania techniczne i oceniać złożoność, ale ostateczna decyzja co do priorytetów należy do Product Ownera.
Grooming zaleca się przeprowadzać raz w tygodniu lub przynajmniej raz na sprint. Scrum Guide zaleca przeznaczanie na refinement nie więcej niż 10% czasu programistów. Dla dwutygodniowego sprintu to około 1-2 godziny tygodniowo. Regularny grooming zapobiega gromadzeniu się „śmieci” w backlogu.
Zdrowy Product Backlog zawiera 50-100 elementów. Mniej — oznacza, że zespół nie myśli o przyszłości, więcej — backlog zamienia się w wysypisko. Ważna jest nie liczba zadań, ale ich jakość: górne 20-30% powinny być gotowe do sprintu, pozostałe — w różnym stopniu opracowania.
Product Backlog można zmieniać w dowolnym momencie — to jego normalny stan. Ale Sprint Backlog jest zamrażany na czas sprintu, aby zespół mógł się skupić na celu. Jedyny wyjątek: gdy Product Owner usuwa zadanie ze sprintu, ponieważ straciło ono aktualność.
Podsumowanie
Opracujemy aplikację mobilną pod klucz
IT Sectr tworzy aplikacje na iOS i Androida dla startupów i firm od 2017 roku. Doradzimy Ci i zaproponujemy najlepsze rozwiązanie.
Przeczytaj również