Jajka na niewiadomojak

Jest kategoria problemów, które - mimo całego postępu naukowego i technicznego - pozostają nierozwiązane do dnia dzisiejszego. Ludzie stanęli na Księżycu, zbadali strukturę atomu, udowodnili nawet Wielkie Twierdzenie Fermata, ale pozostają bezradni w kwestii jajek na miękko. Otóż każdy, kto kiedyś gotował jajka na miękko wie, że niesamowicie trudno jest osiągnąć optymalny stan, tj. gdy żółtko pozostaje całkowicie płynne, zaś białko jest całkowicie ścięte. Gdy mój syn słyszy, że gotujemy jajka na śniadanie pyta: czy dzisiaj znowu jajka na niewiadomojak? - i wyraża tym pytaniem probabilistyczną naturę procesu gotowania jajek.

Jest kategoria problemów, które - mimo całego postępu naukowego i technicznego - pozostają nierozwiązane do dnia dzisiejszego. Ludzie stanęli na Księżycu, zbadali strukturę atomu, udowodnili nawet Wielkie Twierdzenie Fermata, ale pozostają bezradni w kwestii jajek na miękko. Otóż każdy, kto kiedyś gotował jajka na miękko wie, że niesamowicie trudno jest osiągnąć optymalny stan, tj. gdy żółtko pozostaje całkowicie płynne, zaś białko jest całkowicie ścięte. Gdy mój syn słyszy, że gotujemy jajka na śniadanie pyta: czy dzisiaj znowu jajka na niewiadomojak? - i wyraża tym pytaniem probabilistyczną naturę procesu gotowania jajek.

Wdrożenie systemu informatycznego należy do tej samej kategorii zadań. Niby wszyscy wiedzą jak to zrobić: określić wymagania, możliwie precyzyjnie i możliwie blisko współpracując z użytkownikiem końcowym zakreślić funkcjonalność systemu, znaleźć odpowiedni produkt u dostawcy zewnętrznego albo wykonać go samemu, na koniec przetestować go, posadowić i przeszkolić użytkowników, a potem tylko liczyć zyski.

Prowadziłem kiedyś w imieniu mojego klienta bardzo podobny projekt. Stawali do niego rozmaici producenci oprogramowania. Każdy z nich obiecywał "usprawnienie procesów biznesowych", "astronomiczne oszczędności", "odczuwalne zwiększenie wydajności pracy". Było to idealnie zgodne z oczekiwaniami mojego klienta. Ale w miarę posuwania się procedury przetargowej następowała stopniowa redukcja miar biznesowych do technicznych. W miejscu, gdzie wcześniej znajdowało się "odczuwalne zwiększenie wydajności pracy" zaczęły się nagle pojawiać "odpowiedź bazy danych po nie później niż 3 sekundach".

Od razu łatwo znaleźć analogię z problemem jajek. Na rynku dostępnych jest kilkadziesiąt modeli "minutników do jajek na miękko". Już ich nazwa zdradza oszustwo: to nie są żadne przyrządy, które mierzą stopień ścięcia żółtka lub białka i stosownie do niego sygnalizują potrzebę zakończenia gotowania. Nie mierzą też temperatury wody, ciśnienia, wielkości jajka i wielu innych czynników, które wpływają na optymalny moment wyciągnięcia go z wodnej kąpieli, by było rzeczywiście na miękko. Mierzą po prostu czas, bazując na założeniu, że "w zasadzie" jajka powinny gotować się około trzech minut. Tak samo jak dostawcy w moim przetargu, którzy - nie wiedzieć czemu - uważali, że "odpowiedź bazy po 3 sekundach" równa się "zwiększenie wydajności pracy".

Byliśmy w stanie od biedy zgodzić się na zastąpienie miar biznesowych technicznymi, po ich istotnym zmodyfikowaniu ("pełne dane kontrahenta widoczne dla operatora po 3 sekundach" zamiast "odpowiedź bazy danych po 3 sekundach"). Prawdziwej furii mój klient dostał, kiedy wybrany, wydawałoby się, dostawca przedstawił projekt umowy, w której żadnych miar nie było. Znajdowało się jedynie wyliczenie serwerów, modułów i licencji oraz kwot, które trzeba za nie zapłacić "w 7 dni po dostawie". Zupełnie tak jak w "minutnikach do jajek", gdzie dostawca udaje, że gwarantuje smaczne śniadanie, a tak naprawdę zapewnia, że po około 3 minutach rozlegnie się piszczenie - nic więcej.

Odbyliśmy wtedy długą i interesującą rozmowę, po której (nie bez mojego udziału) klient zrezygnował z usług danego dostawcy i postanowił posłużyć się dokumentacją przetargową w celu zamówienia nowego systemu "szytego na miarę". Założenie, że można posłużyć się miarą uproszczoną, by mierzyć proces złożony, jest rzadko prawdziwe. Nie dziwię się, nie chciał brać go na własne barki.


TOP 200