Aller au contenu

Dette Technique

Ce que vous saurez dans 3 minutes

Dans le monde de l’IA, la dette technique est souvent cachée (“Hidden Technical Debt of ML Systems”). On pense que le code ML est la partie difficile, mais c’est souvent la “colle” (glue code), la gestion des données, les pipelines fragiles et les dépendances obscures qui coûtent le plus cher à long terme. Avec des outils comme Copilot, on peut désormais créer de la dette technique à la vitesse de la lumière. Prudence.


1. Comprendre

L’Analogie Financière (Ward Cunningham, 1992)

  • Principal : Le travail qu’il faudrait faire pour nettoyer le code maintenant.
  • Intérêts : Le temps supplémentaire que chaque nouvelle fonctionnalité prend à cause du code sale existant.
  • Faillite : Le moment où plus aucune fonctionnalité ne peut être ajoutée sans tout casser.

Les Types de Dette en IA

  1. Dette de Code : Code Python mal structuré, fonctions de 500 lignes, pas de types.
  2. Dette de Données : Dépendances instables aux sources de données (ex: un scrapper qui casse si le site change).
  3. Dette de Modèle : Utiliser un modèle “Monstre” pour une tâche simple, impossible à maintenir ou à débugger.

2. Appliquer

Comment l’IA aggrave-t-elle la dette ?

Stratégies de Remboursement

  1. Revue de Code Systématique Ne faites jamais confiance à 100% à l’IA. Relisez pour simplifier.

  2. Documentation (Docstrings) Forcez l’IA à documenter le code qu’elle produit. C’est le meilleur moyen de “geler” la compréhension.

  3. Refactoring assisté Utilisez l’IA pour réduire la dette : “Simplifie cette fonction”, “Renomme ces variables pour la clarté”. C’est le meilleur usage de l’IA.


3. Aller plus loin

Le Papier de Référence Google

Le papier “Hidden Technical Debt in Machine Learning Systems” (Google, NeurIPS 2015) a montré que dans un système ML, le code ML ne représente que 5% du système. Les 95% restants (ingestion, feature extraction, verification, monitoring) sont les vrais porteurs de dette.

Dette Technique vs Dette Fonctionnelle

Attention à ne pas confondre :

  • Dette Technique : “Le code est moche mais ça marche.”
  • Dette Fonctionnelle : “Il manque des fonctionnalités.”

L’IA comble vite la dette fonctionnelle… souvent au prix de la dette technique.


Notions Liées (Spider Web)

Ressources Externes