Zarządzanie ryzykiem w projektach informatycznych

Kogo nie stać na jakość, czyli kto woli być brzydki i biedny?

Teoretycznie wszystko jest proste. Nie od dziś wiadomo, że wdrożenie w organizacji zasad zarządzania procesem (process management), zarządzania poprzez jakość (total quality management) lub innej, podobnej metodyki poprawy jakości procesu wytwórczego, nieuchronnie powinno prowadzić do obniżenia kosztów produkcji, podniesienia jakości i ogólnie poprawy skuteczności działania organizacji produkujących oprogramowanie. Jednak rezultaty osiągane przez zespoły projektowe przeczą temu, żeby cokolwiek w dziedzinie poprawy efektywności w budowie systemów informatycznych mogło być proste.

Nowe technologie tworzą nowe szanse konkurowania, które powinny być szybko podejmowane przez twórców systemów informatycznych. Takie narzędzia jak środowiska do szybkiego budowania aplikacji (RAD) są w Polsce stosunkowo popularne. Narzędzia CASE powoli stają się zwykłym elementem warsztatu. Nie wiem, czy niewiele ponad 1000 licencji różnych narzędzi CASE - bo taka jest mniej więcej łączna sprzedaż tych produktów w naszym kraju - to dużo czy mało. Technologie wspomagające testowanie, pomiary wydajności, zarządzanie projektami i procesem wytwórczym pozostają jednak w naszym kraju w kręgu zainteresowania, za którym prawie nigdy nie idą decyzje finansowe.

Czyżby więc inżynierowie od informatyki nie wierzyli, że to, co w zasadzie jest słuszne, ma jakikolwiek związek z ich rzeczywistymi problemami?

Z trudem przychodzi mi to powiedzieć, ale sądzę, że tego rodzaju zachowania dostawców rozwiązań informatycznych są racjonalne. To rynek informatyczny, z jego pędem rozwijających się i „grzebanych żywcem” rozwiązań nie pozwala dostawcom na osiągnięcie satysfakcjonującej jakości. Po prostu nie stać ich na zarządzanie procesem i wykorzystanie najnowszych osiągnięć technologii budowy systemów i to z kilku przyczyn.

Po pierwsze, produkcja oprogramowania nie sprzedawanego masowo na rynku globalnym ma raczej niską rentowność. Koszt utrzymania zespołu jest wysoki, a wytworzenie sensownego produktu, np. systemu księgowego o złożoności rzędu 2-3 tysięcy punktów funkcyjnych, musi zająć zespołowi projektowemu kilkanaście miesięcy intensywnej pracy. Koszt środowiska projektowania - narzędzi RAD, CASE, środowiska zarządzania projektem, narzędzi zapewnienia jakości, repozytorium - to dla 5-osobowego zespołu kilkaset tysięcy złotych. Jeśli firma zawrze umowy typu VAR lub CAP z dostawcami technologii baz danych jest w stanie zmniejszyć o około 50% koszty narzędzi do projektowania i programowania aplikacji. Wielkość inwestycji pozostaje jednak nieprzekraczalną barierą dla większości średnich firm programistycznych, pozbawionych na ogół dostępu do kapitału inwestycyjnego (kredytów raczej nie udziela się pod zastaw komputerów i mebli biurowych).

Pozostaje albo rozłożyć duże inwestycje w czasie, albo zdobyć kapitał inwestycyjny z innej działalności.

Rozkładanie inwestycji w czasie sprowadza się z reguły do tego, że rezygnujemy z inwestowania w jakość i zarządzanie projektem. Mechanizm jest bardzo prosty. Mając do wyboru unowocześnienie podstawowego warsztatu produkcyjnego lub zakup środowiska zapewnienia jakości, decydenci wybierają z reguły to pierwsze. Powodem jest obawa przed utratą zdolności konkurowania („Co? To wy nie robicie aplikacji internetowych?”). Zamiast więc stabilizować technologię produkcji i inwestować w jakość i zarządzanie, raz na półtora roku dokupujemy nowe zabawki, które nie zawsze znajdują praktyczne zastosowanie, a często zmuszają do zmiany paradygmatów, stylu programowania, unieważniają dorobek w zakresie standardów i różnego rodzaju „gotowców” narzędziowych.

Niestety, rezygnując z inwestowania w jakość i wspomaganie zarządzania, rezygnujemy tak naprawdę z jedynego fragmentu technologii produkcji SI, który w badaniach statystycznych wykazuje korelację z sukcesem w realizacji przedsięwzięć informatycznych. Według badań Software Productivity Research, udane projekty informatyczne (jak wiadomo jest ich w przemyśle informatycznym około 10%) wiążą się wyraźnie z zastosowaniem infrastruktury wspomagającej testowanie, planowanie i kontrolę zarządczą projektu.

Atrakcyjną formą dla firm programistycznych mógłby być leasing drogiego oprogramowania narzędziowego, jednak leasingodawcy sporadycznie decydują się na finansowanie zakupów licencji. Prawa do korzystania z produktu programistycznego to najwyraźniej zbyt abstrakcyjnie brzmiący przedmiot umowy leasingowej.


TOP 200