Essayer gratuitement
4 min lecture Guide 758 of 877

Spécifications Techniques pour le Développement

De bonnes spécifications préviennent le retravail. GitScrum aide les équipes à créer et suivre les specs techniques qui guident l'implémentation efficacement.

Quand Écrire des Specs

Arbre de Décision Spec

AVEZ-VOUS BESOIN D'UNE SPEC TECHNIQUE?
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ Ce travail est-il significatif?                            │
│ (> 1 semaine de travail, plusieurs composants, risqué)    │
│                                                             │
│ OUI                              NON                       │
│  ↓                                ↓                        │
│ Coordination inter-équipes      Est-ce bien compris?      │
│ nécessaire?                                                │
│                                  OUI → Description tâche   │
│ OUI → SPEC COMPLÈTE              NON → Mini-spec ou RFC   │
│ NON → Est-ce architecturalement                           │
│       significatif?                                        │
│                                                             │
│       OUI → DESIGN DOC / ADR                              │
│       NON → MINI-SPEC                                     │
│                                                             │
│ ═══════════════════════════════════════════════════════════ │
│                                                             │
│ SPEC COMPLÈTE: Nouvelles features, redesigns, intégrations│
│ MINI-SPEC: Changements plus petits nécessitant clarté    │
│ ADR: Décisions d'architecture                             │
│ DESC TÂCHE: Travail petit, bien compris                   │
│                                                             │
│ EN CAS DE DOUTE:                                            │
│ Si vous devriez l'expliquer à quelqu'un pendant > 5 min, │
│ écrivez-le.                                                │
└─────────────────────────────────────────────────────────────┘

Structure de Spec

Template Spécification Technique

TEMPLATE SPÉCIFICATION TECHNIQUE:
┌─────────────────────────────────────────────────────────────┐
│ SPEC: Fonctionnalité Export Utilisateur                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ Auteur: @alex                                              │
│ Statut: Brouillon → Revue → Approuvé                      │
│ Date: 2024-01-15                                           │
│ Tâche Liée: PROJ-123                                       │
│                                                             │
│ ═══════════════════════════════════════════════════════════ │
│                                                             │
│ 1. VUE D'ENSEMBLE                                           │
│ ─────────────────                                          │
│ Résumé bref de ce que fait cette feature et pourquoi.     │
│                                                             │
│ 2. CONTEXTE                                                 │
│ ──────────                                                 │
│ Contexte: Pourquoi construisons-nous ça?                  │
│ État actuel: Comment ça marche aujourd'hui?              │
│ Source exigences: Lien vers exigences produit            │
│                                                             │
│ 3. OBJECTIFS & NON-OBJECTIFS                                │
│ ───────────────────────────                                │
│ Objectifs:                                                  │
│ • Ce que nous résolvons                                   │
│                                                             │
│ Non-objectifs:                                              │
│ • Ce que nous ne résolvons explicitement PAS              │
│ • Considérations futures                                  │
│                                                             │
│ 4. SOLUTION PROPOSÉE                                        │
│ ────────────────────                                       │
│ Approche haut niveau et architecture                      │
│                                                             │
│ 5. DESIGN DÉTAILLÉ                                          │
│ ──────────────────                                         │
│ Changements API, modèles de données, interactions         │
│                                                             │
│ 6. CAS LIMITES                                              │
│ ─────────────                                              │
│ Que se passe-t-il quand...?                               │
│                                                             │
│ 7. STRATÉGIE DE TEST                                        │
│ ────────────────────                                       │
│ Comment cela sera-t-il testé?                             │
│                                                             │
│ 8. PLAN DE ROLLOUT                                          │
│ ──────────────────                                         │
│ Comment cela sera-t-il déployé et surveillé?              │
│                                                             │
│ 9. QUESTIONS OUVERTES                                       │
│ ─────────────────────                                      │
│ Décisions encore nécessaires                              │
│                                                             │
│ 10. ANNEXE                                                  │
│ ──────────                                                 │
│ Diagrammes, exemples API, références                      │
└─────────────────────────────────────────────────────────────┘

Solutions Connexes