Zajętość nie oznacza przepływu

W pewnym biurze poniedziałkowy poranek zaczyna się od spotkania, na którym nikt nie ma dobrych wiadomości. Projekt, który miał być gotowy w piątek, wciąż czeka na testy. Projektant potrzebuje decyzji kierownika, kierownik jest na spotkaniu dotyczącym innego opóźnionego projektu, a programista ma otwartych sześć zadań. Wszyscy pracują, wszyscy są zmęczeni i prawie nic nie przesuwa się do przodu.

To scena wymyślona, ale opisuje dobrze znany rodzaj chaosu. Kiedy w firmie coś się opóźnia, naturalną reakcją jest próba lepszego wykorzystania czasu. Każdemu trzeba przydzielić zadanie, każdą wolną godzinę zapełnić. Puste miejsce w kalendarzu wygląda podejrzanie, a osoba, która skończyła pracę przed czasem, sprawia wrażenie, jakby można było obciążyć ją jeszcze czymś.

Wydajność łatwo utożsamić z nieustanną zajętością. Tymczasem istnieje cała dziedzina matematyki pokazująca, dlaczego takie myślenie może prowadzić do odwrotnego rezultatu. Jej początki nie wiążą się z biurami, fabrykami ani aplikacjami do zarządzania projektami. Zaczęło się od ludzi, którzy chcieli po prostu dodzwonić się do siebie.

Na początku XX wieku połączenia telefoniczne nie powstawały same. W centralach pracowały telefonistki, które łączyły rozmówców za pomocą przewodów i gniazd. Każda rozmowa zajmowała linię, obwód i czas operatora. Gdy zbyt wiele osób próbowało rozmawiać jednocześnie, ktoś musiał czekać albo otrzymywał sygnał zajętości.

Budowanie dodatkowych linii kosztowało, ale oszczędzanie na nich również miało cenę. Przedsiębiorstwa telefoniczne potrzebowały sposobu, by znaleźć rozsądny kompromis. W 1908 roku do kopenhaskiej firmy telefonicznej dołączył matematyk Agner Krarup Erlang. Interesowało go, ile połączeń przychodzi w danym okresie, jak długo trwają i ile obwodów potrzeba, żeby sieć działała sprawnie.

Rok później opublikował pracę dotyczącą rachunku prawdopodobieństwa i rozmów telefonicznych. Z tych praktycznych badań wyrastała teoria kolejek. Erlang dostrzegł coś, co każdy zna z życia. Ludzie nie przychodzą do kasy w sklepie równymi odstępami. Połączenia telefoniczne nie zaczynają się dokładnie co minutę. Pacjenci nie trafiają do przychodni według idealnie rozłożonego harmonogramu.

Skąd biorą się kolejki

Zdarzają się spokojne chwile, po których nagle pojawia się kilka zgłoszeń naraz. Nawet jeśli średnio pracy jest tyle, ile system potrafi obsłużyć, nierównomierny napływ sprawia, że tworzy się kolejka.

Wyobraźmy sobie kasę, która obsługuje przeciętnie dziesięć osób na godzinę. Gdyby klienci pojawiali się dokładnie co sześć minut, a każda obsługa trwała dokładnie sześć minut, wszystko mogłoby działać niemal idealnie. Ale rzeczywiste życie nie zachowuje takiej dyscypliny.

Jedna osoba kupuje gazetę, druga szuka portfela, trzecia potrzebuje faktury. W tej samej chwili może wejść pięciu klientów, a potem przez kwadrans nie pojawi się nikt. Jeżeli kasa jest zajęta przez połowę czasu, ma sporo okazji, żeby nadrobić chwilowe spiętrzenia. Jeżeli jest zajęta przez dziewięćdziesiąt dziewięć procent czasu, prawie nie ma kiedy tego zrobić.

Kolejka z jednego krótkiego zatoru może przetrwać do następnego. To nie kwestia lenistwa kasjera. To własność systemu. Matematyka opisuje tę zależność z niepokojącą precyzją.

W jednym z najprostszych modeli kolejkowych, w którym zgłoszenia przychodzą losowo i mają losowy czas obsługi, przeciętny czas przebywania sprawy w systemie rośnie coraz szybciej, gdy wykorzystanie dostępnej mocy zbliża się do stu procent. Przy wykorzystaniu na poziomie pięćdziesięciu procent średni czas w takim modelu wynosi dwukrotność przeciętnego czasu samej obsługi. Przy dziewięćdziesięciu procentach — dziesięciokrotność.

