Koszt uroczystości nie ogranicza się do piętnastu minut zapisanych w kalendarzu. To piętnaście minut plus dwadzieścia minut, które poświęca się na wyciszenie się przed uroczystością, oraz dwadzieścia minut na powrót do normalnego trybu po jej zakończeniu, pomnożone przez liczbę wszystkich osób obecnych w sali.

Przeciążenie to rodzaj niepowodzenia, który kryje się na widoku, ponieważ każda pojedyncza czynność wydaje się nieistotna. Kwadransowe spotkanie stand-upowe, godzina planowania, godzina retrospektywy. Kto mógłby mieć coś przeciwko? Problem polega na tym, że nie pojawiają się one pojedynczo. Nagromadzą się one, w rytmicznym tempie, nałożone na dzień pracy, w którym prawdziwa, głęboka praca musi zmieścić się w lukach. W przeciwieństwie do pozostałych trzech trybów, przeciążenie nie polega na przejęciu lub wydrążeniu ceremonii; nawet doskonale przeprowadzona ceremonia może okazać się jedną za dużo. Jest to jedyny tryb, który diagnozuje się za pomocą arytmetyki.

Podatek od zgromadzeń, naliczany uczciwie

Proszę więc to policzyć: cały zestaw, a nie tylko codzienne spotkanie. Dwutygodniowy sprint zazwyczaj obejmuje od dwóch do czterech godzin planowania sprintu, godzinę lub dwie na przegląd, godzinę lub dwie na retrospektywę, jedną lub dwie sesje dopracowywania oraz piętnastominutowe codzienne spotkanie stand-up, co łącznie daje kolejne dwie i pół godziny w ciągu dziesięciu dni. Proszę to zsumować, a okaże się, że na każdego programistę przypada prawie cały dzień roboczy w każdym sprincie, zanim napisze on choćby jedną linię kodu. Praktycy wyrażają tę wartość w osobogodzinach, ponieważ jest to jednostka, w której myśli kierownictwo: piętnaście minut spotkania stand-up w dwunastoosobowym zespole to nie piętnaście minut, lecz trzy osobogodziny, które codziennie się tracą. Następnie należy dodać część, której kalendarz nigdy nie pokazuje (czas potrzebny na wyciszenie się przed każdą z tych przerw oraz na ponowne wdrożenie się po nich), a wówczas jedna piąta tygodnia pracy stanowi ostrożne oszacowanie – co dokładnie odpowiada nakładom, o których nieustannie informują praktycy.

the 20% line ceremonies ≈ 1 day in 5 focused work One working week: a fifth goes to ceremony before a line of code.
Proszę uczciwie policzyć wszystkie zadania (planowanie, przegląd, retrospektywę, dopracowywanie oraz codzienne obowiązki) – ostrożne szacunki wskazują, że zajmują one jedną piątą tygodnia, czyli jeden dzień na pięć, zanim w ogóle rozpocznie się praca merytoryczna.

Nie oznacza to automatycznie, że jest to błędne. Koordynacja ma rzeczywistą wartość, a trzy dobrze wykorzystane godziny pracy mogą przynieść znacznie większe oszczędności na dalszych etapach. Jest to jednak opłata, a uczciwe pytanie dotyczące każdej opłaty brzmi: co się w zamian za nią otrzymuje. Zespół, który nie jest w stanie wskazać podjętej decyzji, unikniętej kolizji lub usuniętej przeszkody w wyniku przeprowadzenia ceremonii, ponosi ten koszt na próżno. Nakłady te są uzasadnione tylko wtedy, gdy można określić konkretny zwrot z inwestycji.

To właśnie zmiana kontekstu stanowi prawdziwy koszt

Kalendarz ten nie uwzględnia jednak w pełni kosztów, ponieważ samo spotkanie stanowi najtańszą część. Najdroższą częścią jest zmiana kontekstu po obu stronach. Programista głęboko pochłonięty rozwiązaniem problemu nie teleportuje się na spotkanie stand-upowe i z powrotem. Wychodzi z tego stanu skupienia, traci zbudowany model mentalny i poświęca pierwszą część czasu po spotkaniu na jego odtworzenie. Praktycy opisują poranne spotkanie stand-up jako narzędzie służące do „rozpoczęcia” dnia: praca tak naprawdę nie zaczyna się, dopóki spotkanie się nie zakończy, więc cała godzina poprzedzająca spotkanie jest traktowana jako stracona. Piętnaście minut to cena katalogowa; zmiana kontekstu to rzeczywisty koszt.

