La revue avant la revue — pourquoi et comment

Avant que l’humain ne relise, un reviewer indépendant attaque le travail sous plusieurs angles et émet un verdict. La revue humaine reçoit alors un artefact déjà filtré — pas un brouillon.

Le problème (contexte concret)

Quand la première relecture d’un changement est faite par un humain, elle consomme le temps le plus cher de l’équipe sur des défauts qu’un contrôle systématique aurait pu attraper : test qui n’assère rien, dépendance qui viole une frontière, critère d’acceptation oublié. Le relecteur se fatigue sur le trivial et passe à côté du subtil. Le cycle s’allonge à chaque aller-retour.

L’idée review-before-review : intercaler une revue adverse assistée entre la production et la revue humaine. Elle ne remplace pas l’humain — elle lui livre un travail déjà nettoyé des défauts détectables.

Ce que disent les sources

Wiegers fonde toute revue sur des critères explicites et sur l’effet de plusieurs regards.

« Peer reviews are the single most effective quality practice a software organization can employ. » — Wiegers, K., Peer Reviews in Software, 2002.

Et sur la valeur de regards multiples et indépendants :

« The combined attention of several reviewers finds defects a single reader misses. » — Wiegers, K., Peer Reviews in Software, 2002.

Application dans SKRAFT

Chaque phase a un reviewer indépendant (jamais le producteur). En DELIVER, ce reviewer applique 4 lentilles indépendantes puis une synthèse pondérée (pattern Genesis A7).

Travail produit (phase N)
        │
        ▼
┌──────────────────────────── Reviewer indépendant ──────────────────────────┐
│  Lentille 1  cold-reader            ──► verdict + findings                  │
│  Lentille 2  architecture-boundaries ──► verdict + findings                 │
│  Lentille 3  test-integrity         ──► verdict + findings                  │
│  Lentille 4  quality-gates          ──► verdict + findings                  │
│                          │                                                  │
│                          ▼  synthèse pondérée                               │
│            APPROVED  /  CHANGES_REQUESTED  /  REJECTED                       │
└─────────────────────────────────────────────────────────────────────────────┘
        │
        ▼
  (si APPROVED) transition de phase  ──►  revue humaine sur un artefact propre

Un seul BLOCKER sur une lentille suffit à renvoyer le travail (CHANGES_REQUESTED), avec un nombre de reprises borné avant escalade humaine. Le verdict et ses findings sont tracés — la revue humaine voit pourquoi c’est passé.

Lentilles conditionnelles en DELIVER

Le panel n’est pas fixe : aux 4 lentilles CORE s’ajoutent des lentilles de fidélité quand le software-engineer a délégué du câblage de test à un worker. Si mock-integration-worker a posé un mock, mock-fidelity-lens rejoint le panel ; si contract-testing-worker a posé un test de contrat, c’est contract-fidelity-lens. Chacune attaque la fidélité du câblage (le mock/contrat reflète-t-il vraiment le dépendant ?) et honore la même règle de BLOCKER. Voir le fan-out DELIVER et la référence des lentilles.

Pièges & anti-patterns

Sources

Pour aller plus loin : Les lentilles de revue, Les gates, La revue avant la revue (principe).