Tehnički dug (technical debt) je izraz koji se često koristi u tehnološkim kompanijama. Šta on, zapravo, podrazumeva i zašto se javlja?
To je sve ono što smo odložili da uradimo kasnije.
Ustupci tokom razvoja
Kada klijent očekuje funkcionalnost što je pre moguće, pribegava se odlukama koje nisu baš najpametnije. Aplikacija se napiše na brzinu, bez testova, sa kodom kojie ne može lako da se proširi i održava. Docnije kada treba da ubacimo neku novu funkciju, ponovo treba da uronimo u novi kod kako bi ga razumeli i refaktorisali. Bavljenje istim kodom po drugi put oduzeće nam više vremena, ali naprosto nemamo izbora.
Loše procedura vezane za kvalitet koda
Tehnički dug se nagomilava i u slučaju kada se ne pridržavamo pravila razvoja softvera. Na primer, ne postoji pregled koda, ne piše se jasan koda, ne proverava se kvalitet i stil programiranja. Drugim rečima, svako piše kako hoće. Pre ili kasnije nastaće problemi kada ništa novo neće moći da se ubaci u kod bez da pokvarimo nešto postojeće.
Posledica modernizacija tehnologija
Tehnički dug je nekad naprosto posledica uvođenja novih tehnologija. S vremena na vreme izbacujemo stara pravila, pakete, instalacije i tehnologije zato što treba da ih zamenimo bržim i boljim kao i da ih prilagodimo novim sistemima. Što sporije to radimo, tehnički dug se više nagomilava.
Šta raditi sa tehničkim dugom?
Kao što mu ime kaže, on se vraća sa kamatom. Najbolje je da izdvojimo vreme kako bi ispravili sve što nije dobro. U suprotnom će svaki novi razvoj biti duži i složeniji, ili narodski rečeno, više će da košta. Posle određenog vremena, više će da se isplati da aplikaciju napišemo iz početka umesto da je neprestano dorađujemo.