poniedziałek, 5 sierpnia 2013

Czemu to tyle trwa?

Dzisiaj opowiem Wam realia robienia czegoś "na wczoraj", czegoś poniżej kosztów, spraw z pogranicza "mission impossible" albo gdy trzeba odpowiedzieć na pytania klienta/szefa z gatunku "pytania do jasnowidza". Czyli jak to się kończy gdy klient czy szef wymaga od informatyka "niemożliwego".

Każdy informatyk już pewnie na początku swojej kariery zauważył to zjawisko - prawie wszystko jest na przysłowiowe "wczoraj", zawsze na styk możliwości realizacji, zawsze zakłada się że łatwo pójdzie i nie ma scenariusza na inną opcję...
Częściej można spotkać bardzo wyśrubowany termin realizacji zadania niż groźną infekcje wirusową, ambitną konfigurację czy próbę włamu na serwer. Informatyk przeważnie zmaga się właśnie z bardzo krótkimi terminami niż hordami hackerów czy plagami infekcji...
 
Skąd się bierze zjawisko "mission impossible"?

Weźmy może prosty przykład, który może na początku nie wydaje się bezpośrednio związany z tematem.
W naszym cenniku można znaleźć pozycję "Usuwanie wirusów, trojanów oraz innego niechcianego oprogramowania". Jak widać - usługę tą wstępnie szacujemy na koszt od 30 do 100 PLN. Skąd taki rozstrzał?
Najprościej mówiąc - wszystko zależy od danego przypadku - różne ceny niby tej samej usługi wynikają z różnej pracochłonności zadania.

Jeśli infekcja polega usunięciu jednego niegroźnego wirusa, nieaktywnego i siedzącego sobie w zapomnianym katalogu na dysku, to mamy np. 15 minut roboty...
Innym razem jednak trafiamy na zjawisko infekcji totalnej -  tu nie wystarczy już prosta procedura, trzeba sięgać po specjalne narzędzia, skanować komputer z poziomu płytki narzędziowej czy pendrive. A im więcej danych i im wolniejszy komputer, tym wolniejsze skanowanie. A pojedyncze skanowanie nie zawsze może dać efekt - czyli czasami zabieg trzeba powtórzyć. A czasami to się nie uda i trzeba całość jednak sformatować...
Taki czarny scenariusz może się ciągnąć godzinami aż osiągniemy pożądany efekt.

A zjawisko "mission impossible" bierze się stąd, że najczęściej zleceniodawca z góry zakłada najbardziej optymistyczny scenariusz, czasami wręcz otwarcie go oczekuje, stawia jako target naszych działań, czasami kojarzy to z czymś w typie best deal - czyli że z góry może utargować najkrótszy czas realizacji, coś jak wariant ekspresowy...
Gdy jednak dowiaduje się jakie są realia i że to wcale nie będzie najkrótszy wariant realizacji usługi, jest niezadowolony, to nie miało tyle trwać, ktoś mu nie dał najlepszej oferty...

Skąd klienci więc biorą swoje wyceny, szacowania?
Każdy z nas ma jakieś swoje wyobrażenie o danej usłudze, głównie na podstawie własnych doświadczeń albo doświadczeń znajomych, rodziny, zewnętrznych konsultacji itp.
Tak więc ktoś, kto widział udaną rozprawę z wirusami jedynie w wersji light (prosta infekcja), być może usuwanie wirusów kojarzy z taką szybką akcją i może być niezadowolony jeśli zabieg pt. "usuwanie wirusów" potrwa kilka godzin w przypadku dużej infekcji.
I odwrotnie - jeśli ktoś przywykł do długich potyczek z falami infekcji, usuwanie pojedynczej, prostej infekcji wywoła u niego uśmiech na twarzy i pewnie pomyśli że ci, którzy realizowali wcześniejsze usługi, może go naciągnęli czy oszukali albo że teraz trafił na super informatyka...
Pamiętajmy że cały czas chodzi o jedną i tą samą usługę w cenniku...
Od danego przypadku i tej kombinacji wrażeń "kiedyś-dzisiaj" zależy czy ocena takich działań będzie pozytywna czy negatywna.
Niektórzy zleceniodawcy czasami doszukują się również jakiegoś wątku handlowego w całej sprawie.
Wygląda to jakby założyli sobie target a potem, widząc że nie jest on osiągany, myśleli "Dlaczego ten informatyk chce ode mnie więcej pieniędzy za robotę niż zakładałem, czemu tyle siedział nad prostą sprawą? Jaki argument powinienem rzucić aby zszedł z ceny czy zrobił robotę szybciej?"...
Być może odbierają sytuację na zasadzie że robią deal, że to dobijanie interesu, że to gra handlowa... Handlowiec może zejść z ceny i to w większości jest kwestia dobrej woli, więc podobnego podejścia oczekuje się od informatyka.

