Jak się synchronizować, czyli Daily Scrum in action

Daily Scrum

Scrum stawia na pracę zespołową. Zespół wraz z Product Ownerem ustala, co w ciągu najbliższego Spintu ma dostarczyć i przygotowuje plan działania. Z doświadczenia wiemy, że sam plan nie wystarcza, aby osiągnać sukces. Potrzebna jeszcze jest częsta synchronizacja pomiędzy członkami Zespołu i reagowanie na zmiany.

W Scrum komunikacja i weryfikacja planów następuje na kilku poziomach.

Ciągła współpraca

Członkowie Zespołu ciągle rozmawiają ze sobą i Product Ownerem, dogrywają szczegóły techniczne pracując wspólnie w mniejszych grupach przez cały czas trwania Sprintu. Wymiana informacji i dostosowywanie planu do rzeczywistości następuje również na poziomie praktyk inżynieryjnych. Wymuszają ją Pair Programming czy Ciągła Integracja.

Broadcast zespołowy

Drugi poziom sychronizacji obsługuje sprawy bieżące, pilne i niecierpiące zwłoki. W zdrowym Zespole zauważysz asynchroniczny przepływ komunikatów w technoslangu: “Wrzucam zmiany”, “Poszedł deploy”, “Uwaga, produkcja leży, już naprawiam”, “Nie dotykać TESTa, bo idzie regresja”. Od specyfiki zespołu zależy w jaki sposób się komunikuje. Jedni będą wykrzykiwać te informacje w przestrzeni, gdzie Zespół pracuje, inni wyślą kody komunikatorem. Najczęściej są to informacje, które nie wymagają dyskusji, a jedynie uwagi lub podjęcia konkretnej akcji.

Daily

Framework Scrum ma również wbudowane “narzędzie” do synchronizacji wewnątrz Sprintu. Członkowie Zespołu raz dziennie spotykają się na krótkim (max 15 min) spotkaniu nazywanym formalnie Codziennym Scrumem (Daily Scrum), albo po prostu Daily. Scrum Guide sugeruje, żeby członkowie Zespołu odpowiedzieli na trzy pytania:

  • Co zrobiłem wczoraj co pomoże Zespołowi osiągnąć Cel Sprintu?
  • Co chcę zrobić dzisiaj, żeby pomóc Zespołowi dostarczyć zgodnie z Celem Sprintu?
  • Czy widzę jakieś przeszkody, które mogą nam uniemożliwić osiągnięcie Celu?

Czego unikać na Daily?

Trzy pytania ze Scrum Guide zapalają czerwoną lampkę w głowach niektórych szefów. I tak w wyniku niezrozumienia intencji w wielu firmach Daily stało się narzędziem do mikro-zarządzania pracownikami. Zamiast pozwolić Zespołowi porozmawiać, managerowie ustalają z kolejnymi pracownikami, co zrobili wczoraj, co mają zrobić dzisiaj. Nie ma żadnej synchronizacji między członkami Zespołu a jedynie między pojedynczymi osobami i managerem. Takie Daily często wygląda tak „wczoraj pracowałem nad ticketem 174, dzisiaj będę pracować nad ticketem 175. Żadnych przeszkód”. W tym czasie reszta się nudzi, czekając na swoją kolej.

Sygnał ostrzegawczy: takie „Daily” potrafi trwać nawet godzinę i odbywa się tylko, gdy manager o nim przypomni. Więcej wymiany informacji między pracownikami jest zaraz po daily niż w trakcie.

Dobre pratyki

Daily ma na celu synchronizację, więc ustalenie co mamy wspólnie do zrobienia, jakie mamy zależności, kto potrzebuje pomocy i czy plan jest realny.

Rozmowa o zadaniach

Dlatego część zespołów, zamiast mówić „co ja zrobiłem”, rozmawia o kolejnych PBI. Zauważ że 3 pytania ze Scrum Guide wpisują się w to idealnie.

Pozytywne podejście

Zamiast pytać o przeszkody, łatwiej zapytać o to co może nam pomóc osiągnąć cel szybciej. Pamiętajcie. gdy skupiacie się tylko na problemach możecie przeoczyć szanse na poprawę.

Potwierdzania planu

Warto sprawdzić jak posuwamy się z pracą. Są Zespoły, którym wystarczy analiza tablicy, wiele zespołów używa wykresów spalania jako wizualizacji. Niezależnie od narzędzia kończąc Daily istotne jest by Zespół potwierdził, że plan wciąż jest realny.

Timebox

Daily powinno być krótkie, max kwadrans. Długie Daily oznacza albo, że nie rozmawiacie ze sobą poza tym spotkaniem, albo że wchodzicie w szczegóły, które powinny być przegadane w wąskim gronie poza Daily (patrz punkt pierwszy). Z drugiej strony bardzo krótkie Daily sugeruje, że nie macie żadnych zależności między sobą i prawdopodobnie nie czujecie się odpowiedzialni za cel sprintu pracujecie jako jeden zespół. Niektórzy nazywają to spotkanie “Stand Up”. Ten kryptonim wywodzi się z przekonania, że jeśli będziemy stać podczas spotkania to pomoże nam się to skupić. Jeśli podczas Daily Scrum zaczynają Cię boleć nogi to sygnał alarmowy.

Rytm

Daily nie ma wyznaczonej pory i każdy Zespół sam sobie dobiera godzinę, która mu odpowiada. Ja osobiście wolę sobie zaplanować dzień rano niż wieczorem, ale wiele zależy od specyfiki pracy. Ważne, aby mieć te spotkania o tej samej porze i w tym samym miejscu co pozwala na stały rytm pracy bez pytań “to, o której dziś Daily?”.

“No report zone”

Na Daily może pojawić się dowolna osoba, która jest zainteresowana tym co się dzieje. Natomiast jej rola ogranicza się do bycia obserwatorem. Dlatego jeżeli zauważysz, że manager zaczyna mikro-zarządzać, to poproś go o nie przychodzenie na to spotkanie. Zareaguj za każdym razem, gdy zobaczysz, że zespół do kogoś raportuje. Dlaczego miałby to robić? Scrum jest często krokiem w ewolucji organizacji. Jeśli Zespół pracował dotychczas w innej strukturze, potrzebny jest czas by pozbyć się starych nawyków. Takie reakcje może spowodować osoba postrzegana dawniej jako kadra zarządzająca przyjmująca rolę PO lub SM, a nawet osoba o statusie lidera technicznego dołączająca do zespołu.

Product Owner, który nie jest obowiązkowy na Daily jest zawsze mile widziany, bo może przynieść ważne informacje i dowiedzieć się, jakiej pomocy potrzebuje Zespół. Rolą Scrum Mastera, jest jedynie moderowanie tego spotkania.