Koszt rozwoju systemu – Dlaczego po kilku latach wzrósł o 200 … 300 … 400%?

To nie tylko czarny scenariusz, ale realne zagrożenie. Koszt rozwoju systemu może poszybować w górę. Po kilku latach od momentu, kiedy nasz produkt online wszedł na rynek, będziemy musieli spojrzeć bestii prosto w oczy. Wzrost kosztów o 400%? Jak to jest możliwe?

 

Zlecony przez nas system informatyczny kosztował nas niemało. Było jednak warto – znaleźliśmy software house, który stanął na wysokości zadania. Wspólnymi siłami wypracowaliśmy fajny produkt, który udało się z powodzeniem zwodować na rynku. Agencja programistyczna przedstawiła nam koszt utrzymania i rozwoju systemu. Minęło kilka lat i koszt ten najpierw wzrósł o 200%, znacząco podnosząc nam też ciśnienie krwi. Jak przekroczył 300%, to zaczęliśmy zauważać u siebie symptomy zbiorowego stanu przedzawałowego. Jak już dobił do 400%, to zakupiliśmy przy okazji kilka kartonów soli trzeźwiących.

Jak do tego doszło? Jak mogliśmy dopuścić, że koszt rozwoju systemu wzrósł kilkukrotnie i totalnie ściął nas z nóg?

To ja – Dług Technologiczny

Tak, słyszeliśmy o nim. Jednak postanowiliśmy się na nim nie koncentrować. Mimo że nasza agencja IT uprzedzała nas, że nie możemy go zignorować. Zbliżał się do nas stopniowo, żeby po kilku latach wyskoczyć przed nami w jaskrawym t-shircie z wielkim napisem „400%”.

Technologia w tym samym stopniu fascynuje, co przeraża. Zmienia się bardziej dynamicznie niż kiedykolwiek wcześniej i musimy stale monitorować rynek i aktualizować nasz produkt, żeby nie zostać w tyle. Jeśli zastanowimy się przez chwilę, ile razy w ciągu ostatnich pięciu lat zmienialiśmy telefon, czy też jak często musimy aktualizować w nim oprogramowanie, to możemy śmiało odnieść tę częstotliwość zmian do ewolucji, jaką powinien przejść nasz produkt IT.

Wszystko jednak w naszych rękach, a może bardziej — w głowach. Możemy już na samym starcie w budżecie naszego biznesu uwzględnić koszty utrzymania i regularnego ograniczania długu technologicznego. Jeśli tego nie zrobimy, to po kilku latach nasz system upomni się o dopisanie nowych rozwiązań, a to już uderzy nas po kieszeni kilka lub nawet kilkanaście razy bardziej niż w przypadku, gdybyśmy aktualizowali system na bieżąco.

Jak możemy utrzymać dług technologiczny w ryzach? Pomoże nam w tym doświadczony zespół programistyczny, który od początku poprowadzi nasz projekt przy zachowaniu najwyższej jakości. Kiedy nas software house w rozmowach z nami wprowadzi pojęcie QA – Quality Assurance, to możemy to rozumieć jako testy manualne i automatyczne w pełnym zakresie. Code review, który towarzyszy naszemu projektowi od samego początku, będzie dla nas jak kamizelka kuloodporna w starciu z długiem technologicznym. Dopilnowanie QA przełoży się na łatwiejszy i znacznie tańszy rozwój produktu, już po wpuszczeniu go na rynek.

Kto w ogóle pisał ten kod?

Lepiej, jeśli szybko się z tym pogodzimy. Po upływie kilku lat od budowy systemu będzie nam ekstremalnie trudno znaleźć deweloperów, którzy nadal pracują na tych samych technologiach, na których oparł się nasz produkt przy jego budowie. To niestety oznacza znaczące podbicie kosztów wprowadzania zmian i aktualizacji.

Musimy też zmierzyć się z niechęcią programistów do grzebania w kodzie, który jest dla nich po prostu archaiczny. Cofnięcie się do przestarzałego języka oprogramowania oznacza większą trudność i wydłużenie czasu pracy, a to z pewnością wywinduje nam ich stawkę godzinową. Dorzućmy do tego problem integracji starych rozwiązań z nowymi systemami i otrzymamy kolejne obciążenie naszego budżetu.

Jeśli tego by było mało, to już za chwilę wyrwiemy sobie kolejne włosy z głowy. Przez kilka lat obecności na rynku, nasz produkt prawdopodobnie otrzymał nowe funkcje. To oznacza, że nasz system IT nabrał bardziej skomplikowanej struktury. Im bardziej złożony produkt, tym droższe będzie wprowadzenie do niego kolejnych komponentów. Łatwiejsze i tańsze będą zmiany w systemie, który składa się tylko z trzech modułów. Jeśli ich liczba wzrasta do kilkudziesięciu, to możemy się spodziewać zaplątania się pajęczynach modułów powiązanych ze sobą w dziwaczny sposób i zmienianych w ciągu kilku lat.

„Nobody said it was easy”

Musimy też pamiętać, że olbrzymie ssanie na rynku pracy w sektorze IT oznacza, że programiści mogą sobie pozwolić na częste zmiany miejsca zatrudnienia. Software house, który budował nasz system rękami jednego zespołu, może po kilku latach mieć do dyspozycji zupełnie innych deweloperów. Wdrożenie nowej ekipy programistycznej do projektu będzie kolejnym czynnikiem zwiększającym nasze koszty.

Inną pułapką, jaka się na nas czai kryje się w zerwaniu naszej współpracy z agencją software house.

Co powinniśmy zrobić, żeby nie zwariować? Przede wszystkim rozsądnie planować. Wpisywać całą dynamikę zmian do naszego projektowego budżetu. Śledzić zmiany i na bieżąco reagować.

Napisz komentarz

Your email address will not be published. Required fields are marked *