A czy tak powinno być?

Wg mnie nie. Taka zaoczna wycena czasochłonności powinna uwzględniać różne problemy jakie można napotkać podczas realizacji zadania informatycznego i wynikać z faktycznej trudności zadania a nie tylko z własnego przeświadczenia ile takie zadanie w teorii powinno zajmować albo porównań do innych, w rzeczywistości zupełnie innych przypadków (choć dla zleceniodawcy wydają się one identyczne).

Co z tego wynika? 

Najczęściej ocena danego wykonawcy, jeśli nie jest do końca trafna, może się skończyć nawet niespodziewaną zmianą wykonawcy. To zresztą nie jest jedynie domena zleceń w branży IT, podobne sytuacje zdarzają się również w innych branżach.
Tak więc albo jeszcze przed realizacją zlecenia albo już w trakcie jego trwania, zleceniodawca zauważa że to zajmie dłużej i będzie kosztować więcej niż początkowo sobie oszacował. Wówczas albo kładzie nacisk na informatyka - niech zrobi coś aby to jednak zajęło krócej i kosztowało mniej, albo czując się oszukany, zaczyna rozglądać się za innym wykonawcą.

W efekcie wszyscy tracą:
  • klient traci bo ma rozgrzebaną robotę, którą potem próbuje przejąć kolejny wykonawca z często jeszcze gorszym skutkiem, niż zaczął pierwszy. Poza tym, chcąc oszczędzić, bywa że klient płaci prawie podwójnie - raz pierwszemu wykonawcy za zaczęcie czy pierwsze etapy roboty, drugi raz drugiemu wykonawcy za dokończenie. O straconych nerwach nie wspomnę. Bywa też że po zmianie wykonawcy na kolejnego klienta czeka dalsze rozczarowanie bo ten drugi jest jeszcze mniej efektywny niż pierwszy - zwłaszcza jak zadanie było właśnie "mission impossible".
  • traci pierwszy wykonawca bo czeka go spora ilość spięć i trudnych sytuacji z klientem, robota robi się mało wdzięczna a może się okazać że klient nie zapłaci bo wstępnie oszacował sobie dane zadanie inaczej a wyszło tak jak w realu a nie jak w teorii.
  • bywa że traci również kolejny wykonawca, bo dostaje rozgrzebaną robotę po pierwszym wykonawcy, już wstępnie poirytowanego klienta i właściwie na dzień dobry wszystko jest "pod górę". Bywa że drugi wykonawca potwierdza swoim działaniem słuszność działań tego pierwszego i wtedy klient już naprawdę nie wie co z tym zrobić...
Czy są tu jakieś rady dla klientów/zleceniodawców?

Pamiętajmy że ludzie, którzy piszą programy czy systemy operacyjne też się mylą a z tego czasami wynikają problemy w naszej pracy informatyków i są to problemy naprawdę niespodziewane, nigdzie o nich nie uczą w żadnej szkole i właściwie tylko logiczne myślenie lub improwizacja pozwalają wybrnąć z nietypowego problemu. Dlatego nie zawsze wszystko jest na czas, zgodnie z obietnicą i w ogóle wg rozkładu jazdy.
W świecie IT nie zawsze wszystko do siebie pasuje, nie ma uniwersalnego prawa informatycznego, które wymagałoby aby programy pasowały do siebie i nie robiły błędów. Długo jeszcze poczekamy na taką idealną sytuację.
Jeśli chcecie szacować realnie - zapytajcie Waszego informatyka - podwykonawcy czy pracownika. Jeśli nie wie od razu, pozwólcie się mu dowiedzieć - to Wasz przewodnik po świecie IT.
Dopiero wtedy decydujecie ile co ma zająć i ile kosztować.

A co można doradzić informatykom?

Pamiętajcie, klient czy szef często ma swoją wizję, którą być może złapał w biegu, znajomy mu podpowiedział, nikt nie wnikał w szczegóły techniczne - skoro dało się wdrożyć w jednym miejscu, pewnie da się i w drugim. Innymi słowy - nikt nie spodziewał się "schodów".
Uświadomcie go dlaczego ten konkretny przypadek jest inny, wskażcie słabe punkty, wytłumaczcie że to nie deal czy oferta handlowa, że tu decydują konkretne możliwości techniczne a nie dobra wola. Posłużcie się jakimś przykładem z mniej informatycznego aspektu życia - np. "części do Audi nie będą pasować do Peugeota".
 

Brak komentarzy:

Prześlij komentarz