Dans mon travail, nous appliquons une règle très simple: les modifications doivent être examinées par au moins un autre développeur avant une fusion ou une validation dans le coffre . Dans notre cas, cela signifie que l’autre personne vous trouve physiquement à votre ordinateur et parcourt la liste des modifications. Ce n'est pas un système parfait, mais il a néanmoins sensiblement amélioré la qualité du code.
Si vous savez que votre code va être révisé, vous devez l'examiner en premier. De nombreux problèmes deviennent alors apparents. Dans notre système, vous devez expliquer ce que vous avez fait à l'examinateur, ce qui vous fait à nouveau remarquer des problèmes que vous avez peut-être manqués auparavant. De plus, si quelque chose dans votre code n'est pas immédiatement clair pour le relecteur, c'est une bonne indication qu'un meilleur nom, un commentaire ou une refactorisation est nécessaire. Et, bien sûr, le critique peut également rencontrer des problèmes. En outre, en plus d'examiner le changement, le relecteur peut également remarquer des problèmes dans le code à proximité.
Ce système présente deux inconvénients principaux. Lorsque le changement est trivial, il n’a pas de sens de le revoir. Cependant, nous devons absolument nous en tenir aux règles, pour éviter la pente glissante de déclarer des modifications «triviales» quand elles ne le sont pas. D'un autre côté, ce n'est pas un très bon moyen de passer en revue les modifications importantes apportées au système ou l'ajout de nouveaux composants volumineux.
Nous avions déjà essayé des revues plus formelles, lorsqu'un développeur envoyait par courrier électronique le code à réviser au reste de l'équipe, puis toute l'équipe se réunissait pour en discuter. Cela a pris beaucoup de temps à tout le monde et, par conséquent, ces examens étaient peu nombreux, et seul un faible pourcentage de la base de code a été examiné. Le message "une autre personne examine les modifications avant la validation" a beaucoup mieux fonctionné pour nous.