A fifteen-minute stand-up time-box versus a meeting that overruns ≈ 15 min Time-box 15 min The meeting that overruns…
Piętnastominutowy przedział czasowy to część, którą wszyscy widzą. To właśnie przekroczenie czasu, wraz z fazami przygotowań i zakończenia po obu stronach tego przedziału, stanowi czynnik, który faktycznie pochłania cały dzień pracy.

Właśnie dlatego moment, w którym odbywa się spotkanie, ma równie duże znaczenie, jak czas jego trwania. Spotkanie typu stand-up w połowie poranka dwukrotnie przerywa ciąg pracy twórcy; to samo spotkanie w naturalnym momencie zajmuje znacznie mniej czasu. Jest to najsilniejszy argument przemawiający za całkowitym odejściem od synchronicznego zegara w zakresie przekazywania informacji o statusie: jeśli prawdziwym zadaniem codziennego spotkania jest podsumowanie statusu, które narzędzia już zawierają, asynchroniczne spotkanie eliminuje zakłócenia bez utraty informacji, a krótka synchronizacja na żywo kilka razy w tygodniu pozwala utrzymać koordynację między ludźmi, której nie zapewnia wątek asynchroniczny. W naszym rozdziale „Jak prowadzić codzienne spotkanie stand-up” omówiono sposoby ochrony czasu twórczego niezależnie od wybranego przez Państwa rytmu spotkań.

Obciążenie związane z częstotliwością kroków: pułapka krótkich sprintów

Do tego dochodzi czynnik, którego nikt nie uwzględnia w planach: długość sprintu. Każda ceremonia odbywająca się „raz na sprint” ma miejsce dwa razy częściej w przypadku sprintu tygodniowego niż dwutygodniowego. Skrócenie sprintu o połowę powoduje podwojenie liczby sesji planowania, przeglądów i retrospekcji, jednak nie zmniejsza o połowę ilości pracy wykonywanej pomiędzy nimi, w związku z czym stosunek czasu poświęcanego na ceremonie do czasu poświęcanego na pracę gwałtownie wzrasta. Zespoły realizujące tygodniowe sprinty opisują to bez ogródek jako niekorzystne: planowanie i retrospektywa co tydzień, przy czym refleksja często okazuje się bezowocna, ponieważ tydzień to zbyt krótki okres, by nauczyć się czegokolwiek nowego.

Rozwiązaniem jest zaprzestanie traktowania rytmu pracy jako jednego, spójnego mechanizmu. Długość sprintu, częstotliwość spotkań w pozycji stojącej oraz częstotliwość retrospekcji nie muszą zmieniać się jednocześnie. Zespół, który uważa cotygodniowe retrospektywy za pozbawione treści, może przeprowadzać je co dwa lub trzy sprinty i nic przez to nie stracić. Refleksja ma swój naturalny rytm, a wymuszanie jej tempa szybszego niż tempo, w jakim zespół gromadzi wnioski, prowadzi jedynie do retrospektywy wykonywanej dla samego wypełnienia formalności, opisanej w rozdziale Wydajność. Należy dostosować każdą ceremonię do odstępu czasu, w którym faktycznie przynosi ona konkretne rezultaty.

Gdy tryb „Overload” łączy się z innymi trybami

Przeciążenie rzadko pojawia się samodzielnie. W artykule Martina Fowlera „Flaccid Scrum” opisano sytuację, w której zespół realizuje wszystkie rytuały, pomijając jednak leżącą u ich podstaw dyscyplinę inżynierską, przez co ponosi pełne koszty związane z posiedzeniami, nie czerpiąc przy tym żadnych korzyści w zakresie realizacji, ponieważ wąskim gardłem nigdy nie była koordynacja. Natomiast „water-scrum-fall”, wzorzec nazwany przez Dave’a Westa z firmy Forrester, stanowi nasilenie zjawiska przeciążenia Power: plan, którego zakres, czas i koszt są ustalane z góry, a następnie podzielony na sprinty, przez co zespół ponosi zarówno obciążenie związane z rytuałami metodyki agile, jak i sztywność modelu kaskadowego, łącząc w ten sposób najgorsze cechy obu podejść.

