Czym jest dług technologiczny? (ang. Technical debt).
Mówiąc najprościej jest to odroczona praca w kodzie „na potem”, która prawie nigdy nie nadchodzi. Najczęściej decyzję o zaciągnięciu długu podejmuje zespół deweloperski, który jest odpowiedzialny za kod. Niestety taka decyzja często jest podyktowana koniecznością szybkiego zamknięcia projektu w imię poświęcenia jakości. Wypuszczamy beta wersję, która zostaje produktem końcowym. Przestajemy dbać o jakość kodu, dokładamy nowe funkcjonalności, nie poprawiamy błędów i dług rośnie. Rozwój produktu zaczyna zajmować coraz więcej czasu, staje się coraz mniej opłacalny. W najgorszym wypadku dochodzimy do momentu, kiedy dług technologiczny zaczyna powodować, że produkt przynosi straty i należy go zamknąć.
Jakie mogą być przyczyny powstawania długu?
- Naglący projekt, kiedy zespół świadomie decyduje o obniżeniu jakości kodu i „pójściu na łatwiznę”, aby oszczędzić czas i pieniądze.
- Niewystarczające kompetencje i umiejętności młodego programisty, który pozostaje bez nadzoru.
- Brak odpowiedniej skalowalności produktu w miarę jego rozwoju.
Brzmi znajomo? 😉 Wobec tego podpowiemy Wam, jak spłacać dług wraz z odsetkami pracując Agilowo.
Należy zacząć od tego, żeby przestać go produkować i dolewać oliwy do ognia. Zespół powinien się spotkać i postarać oszacować dług, zrozumieć jak powstał i czym tak naprawdę jest w danym produkcie. Dług technologiczny nie jest namacalny, dlatego punktem wyjścia jest dobre i wspólne zrozumienie problemu. Dług należy spłacać w ratach, systematycznie każdego Sprintu. Najlepiej aby elementy długu znajdowały się w Backlogu Produktu.