Files
gh-wasabeef-claude-code-coo…/commands/tech-debt.md
2025-11-30 09:05:34 +08:00

186 lines
9.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Tech Debt
Analyse quantitativement la dette technique du projet et visualise les scores de santé avec l'impact sur l'efficacité de développement. Suit les améliorations grâce à l'analyse de tendances, calcule les coûts temporels et crée un plan d'amélioration priorisé.
### Utilisation
```bash
# Vérifier la configuration du projet pour analyser la dette technique
ls -la
"Analyser la dette technique de ce projet et créer un plan d'amélioration"
```
### Tableau de Bord de Santé du Projet
```text
Score de Santé du Projet: 72/100
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 Scores par Catégorie
├─ Fraîcheur des dépendances: ████████░░ 82% (À jour: 45/55)
├─ Complétude de documentation: ███░░░░░░░ 35% (Manque README, docs API)
├─ Couverture de tests: ██████░░░░ 65% (Objectif: 80%)
├─ Sécurité: ███████░░░ 78% (Vulnérabilités: 2 Medium)
├─ Architecture: ██████░░░░ 60% (Dépendances circulaires: 3 emplacements)
└─ Qualité du code: ███████░░░ 70% (Complexité élevée: 12 fichiers)
📈 Tendances (30 derniers jours)
├─ Score global: 68 → 72 (+4) ↗️
├─ Éléments améliorés: 12 ✅
├─ Nouvelle dette: 3 ⚠️
├─ Dette résolue: 8 🎉
└─ Vitesse d'amélioration: +0.13/jour
⏱️ Impact temporel de la dette
├─ Ralentissement du développement: -20% (développement de nouvelles fonctionnalités prend 1.25x le temps normal)
├─ Temps de correction de bugs: +15% (temps de correction moyen 2h → 2.3h)
├─ Revue de code: +30% (temps supplémentaire par complexité de compréhension)
├─ Intégration: +50% (temps nécessaire pour que les nouveaux membres comprennent)
└─ Temps de retard cumulé: Équivalent à 40 heures/semaine
🎯 Effets attendus d'amélioration (basés sur le temps)
├─ Effet immédiat: Vitesse de développement +10% (après 1 semaine)
├─ Effet à court terme: Taux de bugs -25% (après 1 mois)
├─ Effet à moyen terme: Vitesse de développement +30% (après 3 mois)
├─ Effet à long terme: Temps de maintenance -50% (après 6 mois)
└─ ROI: Investissement 40 heures → Récupération 120 heures (3 mois)
```
### Exemples de Base
```bash
# Analyse détaillée du score de santé
find . -name "*.js" -o -name "*.ts" | xargs wc -l | sort -rn | head -10
"Calculer le score de santé du projet et évaluer par catégories"
# Analyse d'impact de dette TODO/FIXME
grep -r "TODO\|FIXME\|HACK\|XXX\|WORKAROUND" . --exclude-dir=node_modules --exclude-dir=.git
"Évaluer ces TODOs par impact de dette (temps×importance)"
# Vérification de santé des dépendances
ls -la | grep -E "package.json|Cargo.toml|pubspec.yaml|go.mod|requirements.txt"
"Calculer le score de fraîcheur des dépendances et analyser les risques et effets des mises à jour"
```
### Collaboration avec Claude
```bash
# Analyse intégrale de dette technique
ls -la && find . -name "*.md" -maxdepth 2 -exec head -20 {} \;
"Analyser la dette technique de ce projet sous ces perspectives:
1. Qualité du code (complexité, duplication, maintenabilité)
2. Santé des dépendances
3. Risques de sécurité
4. Problèmes de performance
5. Manque de couverture de tests"
# Analyse de dette architecturale
find . -type d -name "src" -o -name "lib" -o -name "app" | head -10 | xargs ls -la
"Identifier la dette technique au niveau architectural et proposer un plan de refactorisation"
# Plan d'amélioration priorisé
"Évaluer la dette technique selon ces critères et présenter en format tableau:
- Impact (Élevé/Moyen/Faible)
- Coût de correction (temps)
- Risque technique (possibilité de panne système, perte de données)
- Effet de réduction de temps par amélioration
- Moment recommandé d'implémentation"
```
### Exemples Détaillés
```bash
# Détection automatique du type de projet et analyse
find . -maxdepth 2 -type f \( -name "package.json" -o -name "Cargo.toml" -o -name "pubspec.yaml" -o -name "go.mod" -o -name "pom.xml" \)
"Basé sur le type de projet détecté, analyser:
1. Dette technique spécifique au langage/framework
2. Écarts des meilleures pratiques
3. Opportunités de modernisation
4. Stratégie d'amélioration graduelle"
# Analyse de métriques de qualité du code
find . -type f -name "*" | grep -E "\.(js|ts|py|rs|go|dart|kotlin|swift|java)$" | wc -l
"Analyser la qualité du code du projet et présenter ces métriques:
- Fonctions avec haute complexité cyclomatique
- Détection de code dupliqué
- Fichiers/fonctions trop longs
- Manque de gestion d'erreur appropriée"
# Détection de dette de sécurité
grep -r "password\|secret\|key\|token" . --exclude-dir=.git --exclude-dir=node_modules | grep -v ".env.example"
"Détecter la dette technique liée à la sécurité et proposer la priorité de correction et les contre-mesures"
# Analyse de manque de tests
find . -type f \( -name "*test*" -o -name "*spec*" \) | wc -l && find . -type f -name "*.md" | xargs grep -l "test"
"Analyser la dette technique de couverture de tests et proposer une stratégie de tests"
```
### Matrice de Priorités de Dette
```text
Priorité = (Impact × Fréquence) ÷ Coût de correction
```
| Priorité | Impact sur développement | Coût de correction | Effet de réduction de temps | Retour sur investissement | Délai de réponse |
| -------------------------- | ------------------------ | ------------------ | --------------------------- | --------------------------------- | ---------------- |
| **[P0] Réponse immédiate** | Élevé | Faible | > 5x | Investissement 1h→Réduction 5h+ | Immédiat |
| **[P1] Cette semaine** | Élevé | Moyen | 2-5x | Investissement 1h→Réduction 2-5h | Dans 1 semaine |
| **[P2] Ce mois** | Faible | Élevé | 1-2x | Investissement 1h→Réduction 1-2h | Dans 1 mois |
| **[P3] Ce trimestre** | Faible | Faible | < 1x | Investissement=temps de réduction | Dans 3 mois |
### Critères d'Évaluation par Type de Dette
| Type de dette | Méthode de détection | Impact sur développement | Temps de correction |
| ---------------------------- | --------------------------------------- | ------------------------------------------------------------ | ------------------- |
| **Dette architecturale** | Dépendances circulaires, couplage élevé | Grande portée d'impact lors de changements, tests difficiles | 40-80h |
| **Dette de sécurité** | Scan CVE, OWASP | Risque de vulnérabilités, conformité | 8-40h |
| **Dette de performance** | N+1, fuites mémoire | Augmentation temps de réponse, consommation ressources | 16-40h |
| **Dette de tests** | Couverture < 60% | Détection tardive de bugs, qualité instable | 20-60h |
| **Dette de documentation** | Manque README, docs API | Temps d'intégration augmenté | 8-24h |
| **Dette de dépendances** | Non mises à jour depuis 2+ ans | Risque de sécurité, problèmes de compatibilité | 4-16h |
| **Dette de qualité du code** | Complexité > 10 | Temps de compréhension/correction augmenté | 2-8h |
### Calcul d'Impact de Dette Technique
```text
Impact = Σ(poids de chaque élément × valeur mesurée)
📊 Indicateurs d'impact mesurables:
├─ Impact sur la vitesse de développement
│ ├─ Temps de compréhension du code: +X% (proportionnel à la complexité)
│ ├─ Portée d'impact lors de changements: Y fichiers (mesuré par couplage)
│ └─ Temps d'exécution de tests: Z minutes (pipeline CI/CD)
├─ Impact sur la qualité
│ ├─ Taux d'occurrence de bugs: +25% pour chaque 10 de complexité
│ ├─ Temps de révision: lignes de code × coefficient de complexité
│ └─ Risque par manque de tests: Haut risque si couverture < 60%
└─ Impact sur l'efficacité de l'équipe
├─ Temps d'intégration: +100% par manque de documentation
├─ Concentration de connaissances: Attention nécessaire si taux de contributeur unique >80%
└─ Lieux de correction par duplication de code: taux de duplication × fréquence de changement
```
### Calcul de ROI basé sur le temps
```text
ROI = (temps réduit - temps d'investissement) ÷ temps d'investissement × 100
Exemple: Résolution de dépendances circulaires
├─ Temps d'investissement: 16 heures (refactorisation)
├─ Effet de réduction (mensuel):
│ ├─ Temps de compilation: -10 min/jour × 20 jours = 200 min
│ ├─ Temps de débogage: -2 heures/semaine × 4 semaines = 8 heures
│ └─ Ajout de nouvelles fonctionnalités: -30% réduction de temps = 12 heures
├─ Temps de réduction mensuel: 23.3 heures
└─ ROI en 3 mois: (70 - 16) ÷ 16 × 100 = 337%
```
### Notes
- Auto-détecte le langage et framework du projet pour réaliser des analyses spécifiques
- Évalue le score de santé sur une échelle de 0-100 points, considérant sain 70+ points et nécessitant amélioration <50 points
- Calcule les coûts temporels et effets d'amélioration de manière spécifique, soutenant la prise de décision basée sur les données
- Pour la conversion monétaire, spécifier séparément le salaire horaire moyen de l'équipe ou coefficients spécifiques au projet