1. Czym jest Scrum?
To, że wszystko, co dotyczy wytwarzania, jest standaryzowane, już zrozumieliście. A co, jeśli powiem wam, że standaryzowane jest w ogóle wszystko? I nie chodzi tu nawet o nazwy zmiennych i funkcji, choć one też są standaryzowane🤦♂️.
Istnieje metodyka wytwarzania — nazywa się Agile, a jej popularną realizacją jest Scrum. Scrum bywa też nazywany frameworkiem — określa wszystkie procesy w zespole: kiedy mają odbywać się spotkania, kto powinien w nich uczestniczyć, co należy omawiać, jakie wyniki spotkania mają powstać i w jakiej formie mają być zapisane 📋.
„Ale po co tyle standaryzacji” — zapytacie. Po pierwsze, pracujecie w sektorze wysokich technologii — hi-tech, te sprawy. Po drugie, tak łatwiej współpracować. A po trzecie, w nazwie waszego zawodu .NET Software Engineer zwróćcie uwagę na ostatnie słowo — inżynier. I zrozumiecie, skąd to się bierze.
2. Jak wygląda praca w Scrumie
Scrum — to zwinna metodyka zarządzania projektami, często stosowana w tworzeniu oprogramowania. Opiera się na procesach iteracyjnych i przyrostowych 🔁
Scrum dzieli projekty na cykle/etapy wytwarzania, nazywane sprintami, które zwykle trwają od dwóch do czterech tygodni. Każdy sprint zaczyna się od planowania zadań do wykonania i kończy się prezentacją, podczas której zespół demonstruje osiągnięte rezultaty 🎯.
Kluczowe elementy Scrum obejmują role, wydarzenia i artefakty.
- Podstawowe role — to Product Owner, który określa wymagania produktu, Scrum Master, wspierający proces zgodnie z zasadami Scrum, oraz zespół deweloperski, realizujący pracę.
- Podstawowe wydarzenia — to codzienne spotkania (daily meetings, czyli daily), planowanie sprintów, retrospektywy oraz demonstracje wyników pracy.
- Artefakty obejmują backlog (listę zadań) produktu, backlog sprintu oraz przyrost produktu 📋.
Nie przerażajcie się! Choć regulowanie wszystkiego i wszędzie wygląda trochę groźnie, pracować „zgodnie ze Scrumem” jest łatwo i przyjemnie. Scrum rozwiązał główny konflikt między programistami a klientami/właścicielami produktu 🤗
Programiści zawsze prosili, by zostawić ich w spokoju i pozwolić im spokojnie pracować. A właścicielom produktu często trzeba było pilnie dodać do niego nowe funkcjonalności, coś zmienić albo przeprowadzić jakiś eksperyment 🧪.
Scrum podzielił wytwarzanie na stabilne okresy — sprinty (zwykle 2 tygodnie). W trakcie jednego okresu programiści realizują tylko te zadania, które zostały zaplanowane na bieżący sprint. Jeśli klient potrzebuje czegoś na już, dodaje te funkcjonalności do następnego sprintu 🗓️.
3. Sprint & Scrum Board
Sprint — to podstawowy cykl wytwarzania w Scrumie, trwający od jednego do czterech tygodni. Jak już mówiliśmy, w tym czasie zespół pracuje nad realizacją konkretnego zestawu prac z backlogu produktu.
Na początku każdego sprintu odbywa się planowanie ⏳, podczas którego zespół wybiera zadania z backlogu produktu i zobowiązuje się je wykonać. Sprint kończy się demonstracją wykonanej pracy oraz retrospektywą, w trakcie której zespół analizuje sposób pracy nad sprintem i szuka sposobów na ulepszenie kolejnego sprintu. Takie podejście pozwala regularnie aktualizować produkt, szybko reagując na zmiany wymagań i priorytetów.
W trakcie bieżącego sprintu programiści i właściciel produktu powinni zebrać się na spotkaniu i omówić zadania na kolejny sprint.
Backlog 📚, czyli backlog, — to lista wszystkich zadań, które należy wykonać. W Scrum rozróżnia się backlog produktu, który zawiera wszystkie wymagania wobec produktu (funkcjonalności), oraz backlog sprintu, składający się z zadań wybranych do realizacji w bieżącym sprincie. Backlog jest żywym dokumentem, który regularnie się aktualizuje i przegląda, aby zapewnić zgodność z aktualnymi celami biznesowymi i warunkami rynkowymi.
Backlog bieżącego sprintu lubi się prezentować w formie Scrum Board ✅ — swoistej tablicy z zadaniami i statusami. Tablica podzielona jest na kolumny, które zwykle odpowiadają etapom realizacji zadań, takim jak „Do wykonania”, „W toku”, „W weryfikacji” oraz „Zrobione”. Dzięki temu cały zespół widzi postęp i może łatwo zidentyfikować wszelkie trudności w przepływie pracy.
GO TO FULL VERSION