Orange sticky note reading Fix This Later stuck on a monitor full of code

Dette technique : le coût caché

LOGICIEL · INGÉNIERIE · GESTION DE PROJET

Dette technique :
Le coût caché du « On corrigera ça plus tard »

Par Gabriel Weider · grabNade · 7 min de lecture · Fondamentaux de l'ingénierie

Dans chaque base de code, chaque architecture système et chaque processus de production se trouve une décision prise sous pression et jamais remise en question. Un contournement devenu permanent. Une solution temporaire qui a survécu au chef de projet qui l'a approuvée. Un commentaire qui dit // TODO : corriger correctement — daté d'il y a trois ans.

C'est la dette technique. Et contrairement à la dette financière, elle n'apparaît sur aucun bilan comptable avant que le paiement des intérêts ne soit exigé.

## 01. CE QU'EST VRAIMENT LA DETTE TECHNIQUE

Le terme a été inventé par l'ingénieur logiciel Ward Cunningham en 1992, mais le concept s'applique bien au-delà du code. La dette technique est le coût cumulé du choix d'une solution plus rapide ou plus simple aujourd'hui au lieu de la meilleure solution, qui prendrait plus de temps.

Comme la dette financière, elle comprend un capital et des intérêts. Le capital correspond au travail de refonte nécessaire pour mettre en œuvre la bonne solution. Les intérêts sont le coût continu du contournement de la solution de facilité — développement plus lent, maintenance plus difficile, systèmes plus fragiles, taux de défauts plus élevés.

La différence cruciale avec la dette financière : la dette technique s'accumule silencieusement. Vous ne recevez pas de relevé mensuel. Les intérêts s'accumulent de manière invisible sous forme de vélocité ralentie, d'augmentation du nombre de bugs, de temps d'intégration plus longs pour les nouveaux ingénieurs et de systèmes de plus en plus difficiles à modifier.

> LA MÉTAPHORE ORIGINALE (Ward Cunningham, 1992) : « Livrer du code pour la première fois, c'est comme s'endetter. Un peu de dette accélère le développement tant qu'elle est remboursée rapidement par une réécriture... Le danger survient lorsque la dette n'est pas remboursée. Chaque minute passée sur un code imparfait compte comme un intérêt sur cette dette. »

## 02. COMMENT LA DETTE TECHNIQUE S'ACUMULE

> DEBT_ACCUMULATION.model — Coût du changement au fil du temps
Sprint 1
Faible dette — itération rapide
Mois 3
Moyenne — contournements qui s'accumulent
Année 1
Élevée — chaque modification casse quelque chose
Année 3+
Critique — réécriture ou effondrement

La dette technique ne résulte généralement pas de la paresse ou de l'incompétence. Elle résulte de décisions rationnelles prises dans des contraintes réelles. L'échéance était réelle. Le budget était fixe. Le MVP devait être livré. Le contournement était la bonne décision — à l'époque. Le problème est ce qui se passe ensuite : l'échéance passe, la pression se déplace vers la fonctionnalité suivante, et personne ne revient corriger la solution de facilité.

## 03. LES QUATRE TYPES DE DETTE TECHNIQUE

Toutes les dettes techniques ne se valent pas. Le quadrant de la dette technique de Martin Fowler identifie quatre types basés sur deux axes : délibéré vs involontaire, et imprudent vs prudent.

Délibéré · Prudent

« Nous savons que ce n'est pas correct — nous le corrigerons après le lancement »

La forme la plus gérable. Un compromis conscient, pris en pleine connaissance de cause du coût et avec un plan pour le rembourser. Acceptable lorsque le remboursement a réellement lieu. Dangereux lorsque « après le lancement » devient « jamais ».

Délibéré · Imprudent

« Nous n'avons pas le temps de le concevoir correctement »

Des raccourcis pris sans reconnaître ni planifier les conséquences. Souvent déguisés en pragmatisme. S'accumule le plus rapidement car il n'y a aucune intention de rembourser — la dette n'est même pas reconnue comme telle.

Involontaire · Prudent

« Maintenant, nous savons comment nous aurions dû le faire »

Une dette contractée par un véritable manque de connaissances au moment de la décision. L'équipe a fait de son mieux avec ce qu'elle savait — la meilleure approche n'est devenue claire qu'avec l'expérience. Courant dans les domaines techniques en évolution rapide.

Involontaire · Imprudent

« Que voulez-vous dire par architecture en couches ? »

Une dette due à l'ignorance de ce à quoi ressemble une bonne pratique. L'équipe n'a pas réalisé qu'elle créait de la dette. La plus coûteuse à découvrir car elle est souvent profondément ancrée avant que quelqu'un ne l'identifie.

// équipement associé
« Là où "on corrigera ça plus tard" rencontre "plus tard n'est jamais arrivé". » T-shirt pour femmes sur la dette technique · Coupe décontractée
→

## 04. LES SYMPTÔMES — À QUOI RESSEMBLE LA DETTE TECHNIQUE EN PRATIQUE