Nie jest to uniwersalna prognoza dla każdego sklepu czy zespołu, lecz wynik konkretnego modelu, który pokazuje kierunek zjawiska. Intuicja podpowiada nam, że przejście z osiemdziesięciu do dziewięćdziesięciu procent zajętości oznacza niewielką różnicę. Z punktu widzenia kolejek może być to różnica ogromna. Rezerwa, którą system wykorzystywał do rozładowywania spiętrzeń, została zmniejszona o połowę.

Teraz zamieńmy kasę na zespół programistów. Nowe zadania pojawiają się codziennie. Jedno okazuje się prostą poprawką, drugie wymaga analizy starego kodu, trzecie blokuje zależność od innego zespołu. Kierownik chce, żeby nikt nie był bezczynny, więc każdemu przypisuje tyle pracy, ile tylko można zmieścić w kalendarzu. Z daleka wszystko wygląda wydajnie.

W raportach każdy ma pełne obłożenie. A potem pojawia się pilny błąd produkcyjny. Trzeba go obsłużyć natychmiast. Ktoś odkłada rozpoczęte zadanie, ktoś inny przerywa przegląd kodu, tester wstrzymuje zaplanowaną pracę. Kiedy awaria zostaje usunięta, zespół nie wraca do punktu wyjścia. Wraca do kilku otwartych spraw, częściowo zapomnianych ustaleń i nowej kolejki.

Praca pilna wygrała z pracą ważną, ale niepilną. Ta druga będzie teraz czekać dłużej. Właśnie dlatego niektóre organizacje, w których ludzie są nieustannie zajęci, potrafią mieć bardzo małą zdolność do reagowania. Wszystkie ich zasoby są już obiecane komuś innemu. Każda niespodzianka wymaga odebrania czasu innemu zadaniu.

Mniej pracy w toku

W połowie XX wieku amerykański badacz John Little udowodnił zależność, którą dziś nazywa się jego prawem. W stabilnym systemie przeciętna liczba spraw znajdujących się w środku równa się tempu ich kończenia pomnożonemu przez przeciętny czas, jaki spędzają w systemie.

Jeżeli zespół kończy średnio pięć zadań tygodniowo, a w każdej chwili ma dwadzieścia zadań rozpoczętych lub oczekujących w swoim procesie, przeciętne zadanie spędza tam około czterech tygodni. To nie znaczy, że programista pracuje nad nim nieprzerwanie przez miesiąc. Znaczna część tego czasu może upływać na oczekiwaniu na decyzję, przegląd, test albo wolną osobę.

Zadanie jest w firmie, ale firma niekoniecznie coś z nim robi. Można spróbować przyspieszyć pracę, każąc ludziom pisać szybciej. Można też przyjrzeć się temu, dlaczego tak wiele spraw rozpoczęto jednocześnie. Czasem największa poprawa nie polega na zwiększeniu wysiłku, lecz na zmniejszeniu liczby rzeczy, które w ogóle wpuszczamy do systemu.

Kiedy jedno zadanie jest kończone przed rozpoczęciem następnego, znika część przełączania kontekstu, a praca rzadziej zalega między etapami. Nie należy jednak wyciągać z tego zbyt łatwego wniosku, że każdy powinien robić zawsze tylko jedną rzecz. W szpitalu lekarz może potrzebować równolegle prowadzić kilku pacjentów. W fabryce jedne części schną, podczas gdy inne są montowane. W pracy umysłowej zdarzają się okresy oczekiwania, których nie da się wyeliminować.

Istotne jest nie samo istnienie kilku spraw, ale ich liczba w stosunku do rzeczywistej zdolności zespołu do kończenia pracy. Na pierwszy rzut oka pozostawianie wolnej mocy wygląda jak marnotrawstwo. Dlaczego zatrudniać pracownika, który przez część dnia nie ma pełnego obłożenia? Dlaczego utrzymywać dodatkowe stanowisko w szpitalu, skoro przez spokojny poranek stoi puste?

Odpowiedź zależy od tego, co naprawdę chcemy optymalizować. Jeśli jedynym celem jest wykorzystanie zasobu, pusta godzina rzeczywiście wygląda źle. Jeśli celem jest szybka obsługa nieprzewidywalnych zgłoszeń, pusta godzina może być dokładnie tym, za co płacimy. Karetka pogotowia, która przez chwilę stoi bez wezwania, nie jest automatycznie nieproduktywna. Jej gotowość ma wartość właśnie dlatego, że nie wiadomo, kiedy będzie potrzebna.

