La dette technique est la métaphore financière des raccourcis pris dans un logiciel. Chaque fois qu'une équipe livre vite en reportant le nettoyage à plus tard, elle contracte un emprunt. Les intérêts se paient à chaque modification suivante : ce qui devrait prendre une journée en prend trois, parce qu'il faut d'abord comprendre, contourner ou réparer ce qui a été bâclé.
À quoi elle ressemble
Une version de PHP ou de framework qui n'a pas été mise à jour depuis cinq ans et n'est plus soutenue. Des fonctions copiées-collées à six endroits. Aucun test automatisé, donc chaque correctif casse autre chose. Une base de données dont la structure a été « patchée » au fil des demandes. Une documentation absente, avec un seul développeur qui connaît le système.
Pourquoi elle s'accumule
Rarement par incompétence. Plus souvent parce que les délais l'exigeaient, parce que le logiciel a grandi bien au-delà de ce pour quoi il avait été conçu, ou parce que l'entretien n'a jamais été budgété. Un logiciel sans budget de maintenance accumule de la dette aussi sûrement qu'un immeuble sans entretien.
Comment la gérer
D'abord la mesurer : un audit de code chiffre les versions en fin de vie, la duplication et la couverture de tests. Ensuite la rembourser par tranches, à même les projets en cours, plutôt qu'en un grand chantier qui n'arrive jamais. Quand la dette dépasse la valeur du système, la refonte devient l'option la moins coûteuse.