La dette technique se fait rarement remarquer. Elle apparaît indirectement, à travers des symptômes que les équipes attribuent souvent à d'autres causes :

Symptôme Ce qu'il signale vraiment
Les changements « simples » prennent des semaines Couplage élevé — tout dépend de tout le reste
Les nouveaux ingénieurs mettent des mois à être productifs Aucune documentation, modèles incohérents, système trop complexe à apprendre rapidement
Les corrections de bugs introduisent de nouveaux bugs Architecture fragile, absence de tests, contournements construits sur des contournements
Personne ne veut toucher au Module X Zone à forte dette — tout le monde le sait, mais personne n'a le temps de la corriger
La vélocité chute chaque trimestre Les paiements d'intérêts augmentent — on passe plus de temps à combattre le système qu'à développer des fonctionnalités
« Nous avons besoin d'une réécriture complète » Le capital de la dette a dépassé la valeur d'un remboursement progressif — les intérêts composés ont gagné
> L'INTERSECTION ÉCHÉANCE / BUDGET / DETTE TECHNIQUE : La dette technique est ce qui se trouve au centre du diagramme de Venn où se chevauchent la pression de l'échéance et les contraintes budgétaires. Lorsque vous les comprimez simultanément sans tenir compte du coût, la dette technique est ce qui comble le vide. Ce n'est pas une métaphore — c'est le reste mesurable et cumulatif de chaque compromis qui n'a pas été correctement évalué.

## 05. GÉRER LA DETTE TECHNIQUE — L'APPROCHE PRATIQUE

L'objectif n'est pas d'avoir zéro dette technique. Une partie de la dette est rationnelle — le type délibéré et prudent qui accélère la livraison lorsqu'il est remboursé dans les temps. L'objectif est une dette gérée : visible, suivie et remboursée avant que les intérêts ne dépassent le gain initial.

La rendre visible

La dette technique qui n'est pas suivie n'est pas remboursée. Créez un registre de la dette — une simple liste des raccourcis connus, de leur coût de remboursement estimé et de leur taux d'intérêt actuel (à quel point ils vous ralentissent). Ce qui est mesuré est géré.

Allouer une capacité de remboursement

Une règle générale courante consiste à réserver environ 20 % de la capacité d'ingénierie au remboursement de la dette — refactorisation, documentation, améliorations de l'architecture. Les équipes qui sautent cette étape constatent que le pourcentage augmente involontairement à mesure que les coûts de service de la dette consomment de plus en plus la capacité des sprints.

Arrêter d'accumuler avant de rembourser

Rembourser la dette tout en continuant à l'accumuler au même rythme revient à courir sur place. Avant qu'un remboursement agressif ne soit pertinent, les conditions qui ont créé la dette — échéances irréalistes, absence de revues de conception, absence de définition du « fini » — doivent changer.

Prioriser par taux d'intérêt, et non par capital

Remboursez d'abord la dette qui vous coûte le plus par sprint, et non celle qui a le plus gros capital. Un petit raccourci architectural dans une zone à fort taux de changement coûte plus cher en intérêts quotidiens qu'un gros module hérité que personne ne touche.

> LA CONVERSATION HONNÊTE À AVOIR : Lorsque quelqu'un demande une livraison plus rapide et que vous connaissez les raccourcis nécessaires — nommez la dette explicitement. « Nous pouvons livrer cela en deux semaines si nous sautons la couverture de tests et codons en dur la configuration. Cela crée environ trois semaines de dette de refonte que nous devrons rembourser au troisième trimestre. » Rendez le compromis visible. Laissez la partie prenante prendre une décision éclairée. C'est ça l'ingénierie, pas seulement le codage.
// équipement associé
« Bien. Rapide. Pas cher. Choisissez-en deux. » Le T-shirt du triangle de l'ingénierie
→

## 06. CE QU'IL FAUT RETENIR

La dette technique n'est pas un échec de l'ingénierie. C'est une caractéristique de l'ingénierie dans des contraintes réelles. L'échec consiste à prétendre qu'elle n'existe pas — à traiter « on corrigera ça plus tard » comme une phrase complète plutôt que comme le début d'un plan.

Les meilleures équipes d'ingénierie n'ont pas zéro dette. Elles ont une dette qu'elles peuvent voir, un taux qu'elles peuvent se permettre et un calendrier de remboursement qu'elles suivent réellement. Elles savent que l'échéance et le budget n'existent pas en vase clos — ils se chevauchent dans la dette technique, et ce qui se trouve à cette intersection déterminera finalement si le système est un atout ou un passif.

Les ingénieurs qui comprennent cela ne se contentent pas de livrer plus vite. Ils livrent des systèmes qui restent livrables.

// grabnade.com · vêtements

Échéance. Budget. Dette technique.
Lois de la physique.

Le diagramme de Venn que vos parties prenantes
doivent voir avant la prochaine planification de sprint.
Portez-le à la réunion.
[ ACHETER LE T-SHIRT ]
Retour au blog

Laisser un commentaire

Veuillez noter que les commentaires doivent être approuvés avant d'être publiés.