rss

Przejrzystość, głupcze!

W interesie całego zespołu produkującego oprogramowanie jest informować klientów na bieżąco o postępach i problemach, które się pojawią. Im rzadsza komunikacja, tym więcej pola oddajemy ich wyobraźni, podsycanej obawami o losy projektu. Im dłużej zwlekamy z informacją o trudnościach, tym silniejsze będzie uderzenie, kiedy wyjdą na jaw. Warto postawić na przejrzystość.

Michał Paluchowski, 28 sierpnia 2009

„Mamy opóźnienie” powiedziałem szefowi w dniu terminu oddania programu komputerowego, w projekcie, którym zarządzałem. Trafiliśmy na paskudny błąd związany z biblioteką, którą wykorzystywać musieliśmy, a która nie dość, że informowała o błędach za pomocą kilku magicznych cyferek, to jeszcze kompletnie nie była udokumentowana.

Spóźnienie to nic nowego. Jak mawia moja matka: „widziałeś kiedyś projekt, który nie jest opóźniony?” Szef popatrzył na mnie badawczo i bez namysłu spytał „od kiedy to wiesz?”, „od kilku dni”. „Czy wysłałeś więc do klienta te kilka dni temu maila z napisem wielkimi literami: MAMY OPÓŹNIENIE?” Nie wysłałem.

Jak nie wiem to wymyślę

Człowiek z natury jeśli czegoś nie wie, to brakujące informacje uzupełni przy pomocy wyobraźni. Spotkał się z tym pewnie każdy, kto jako dziecko spóźnił się do domu wobec przykazanej przez rodziców godziny. „Gdzie byłeś? Myślałam, że coś ci się stało!” Matka nie wie co się z dzieckiem dzieje, zwłaszcza jeśli o określonej godzinie powinno być w domu a nie jest. Martwi się, a w miejsce braku informacji na temat losów swojej pociechy tworzą się rozmaite historie o tym co mogło się wydarzyć – jednym słowem: paranoja.

Z klientami firm produkujących oprogramowanie jest tak samo. Klient to taka matka, która bardzo martwi się o swoje dziecko – zamówiony program. Jeśli nie wie co się z dzieckiem dzieje to się martwi i w miejsce brakujących informacji wymyśla historie. „Może wykonawca nic nie zrobił, może firma upadła, może nie potrafią tego zrobić, tracimy czas i pieniądze, a jeśli ten projekt zakończy się klapą, ja oberwę od swojego szefa!”

Przejrzystość, głupcze!

U podstaw dobrej współpracy z klientami leży przejrzystość – coś co w kulturze biznesu amerykańskiego nazywa się „otwartym kimono” (bo Japończyk pod kimono z reguły nie nosi nic, czyli widać wszystko). Klient w każdej chwili musi być świadomy:

Jeśli którejkolwiek z powyższych informacji mu brakuje, to ją sobie „wytworzy”. I wersja wymyślona może znacznie odbiegać od rzeczywistości.

Oczywiście, jeśli zaskakujemy klienta pozytywnie – na przykład zrobiliśmy więcej niż zapowiadaliśmy – wspaniale, klient zadowolony, pochwali, przyjdzie znowu. Gorzej gdy coś idzie nie tak, a w tych przypadkach wszyscy mamy szczególną tendencję do ukrywania złych informacji.

Historia uczy, że posłańcy przynoszący złe wieści kończyli marnie. Obecnie nikt już na szczęście za to nie zabija, może poza rodzinami mafijnymi z Sycylii. Z drugiej strony nikt też nie lubi złych wieści otrzymywać, ale wyjątkowo nie lubi być nimi zaskakiwany. Dlatego jeśli coś w projekcie idzie w złym kierunku, wymaga więcej pracy, zajmuje dłużej, jest trudniejsze – to należy o tym informować zaraz po tym kiedy informacja się pojawi. Im wcześniej, tym więcej czasu klient będzie miał żeby z doniesieniami się oswoić i, jeśli trzeba, podjąć decyzje, które zminimalizują skutki problemów.

Uzasadnione podejrzenia również powinno się przekazać. Klient powiedział mi kiedyś w trakcie telekonferencji, że pojawiają się w jego firmie „z góry” naciski na redukcję kosztów, co może doprowadzić do przedterminowego zakończenia naszego projektu. Dwa tygodnie później przypuszczenia częściowo się potwierdziły – była to dla nas zła wiadomość, ale byliśmy gotowi.

Kojarzy się z Agile?

Praktycy zasad Agile i pochodnych im metodologii muszą się w tej chwili szeroko uśmiechać, bo dokładnie o powyższe w Agile chodzi. Klient jest członkiem zespołu i jako taki powinien mieć dostęp do tych samych informacji co każdy inny uczestnik projektu:

Do tego pilnujemy innych, mniejszych i większych kanałów komunikacji:

Wspomniany na początku szef przekazał mi prostą zasadę: jeśli obiecamy coś dostarczyć w danym terminie, to dostarczamy; jeśli to się nie uda, to dzwonimy, ew. piszemy dlaczego nie dostarczyliśmy i podajemy nowy termin. Nigdy nie zostawiamy klienta z jego własnymi domysłami.

A gdy klient ma to gdzieś…

Zdarzają się klienci, którzy powiedzą „pan jest >ekspert<, zrób pan i dopiero pokaż.” Pachnie to już z daleka problemami, bo każdy kto jakikolwiek program na zamówienie wykonywał lub zamawiał wie, że wynik zawsze mniej lub bardziej odbiega od wizji, którą w głowie nosi klient. Masz więc do wyboru:

  1. zrezygnować i poszukać innego klienta, który bardziej będzie się interesował swoim projektem;
  2. wyedukować klienta, przekonując go do zalet zaangażowania; albo
  3. przyjąć ryzyko, podnieść odpowiednio cenę i dokładnie dopracować umowę.

Osobiście najczęściej wybieram opcję 1. – tak samo jak nie chodzę do dentystów-studentów: niech się uczą na cudzych szczękach. W szczególnych przypadkach i przy mniejszych projektach przyjmuję opcję 3. Na opcję numer 2. życie jest za krótkie.