SCRUM
Podstawy

Schemat procesów według SCRUM'a

Schemat procesów według SCRUM'a przedstawia powyższy rysunek. Projekt zaczyna się zawsze od przygotowania Product Backlog'u czyli zbioru wymagań do wykonania aby osiągnąć cel projektu. Następnie wybiera się (na spotkaniu planingowym) zbiór zadań które będziemy wykonaywac podczas SPRINT'u czyli tzw. Spring Backlog
Co to jest SPRINT?
- Sprint to w SCRUM'ie to stały czas podczas którego mamy wykonać nasze zadania. Jest to poprostu ITERACJA.
Mając Sprint Backlog zespół dzieli każde wymaganie (często zapisywane jako User Story) na szczegółowe zadania (ang. tasks) i zaczyna się bieg czyli SPRINT.
W ciągu SPRINT'u który może trwać od tygodnia do klilku tygodni (według SCRUM'a - 30 dni) zespół wykonuje zadania.
Podczas SPRINT'u który jest przedstawiony jako duża spirala na rysunku powyżej, mamy także dzienny SPRINT czyli naszą pracę zespołu w ciagu dnia. Za jej planowanie odpowiedzailne jest spotkanie daily scrums meeting.
Podczas spotkania daily scrums każdy członek zespołu odpowiada na trzy pytania:
- Nad czym pracowałem wczoraj?
- Nad czym bedę pracować dzisiaj?
- Czy mam jakieś problemy.
Ważne jest, że końcowym efekten SPRINT'u (iteracji) jest gotowy w pełni działający produkt cząstkowy.
Co to znaczy w pełni działający?
- Po angielsku nazywa się to shippable code czyli kod/produkt w wersji produkcyjnej zawierający elementy stworzone podczas sprint'u
- Boris Gloger doskonale to tłumaczy tutaj : http://borisgloger.com/2009/07/03/what-is-potential-shippable-code/
product backlog
Product Backlog to pełna lista wymagań/funkcjonalności produktu, który jest celem projektu. Jest ona przygotowywana przez Procuct Owner'a czyli osobę reprezentująca klienta (eksperta znającego biznesową funkcjonalność produktu, który może podejmować decyzje związane z produktem).
Jest to ułożona według priorytetów lista funkcjonalności, często poszczególne funkcjonalności są zapistane jako User Stories, czyli historyjki użytkownika. Są to napisane z punktu widzenia użytkownika wymagania w postaci: Jako użytkownik systemu chciałbym aby .... (tutaj opis funkcjonalności) która ..... (szczegółowy opis).
Najważniejszą częścią Product Baklog'u są priorytety, które są nadawane przez Product Owner'a. To według nich realizujemy poszczególne zadania i wybieramy je do SPRINT'ów (iteracji).

planowanie
Poniższy rysunek przedstawia planowanie według metod zwinnych w tym SCRUM'a.

Plany dzielą się na:
- Plan release'u lub projektu
- Product Backlog (czyli pracę nad projektem) możemy podzielić na Release'y czyli częściowe zbiory dostarczonych wymagań
- Plan jest podziałem Backlogu na poszczególne release'y
- Plan iteracji czyli SPRINT'u
- Plan jest przedstawiony jako SPRINT Backlog
- Plan dnia
- Planem dnia jest odpowiedź na 3 pytania na spotkaniu Daily SCRUM Meeting
SCRUM MASTER
- Osoba odpowiedzialna za proces SCRUM podczas projektu
- Kierownik Projektu według SCRUM, który jest pomocnikiem zespołu a NIE kierownikiem
- Ma on za zadanie pomogać zespołowi
- Prowadzi spotkania planingowe oraz daily scrum
- BARDZO TRUDNA ROLA

product owner
- Osoba odpowiedzialna za Product Backlog
- Priorytyzuje Product Backlog
- Podejmuje decyzje związane z elementami Product Backlog'u
- Jest to przedstawiciel klienta często:
- Client Proxy
- Osoba z marketingu
- Product Manager
- Ważne aby to była jedna osoba mająca kompetencje do podejmowania decyzji !!!