Oczywiście nie każda firma może sobie pozwolić na duże rezerwy. Niewykorzystane stanowiska kosztują, a nadmierny zapas ludzi lub sprzętu potrafi zniszczyć rentowność. Teoria kolejek nie nakazuje więc wszystkim pracować na pół gwizdka. Pokazuje jedynie, że istnieje cena przeciążenia, której nie widać w prostym zestawieniu godzin.

Rachunek powinien obejmować również opóźnienia, utraconych klientów, poprawki, zmęczenie i pracę, która utknęła w połowie drogi. Warto też pamiętać, że kolejka może być niewidoczna. W sklepie widzimy ludzi stojących przed kasą. W biurze czekające zadania kryją się w skrzynkach pocztowych, komunikatorach, dokumentach i głowach pracowników.

Miejsce na nieprzewidziane

Ktoś mówi, że sprawa „jest w toku”, chociaż od tygodnia nikt jej nie dotknął. Im więcej takich spraw, tym trudniej zauważyć, gdzie naprawdę powstaje opóźnienie. Samo rozpoczęcie pracy daje przyjemne poczucie postępu, ale dla odbiorcy liczy się dopiero chwila, w której otrzyma gotowy rezultat.

Ciekawą odmianę tego problemu można znaleźć w codziennym kalendarzu. Człowiek umawia spotkania od dziewiątej do siedemnastej, zostawiając między nimi po pięć minut. W teorii dzień został wykorzystany znakomicie. W praktyce jedno spotkanie kończy się dziesięć minut później, kolejne zaczyna się z opóźnieniem, a na wiadomość wymagającą namysłu nie ma już miejsca.

Każda nieprzewidziana sprawa trafia do wieczornej kolejki. Dzień składający się wyłącznie z zobowiązań zaplanowanych z góry jest kruchy. Nie zostawia przestrzeni na rzeczy, których nie można było przewidzieć, choć wiadomo, że prędzej czy później się pojawią. Życie ma zmienność podobną do kolejki telefonicznej, nawet jeśli bardzo starannie kolorujemy jego godziny.

Najbardziej przekonującą oznaką sprawnego systemu nie zawsze jest więc widok ludzi w ciągłym ruchu. Bywa nią spokojne zakończenie sprawy. Pacjent przyjęty bez wielogodzinnego czekania. Błąd naprawiony bez przerywania pracy całemu zespołowi. Zamówienie wysłane zgodnie z obietnicą. Decyzja podjęta wtedy, kiedy była potrzebna, a nie po trzech tygodniach przypominania.

Erlang nie projektował nowoczesnych biur. Chciał obliczyć, ile linii telefonicznych wystarczy, żeby ludzie mogli ze sobą rozmawiać. Ale odkryty przez niego sposób patrzenia na losowe zgłoszenia i ograniczone zasoby okazał się przydatny w bankach, szpitalach, sieciach komputerowych, centrach obsługi i fabrykach.

Wszędzie tam, gdzie coś przychodzi, czeka i musi zostać obsłużone, pojawia się podobny problem. W tym sensie współczesna firma wcale nie jest tak daleko od dawnej centrali telefonicznej. Zamiast przewodów mamy zgłoszenia, zamiast telefonistek — specjalistów, zamiast sygnału zajętości — komunikat, że ktoś wróci do sprawy w przyszłym tygodniu.

Gdy obłożenie rośnie, wszystko przez pewien czas wygląda znakomicie. Dopiero później okazuje się, że czas oczekiwania urósł znacznie bardziej niż liczba zadań. W poniedziałkowym biurze z początku tej historii można byłoby więc zacząć od pytania innego niż zwykle. Nie: kto ma jeszcze wolne dwie godziny? Raczej: ile rzeczy rozpoczęliśmy i dlaczego tak niewiele z nich kończymy?

Odpowiedź może nie być wygodna. Czasem wymaga rezygnacji z nowych obietnic, ograniczenia liczby projektów albo pogodzenia się z tym, że ktoś nie będzie zajęty w każdej minucie. Nie jest to pochwała bezczynności. To przypomnienie, że praca wykonana i praca rozpoczęta nie są tym samym.

System, w którym każdy jest zajęty przez cały czas, może wyglądać na doskonale wykorzystany. Ale jeśli niczego nie da się w nim skończyć bez czekania na pięć innych osób, być może od dawna nie działa tak dobrze, jak pokazują kalendarze.