Skip to content

O Scrumie słów kilka..

Scrum – jest niczym innym jak sposobem realizacji zwinnego podejścia do produkcji oprogramowania (i nie tylko), zgodnym z manifestem Agile. Głównym założeniem jest iteracyjne dostarczanie działających wersji oprogramowania. Po każdej iteracji zostaje ono wzbogacone o kolejną funkcjonalność. Sądzę, że najłatwiej pojąć tę ideę wymieniając po kolei elementy, które się na nią składają:

  1. User stories – przed rozpoczęciem realnej pracy nad produktem, najczęściej zbiera się tzw. user stories. Każda z nich opisuje określoną funkcjonalność. Następnie nadaje się każdej z nich priorytet, a także wybiera jaka część funkcjonalności powinna zostać utworzona podczas pierwszej iteracji. Na podstawie wyłonionych wymagań, tworzy się tzw. Product backlog. Jest to nic innego, jak rejestr wszystkich wymagań wraz z informacjami o nich.

  2. Sprint planning – proces planowania przebiegu sprintu. Wybiera się zadania o najwyższych priorytetach, które są zgodne z celem aktualnej iteracji. Podobnie jak w przypadku historyjek, tutaj również tworzy się tzw. Sprint backlog. Tym razem będzie się on jednak zawierał informacje związane z wykonaniem poszczególnych zadań (m.in. czasochłonność, ilość potrzebnych zasobów na wykonanie zadania, ryzyko).

  3. Sprint – okres czasu, który nie powinien być dłuższy niż miesiąc. Efektem jednego sprintu, z założenia, jest dostarczenie użytkownikowi działającej wersji produktu. Dołożone funkcjonalności powinny być znaczące (umieszczenie dodatkowego buttona do layoutu to za mało). Dobrą praktyką jest ustalanie stałej długości sprintów. Istotne jest utrzymywanie stałego kontaktu ze zleceniodawcą, aby obie strony utrzymywały spójny obraz wymagań.

  4. Daily scrum – jeden z najistotniejszych elementów podejścia. Każdego dnia powinny być przeprowadzane krótkie spotkania (10-15 minut) podczas których omawia się zadania wykonywane dnia poprzedniego i to jakie pociągnęły za sobą trudności, a także ustala co należy wykonać w dniu spotkania.

  5. Sprint review – jak sama nazwa wskazuje, jest to podsumowanie wykonanego sprintu. Rozumiemy to jako spotkanie, które odbywa się po każdej iteracji. Ocenia się wtedy pracę, którą wykonał cały zespół. Jest to czas, w którym można zgłaszać swoje opinie i zastrzeżenia związane z samym produktem lub pracą zespołu. W tym miejscu kończy się jedna iteracja. Ustala się termin kolejnego spotkania planistycznego, a w efekcie wraca się do punktu drugiego.

Przy zachowaniu stałego kontaktu z klientem, a także regularnych i częstych spotkań zespołu, można na bieżąco udoskonalać współpracę, zwiększać jakość oraz wydajność produkcji. Dzięki elastycznemu modelowi pracy, można modyfikować niektóre plany i założenia, dostosowując je do panujących realiów. Dzięki temu produkt finalny, będzie jak najbardziej zbliżony do postawionych wymagań. Z założenia zespół tworzący powinien móc samodzielnie się organizować, dobierać zadania i sposób ich implementacji. Podejście to nie sprawdzi się, jeżeli zarówno w zespole jak i na linii producent-zleceniodawca nie będzie szczerości, otwartości i dialogu.

Facebooktwitterredditlinkedinmail
Published inParadygmatyProgramowanie