Aller au contenu principal
Retour au blog

Le vrai coût de la dette technique : étude de cas sur 3 projets PHP

Flavien Métivier14 avril 20269 min

La dette technique, tout le monde en parle. Mais combien coûte-t-elle vraiment ? Pas en termes abstraits de "vélocité réduite", mais en euros sur la table. Voici trois études de cas anonymisées, tirées de missions réelles, avec les chiffres bruts.

Projet A : e-commerce, 200k LOC, score D

Un e-commerce Symfony 4.4 avec 200 000 lignes de code, une équipe de 6 développeurs et un score de santé D (42/100). Le projet tournait depuis 5 ans sans audit technique.

Symptômes visibles :

  • Temps de déploiement : 45 minutes (devrait être < 5 min)
  • Taux de régression : 30% des mises en production causaient un bug critique
  • Vélocité en chute : l'équipe livrait 40% de features en moins qu'un an plus tôt
  • Turnover développeurs : 2 départs en 6 mois, citant la frustration liée au code legacy

Causes racines identifiées :

  • Zéro test automatisé — couverture à 3%
  • 47 God classes de plus de 1 000 lignes
  • Couplage circulaire entre 12 modules
  • Symfony 4.4 en fin de vie, PHP 7.4 (plus de support sécurité)
  • Pas d'analyse statique (PHPStan, Psalm) dans le pipeline

Remédiation : 6 mois de travail avec une approche incrémentale. Phase 1 : mise en place de PHPStan niveau 5 et couverture de tests à 40% sur le code critique. Phase 2 : extraction des God classes en services dédiés. Phase 3 : migration Symfony 6.4 + PHP 8.3. Coût total : 45 000 EUR.

Projet B : SaaS B2B, 80k LOC, score C

Un SaaS B2B Symfony 5.4, 80 000 lignes de code, équipe de 3 développeurs. Score de santé C (61/100). Le projet avait 2 ans et une bonne base architecturale, mais la dette s'accumulait.

Symptômes visibles :

  • Temps de build CI : 25 minutes (frein à la productivité)
  • PHPStan bloqué au niveau 3 depuis 8 mois (impossible de monter)
  • 12 vulnérabilités connues dans les dépendances (dont 3 hautes)
  • Temps moyen de merge d'une PR : 4 jours (reviews lentes)

Causes racines :

  • Duplication de code à 14% (seuil acceptable : < 5%)
  • 8 dépendances obsolètes dont 2 abandonnées
  • Tests d'intégration fragiles qui cassaient aléatoirement
  • Pas de cache dans le pipeline CI

Remédiation : 3 mois de travail ciblé. Optimisation du pipeline CI (25 min ramenées à 7 min), montée de PHPStan niveau 3 à 8, extraction des blocs dupliqués, mise à jour des dépendances critiques. Coût total : 15 000 EUR.

Projet C : fintech, 150k LOC, score F

Envie d'aller plus loin ?

Réserver un appel découverte

Une application fintech de 150 000 lignes, score F (18/100). Ce projet est le cas d'école de ce qui arrive quand la dette technique est ignorée pendant trop longtemps.

Symptômes visibles :

  • Incidents de sécurité mensuels — deux failles critiques exploitées en production
  • Impossible d'ajouter une feature sans en casser trois autres
  • Aucun développeur senior n'acceptait de rejoindre l'équipe après avoir vu le code
  • Temps de correction d'un bug moyen : 3 jours (au lieu de quelques heures)

Causes racines :

  • Architecture "big ball of mud" — aucune séparation des responsabilités
  • SQL brut partout, sans requêtes paramétrées (failles injection)
  • Framework custom maison au lieu de Symfony ou Laravel
  • Zéro documentation, zéro test, zéro CI
  • PHP 5.6 (fin de vie depuis 2018)

Décision : après 2 mois d'audit et de tentatives de remédiation, la conclusion était unanime : la réécriture complète coûtait moins cher que la réparation. Le projet a été réécrit from scratch en Symfony 7 en 8 mois. Coût total : 120 000 EUR.

Le plus frappant dans ce cas : si un audit avait été réalisé 3 ans plus tôt, quand le score était probablement autour de D, la remédiation aurait coûté 30-40k EUR. L'inaction a multiplié le coût par 3.

Le coût caché : l'impact humain

Au-delà des euros, la dette technique a un coût humain considérable. Sur le projet A, le turnover de l'équipe a coûté environ 20 000 EUR en recrutement (annonces, entretiens, onboarding). Sur le projet C, l'équipe entière était en situation de stress chronique — chaque mise en production était un moment de tension. Le CTO a fini par quitter l'entreprise. La dette technique ne détruit pas seulement le code. Elle détruit les équipes.

Les leçons à retenir

Ces trois projets illustrent une règle universelle : le coût de la dette technique suit une courbe exponentielle. Plus tu attends, plus c'est cher.

  • La détection précoce économise un facteur 10x — Le projet B a coûté 15k EUR parce que le problème a été identifié tôt. Le projet C a coûté 120k EUR parce qu'il a été ignoré pendant des années.
  • Le monitoring automatisé est la clé — PHPStan, Psalm, un audit de dépendances : si tu ne mesures pas, tu ne vois rien venir.
  • Le ROI de l'audit proactif est massif — Un audit à 990-1 990 EUR qui détecte un problème de 50 000 EUR, c'est un investissement rentable à 25x.
  • La dette technique a un coût humain — Turnover, frustration, burnout. Les développeurs quittent les projets où le code est trop douloureux.

Quel est le score de votre projet ?

Vous ne connaissez probablement pas le score de santé de votre codebase PHP. C'est normal — la plupart des équipes ne le mesurent pas. Bear Scan analyse votre code sur 6 axes (qualité, sécurité, architecture, tests, performance, dépendances), attribue un score de A à F et fournit une roadmap priorisée par ROI. Vous savez exactement où vous en êtes et quoi corriger en premier.

Cet article vous a plu ? Partagez-le !

Envie d'aller plus loin ?

Discutons de votre projet et voyons comment je peux vous aider.