METODYKA ZARZĄDZANIA PROJEKTEM – SCRUM

Transkrypt

METODYKA ZARZĄDZANIA PROJEKTEM – SCRUM
13.07.2012
Łukasz Guzowski
METODYKA ZARZĄDZANIA PROJEKTEM – SCRUM
Wstęp
Metodyka to zbiór zasad, metod, technik wraz ze sposobem ich zastosowań mających doprowadzić
do konkretnego celu. Przy projektowaniu aplikacji można wyróżnić 2 rodzaje metodyk. Pierwszy z
nich to metodyki ścisłe, w których duże znaczenie ma obszerna dokumentacja, formalne ustalania i
podążanie za ustalonym planem. Ten rodzaj metodyk idealnie sprawdza się przy dużych projektach,
gdzie koszty są wysokie, a ilość zaangażowanych osób utrudnia komunikację. Drugi rodzaj – metodyki
zwinne (agile) powstały dla małych projektów. Mała ilość osób ułatwia porozumiewanie się między
sobą dzięki czemu można zredukować znaczenie dokumentacji, a zaangażowanie klienta w proces
tworzenia pozwala odejść od działania według ścisłego planu i formalnych ustaleń.
Podstawowe informacje o scrumie
Scrum to zwinna, iteracyjna metodyka. Nazwa ta pochodzi ze stałej części gry w rugby. Kontrola
procesów tworzenia oprogramowania opiera się na 3 filarach:
przejrzystości – wszystkie aspekty procesów muszą być opisane znanymi standardami tak, aby każda
osoba powiązana z projektem mogła bez problemu je zrozumieć;
inspekcji – częsta i regularna kontrola dokumentacji i wytwarzanych elementów, w celu szybkiego
wykrycia i usunięcia niepożądanych odstępstw;
adaptacji – korygowanie procesu lub materiału poddanego procesowi w jak najszybszym czasie po
wykryciu odstępstw.
Zespół scrumowy
Tak jak w każdej metodyce, w scrumie każda osoba powiązana z projektem ma przypisaną role.
Pierwsza z nich to właściciel produktu. Osoba mająca tą role jest odpowiedzialna za kontakt z
klientem, zmaksymalizowanie wartości produktu i wydajności pracy oraz zarządzająca rejestrem
produktu, czyli uporządkowaną listą cech, funkcjonalności, wymagań, ulepszeń i korekt błędów, które
mają zostać wprowadzone do produktu. Programiści (deweloperzy) tworzą tzw. zespół deweloperski.
Są oni wielofunkcyjną i samoorganizującą się grupą liczącą od 3 do 9 osób. Ostatnia rola to scrum
master. Jest to osoba odpowiedzialna za wdrażanie, zrozumienie i praktykowanie metodyki scrum.
Zdarzenia w scrumie
Metodyka scrum opiera się na regularnych spotkaniach zespołu, w których wykonywane jest ściśle
określone zadanie. Spotkania te powtarzają się aż do momentu ukończenia aplikacji. Głównym
zdarzeniem jest sprint. Trwa on nie dłużej niż 4 tygodnie. Celem sprintu jest wytworzenie w pełni
działającej funkcjonalności oprogramowania. Sprint można podzielić na inne zdarzenia. Na początku
sprintu jest planowanie sprintu. W tym zdarzeniu spotyka się cały zespół, aby ustalić jaka
funkcjonalność zostanie wykonana w sprintcie i jak zostanie zrealizowana praca do osiągnięcia tego
celu. Funkcjonalność ta wybierana jest z rejestru produktu tworząc rejestr sprintu. Kolejnym etapem
jest już samo programowanie aplikacji. Na początku każdego dnia pracy programistów odbywa się
codzienny scrum. Jest to spotkanie zespołu deweloperskiego trwające nie dłużej niż 15 minut,
którego celem jest uzgodnienie, co zostało ukończone od ostatniego codziennego scruma,
opracowanie planu działań na najbliższe 24 godziny i omówienie przeszkód, jakie mogą stworzyć
problemy. Ostatniego dnia sprintu odbywają się 2 zdarzenia. Pierwsze z nich to przegląd sprintu.
Celem tego zdarzenia jest przeprowadzenie inspekcji i wprowadzenie ewentualnych poprawek do
rejestru produktu. Drugim zdarzeniem jest retrospektywa sprintu. Podczas tego spotkania zespół
scrumowy omawia dotychczasowe działania zespołu i planuje ich usprawnienia.
Bibliografia
http://www.scrum.org/storage/scrumguides/Scrum%20Guide%20-%20PL.pdf
http://oskar-at-net.blogspot.com/2011/11/scrum-i-team-foundation-system-cz1.html
http://pl.wikipedia.org/wiki/Metodyka