Warto również poważnie potraktować argument przeciwny, ponieważ jest on powszechnie rozpowszechniony i w połowie słuszny. Praktycy chętnie podkreślają, że wiele elitarnych organizacji inżynieryjnych w zaledwie minimalnym stopniu stosuje zestaw rytuałów: inżynierowie kierują projektami, zespoły same wybierają metodologię, a ciągłe dostarczanie zapewnia szybszą informację zwrotną niż jakiekolwiek cotygodniowe spotkanie. Należy ostrożnie podchodzić do tej obserwacji: stwierdzenie „zasady nas nie dotyczą” nie stanowi strategii, a duży, rozproszony zespół rzeczywiście potrzebuje większej synchronizacji niż mały zespół pracujący w tej samej lokalizacji. Prawdziwa lekcja nie polega na pomijaniu ceremonii, lecz na dostosowaniu ceremonii do rzeczywistych potrzeb koordynacyjnych pracy, które w przypadku niektórych zespołów są znacznie mniejsze niż zakłada standardowy podręcznik, a w przypadku innych odpowiadają dokładnie standardowemu poziomowi. Przeciążenie pojawia się, gdy kopiuje się podręcznik zamiast dostosować go do rzeczywistych potrzeb. Ostatni tryb, brak konsekwencji w działaniu, ma miejsce wtedy, gdy nawet ceremonie o odpowiedniej skali nie przynoszą żadnych zmian.

Najczęściej zadawane pytania

Ile spotkań w metodologii Scrum to już za dużo?

Nie ma ustalonej liczby. Kryterium to stosunek i zwrot z inwestycji. Proszę zsumować czas poświęcany na cykliczne spotkania jako procent tygodnia pracy zespołu; jeśli przekracza on 20%, a zespół nie jest w stanie wskazać, co dzięki temu uległo zmianie, oznacza to, że są Państwo przeciążeni. Spotkanie zasługuje na swoje miejsce w harmonogramie, jeśli prowadzi do podjęcia decyzji lub koordynacji działań, których praca rzeczywiście wymaga, a nie tylko dlatego, że znajduje się na standardowej liście.

Czy tygodniowe sprinty są zbyt krótkie, aby zmieścić wszystkie ceremonie?

Często tak. Planowanie i cotygodniowe retrospektywy powodują, że stosunek czasu poświęcanego na formalności do czasu pracy gwałtownie wzrasta, a dojrzałe zespoły często nie znajdują nic nowego, nad czym mogłyby się tak szybko zastanowić. Należy odpowiednio dostosować częstotliwość: proszę przeprowadzać retrospektywę co dwa lub trzy sprinty, jeśli cotygodniowa refleksja okazuje się mało owocna, a omówienie stanu prac należy przenieść do trybu asynchronicznego, aby codzienne spotkania nie pochłaniały całego poranka.

Dlaczego wydaje się, że wielkie firmy technologiczne pomijają ceremonie scrumowe?

Wiele elitarnych zespołów rzeczywiście funkcjonuje w sposób bardziej elastyczny: inżynierowie kierują projektami, zespoły same wybierają metodologię, a CI/CD wraz z flagami funkcji zapewniają szybszą informację zwrotną niż mogłoby to zapewnić cotygodniowe spotkanie. Jednak wniosek nie polega na tym, że zasady nas nie dotyczą; chodzi o to, by dostosować formę spotkania do rzeczywistych potrzeb w zakresie koordynacji. Niewielki zespół pracujący w jednym miejscu potrzebuje mniej synchronizacji niż duży zespół rozproszony, a ślepe naśladowanie którejkolwiek z tych skrajności jest błędem samym w sobie.

Jak zmniejszyć nakłady związane ze spotkaniami w metodologii agile bez utraty koordynacji?

Proszę poddać analizie każdą cykliczną procedurę, zadając sobie jedno pytanie: jaką decyzję lub działanie koordynacyjne skutkuje ta procedura? Proszę zlikwidować lub połączyć te, na które nie ma odpowiedzi, przenieść sprawozdania o stanie realizacji do narzędzi, w których są one już gromadzone, a pozostałe spotkania ograniczyć do najmniejszej grupy osób, których obecność jest faktycznie niezbędna. Celem jest poświęcanie mniej czasu na koordynację, a więcej na wykonywanie pracy.

Warto przeczytać