Introduction
Les revues sont des tests statiques, c’est à dire que c’est des tests que l’on peut exécuter sans avoir besoin de faire fonctionner le logiciel. L’intérêt de ces tests est très grand d’un point de vue économie d’argent (on détecte les anomalies plus tôt) mais aussi time to market (avec une correction plus rapide). C’est d’ailleurs un élément essentiel dans toute démarche de shift left.
De plus, les revues ont le mérite de pouvoir s’appliquer à de très nombreux livrables. On pense souvent aux revues des spécifications lorsque l’on aborde les revue d’un point de vue de testeur mais les revues de code sont maintenant très fréquentes et je conseille fortement les revues de test.
Comme vous pouvez le constater le sujet des revues est très vaste et important lorsque l’on parle de qualité logicielle il est donc tout à fait normal que l’ISTQB aborde ce sujet en profondeur dès son syllabus fondation.
L’objet de cet article est de présenter les revues sous l’angle d’une présentation se rapprochant fortement de l’ISTQB en abordant ces points:
- Le but des revues
- Les différentes revues
- Les rôles dans les revues
- Les étapes des revues
- Les facteurs de succès et pièges à éviter
Le but des revues
Le but principal des revues est de détecter des défauts. Il est important de le rappeler car le rôle de toute personne participant à une revue afin d’adopter la bonne posture lors de ces revues. Il faut néanmoins faire attention à ce qui peut être parfois mal vécu par la personne ayant écrit le document revu.
Les revues permettent également de se synchroniser et de s’assurer une compréhension commune (en Agile on parlerai par exemple de BDD)
Les revues peuvent également permettre d’identifier au plus tôt des risques et donc de mieux cibler ses efforts de test.
Les revues peuvent également servir, selon l’ISTQB, à former des personnes, discuter ou arriver à un consensus.
S’il faut retenir quelque chose du but des revues c’est que comme pour tout test, leurs objectifs ne sont pas uniquement de trouver des défauts (même si c’est le principal) mais aussi créer de l’information!
Les différentes revues
Les revues peuvent être informelles (comme ce que l’on peut faire régulièrement après avoir écrit des test ou développé son code) en comité restreint (ex: 2 personnes) ou beaucoup plus formelles avec des processus clairs et de nombreux participants. L’ISTQB propose de catégoriser ces revues en 4:
- La revue informelle qui demande peu d’investissement et qui peut être multipliée. On peut imaginer ici un testeur Agile ayant finit de préparer ses tests pour une US et demandant au PO de valider que ses tests sont pertinents.
- La relecture technique qui est plus poussée que la revue informelle car fait l’objet d’une réunion dirigée par l’auteur du document à revoir.
- La revue technique, beaucoup plus formelle.
- L’inspection, très formelle où un modérateur et des métriques sont prévus.
On peut le résumer ainsi:
Type de revue | Spécificités | Objectifs |
La revue informelle | L’efficacité dépend du réviseur Des résultats pour très peu d’investissement | Trouver des défauts Apprendre |
La relecture technique | Fait l’objet d’une réunion dirigée par l’auteur | Trouver des défauts Apprendre |
La revue technique | Fait l’objet d’une réunion avec une possibilité de la présence de l’encadrement (manager…) Va plus loin que l’unique identification des défauts | Discuter Trouver des défauts Évaluer les alternatives |
L’inspection | Processus strict Un modérateur est définit (ainsi que les autres rôles) Inclut des métriques | Trouver des défauts |
Les parties sur les rôles et les étapes dépendent fortement du type de revue. Les rôles ne seront pas forcément présents en fonction du type de revue et il en est de même pour les étapes.
Les étapes et rôles présentés le seront dans le cadre d’une inspection. Cela pourra être allégé en fonction du degré de « formalité » de chaque revLes rôles dans les revues
L’ISTQB définit 6 rôles dans les revues (1 personne pouvant occuper plusieurs rôles):
Rôle | Responsabilités |
Le facilitateur (modérateur) | Dirige la réunion de revue Assure de la validation de la checklist |
L’auteur | Celui qui a écrit le document à réviser (il doit pouvoir répondre à des questions et expliquer des décisions) |
Le manager | Responsable de la planification des revues Gère la mise en place et le suivi des processus de revue |
Le responsable de la revue | Prend la responsabilité générale de la revue Décide qui sera impliqué et organise quand et où elle aura lieu |
Le scribe | Prend les notes pour le compte rendu Enregistre les actions à prendre Assure le suivi des actions à prendre |
Les réviseurs | En général l’ensemble des participants à la revue Idéalement au moins 1 personne par service impacté |
Il est bon de noter que la présence du manager n’est généralement pas requise. De même, le responsable de la revue est souvent l’auteur.
Si l’on doit retenir 4 rôles il faut retenir:
- L’auteur qui doit toujours être présent
- Les réviseurs qui sont l’essence de toute revue
- Le modérateur pour éviter les tensions
- Le scribe pour que la revue ait un vrai impact!
Les étapes des revues
Une revue formelle doit suivre un processus clair et établit que je représente comme ceci:
Vous noterez que la réunion de revue n’est qu’une partie de ce processus. Les réviseurs doivent arriver préparé à une revue afin de ne pas perdre de temps. De même, les réunions de revues trouvent des défauts, elles ne les corrigent pas! Le suivi est essentiel pour assurer cette correction car détecter des anomalies sans les corriger n’est pas très utile.
Les facteurs de succès et pièges à éviter
Les facteurs de succès sont assez nombreux on peut notamment mettre en avant ceci:
- La sélection du bon type de revue en fonction du besoin (il est inconcevable de faire des inspections pour chaque revue de code dans une chaîne d’intégration continue!)
- Bien définir les objectifs de chaque revue, si nécessaire par l’utilisation de checklist
- Laisser un temps de préparation suffisant aux participants
- Bien sélectionner les participants
- Assurer un suivi des réunions de revue
- La revue est mené dans un climat de confiance, de collaboration
- Mettre en avant un culture d’apprentissage
Ces facteurs de succès sont évidemment très liés à des pièges à éviter. Il faut notamment éviter de:
- Se servir des revues pour mettre en défaut des personnes
- Sélectionner des personnes peu concernées par la revue à faire ou avec un état d’esprit potentiellement incompatible
- Ne pas faire de suivi
- Découvrir le document à réviser
Conclusion
Les revues sont des outils très flexibles (on peut quasiment tout revoir!) et efficaces que je considère comme nécessaires! Elles permettent de tester tôt et de se synchroniser ce qui engendre des gains très importants de temps et d’argent. Ce n’est pas pour rien que, sous d’autres noms (3 amigos, sprint planning, planning poker…), elles sont très présentes en Agile.
Il reste cependant important de noter que, comme tout outil, il est important de savoir s’en servir correctement. C’est pourquoi, en dehors des revues informelles, il peut être nécessaire dans certains cas d’avoir des formations ou des personnes pour encadrer les premières revues. Le rôle de modérateur est alors primordial dans la mise en place de revue formelles.
Pensez à rejoindre le groupe « Le métier du test » si vous souhaitez échanger sur le test
Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles
N’hésitez pas à faire vos propres retours d’expérience en commentaire.