Znasz to uczucie. Przychodzi do Ciebie szef/zleceniodawca/biznes i koniecznie chcą żebyś kolejny raz uratował świat. Po krótkie rozmowie pada sakramentalne “hmm…a ile Ci to zajmie?”.
Koniec miłej atmosfery. Odtąd każde słowo jakie wypowiesz może być użyte przeciwko Tobie i… wiedz, iż będzie użyte! Nie ważne co teraz powiesz i jak bardzo się skupisz przy obliczaniu pracochłonności i tak powierzone zadanie zajmie Ci dwa razy tyle ile planowałeś.
Zazwyczaj mówimy: “jak dobrze pójdzie to wyrobię się z tym w 3 dni”. Problem w tym, iż rzadko kiedy “idzie dobrze”. A to coś nas zaskoczy, a to nie mamy potrzebnej wiedzy i musimy ją zdobyć. Po trzech dniach przychodzi Manago Stefan i pyta: “Cześć Heniek. Jak idzie?” Próbujesz ratować sytuację i nieśmiało wyrzucasz z siebie coś na kształt: “eee…no..właściwe to…już kończę”. Zniecierpliwiony Stefan na to: “O ile mnie pamięć nie myli to mówiłeś, iż zajmie to 3 dni, a siedzisz już nad tym tydzień”, po czym odejdzie sfrustrowany w siną dal. Ty za to zostajesz ze swoim smutkiem i niezrozumieniem sam. Myślisz: “ej no, ale przecież mówiłem jak dobrze pójdzie…” Tym razem po prostu nie poszło dobrze. A czy kiedykolwiek poszło?
Co programista mówi:
“Zajmie mi to 5 dni”
Co programista myśli:
“Hmm, kurde zajmie mi to co najmniej 7 dni, ale bardzo bym chciał zrobić to szybko, więc może niebiosa pomogą i uda się w 5?”
Jaka jest rzeczywistość:
“Siedzę nad tym od 10 dni…i końca nie widać”
Kilka reguł szacowania, z których warto zdawać sobie sprawę:
- Prawo Parkinsona mówi o tym, iż zużywamy co najmniej tyle zasobów ile mamy dostępnych. o ile zadeklarujemy pracochłonność na 5 dni to zadanie zajmie nam co najmniej 5 dni (ale raczej 10). o ile zadeklarujemy to samo zadanie na 10 dni to zajmie nam ono co najmniej 10 dni (ale raczej 20).
- Błąd estymacji rośnie proporcjonalnie do wielkości zadania. Dlatego sensownym wydaje się ograniczenie szacowanych wartości do liczb z ciągu Fibonacciego, czyli: 1, 2, 3, 5, 8, 13, 21, 34 itd.
- Z powyższego punktu wynika również, iż o wiele mniejszy błąd popełnimy szacując zadania kilkudniowe niż wielotygodniowe. Zawsze warto rozbić duży problem na możliwie mniejsze podproblemy i dopiero wtedy spróbować szacowania.
- Wszyscy jesteśmy optymistami. W związku z tym zasada, iż każdy szacunek trzeba pomnożyć przez dwa nie jest wyjęta z kapelusza. Serio.
- Ludziom ciężko jest obiektywnie przewidzieć pracochłonność, dlatego podają zwykle liczby nie mające nic wspólnego z rzeczywistością. Sposobem, żeby tego uniknąć jest porównywanie przyszłego zadania z już wykonanym. o ile wykonanie łudząco podobnego raportu zajęło Ci 7 dni to wykonanie tego raportu też zajmie Ci się 7 dni. NIE. Nie daj się przekonać Managerowi Stefanowi, że: “Hej, ale przecież już takie coś mamy. Trzeba tylko pozmieniać to i tam to. Nie zajmie Ci to dłużej niż dwa dni.” Przypomnij sobie wtedy słowa babci: “Diabeł tkwi w szczegółach”. To właśnie te szczegóły sprawią, iż ten raport, mimo, iż jest podobny do poprzedniego, nie zajmie Ci ani godziny mniej.
A na koniec #protip…
Zastanawiałeś się kiedyś dlaczego niektórzy są uważani za bardziej terminowych od innych? Czyżby oni byli wolni od błędu estymacji?
Junior: Szef pytał mnie ile zajmie mi wykonanie tej nowej funkcjonalności.
Senior Wiesiek: A ile Ci tak na prawdę zajmie?
Junior: 5 dni.
Senior Wiesiek: To powiedz mu, iż 10. On spyta się Ciebie dlaczego tak długo i czy mógłbyś zrobić to w 8 dni? Zgodzisz się, po czym zrobisz to w 7 dni, a on będzie miał Cię za cudotwórcę.