Critères d’acceptation : Définir ce qui constitue une fonctionnalité terminée
Les critères d’acceptation (ou critères d’acceptance) sont des conditions spécifiques qui doivent être remplies pour qu’une user story soit considérée comme complète et terminée. Rédigés principalement par le Product Owner (parfois en collaboration avec l’équipe de développement), ces critères décrivent ce qu’il est nécessaire de valider dans la fonctionnalité pour garantir qu’elle réponde aux attentes des utilisateurs et des parties prenantes.
Structure des critères d’acceptation
Les critères d’acceptation sont souvent formulés à l’aide de la structure GIVEN-WHEN-THEN (Étant donné – Quand – Alors), inspirée du langage Gherkin, qui est couramment utilisé dans les tests comportementaux. Cette structure permet de décrire de manière claire et concise les différents scénarios utilisateurs qui doivent être pris en compte :
- GIVEN : la situation avant l’exécution de la user story.
- WHEN : l’événement ou l’action qui déclenche un processus ou un changement.
- THEN : l’état après l’exécution de la user story.
Exemple :
Pour une user story concernant un formulaire de connexion :
« Étant donné que je suis sur la page de connexion, et que j’ai entré un login et un mot de passe dans le formulaire, et que le login et le mot de passe correspondent à un utilisateur enregistré, quand je clique sur le bouton “Se connecter”, alors j’arrive sur la page d’accueil du site. »
Comment rédiger des critères d’acceptation efficaces ?
- Soyez spécifiques : Les critères doivent être clairs et sans ambiguïté. Évitez les termes vagues comme « facile à utiliser » ou « performant ». Soyez aussi précis que possible.
- Utilisez des scénarios concrets : Formulez les critères d’acceptation sous forme de scénarios ou de cas d’utilisation qui reflètent des situations réelles rencontrées par l’utilisateur. Par exemple : « Si l’utilisateur entre un mot de passe incorrect, un message d’erreur s’affiche ».
- Faites-les testables : Les critères doivent être vérifiables, permettant à l’équipe de tester si la fonctionnalité respecte les conditions définies. Par exemple, « Lorsque l’utilisateur clique sur le bouton de réinitialisation du mot de passe, un e-mail doit être envoyé ».
- Priorisez la simplicité : Ne surchargez pas les critères d’acceptation avec des détails inutiles. Restez concentré sur les fonctionnalités essentielles à livrer.
Critères d’acceptation : Rédaction claire et centrée sur l’utilisateur
Un critère d’acceptation doit être rédigé du point de vue de l’utilisateur final et non en termes de solution technique. L’objectif est de garantir que la fonctionnalité développée répond aux besoins réels des utilisateurs, sans imposer de détails sur la manière dont cela doit être implémenté techniquement.
Utiliser la méthode SMART pour écrire des critères d’acceptation
Pour s’assurer que les critères d’acceptation sont efficaces et bien définis, il est recommandé de les vérifier en fonction des critères SMART :
- Specific (Spécifique) : Le critère doit être clair, compréhensible, et précis. Il doit être facile à reproduire.
- Measurable (Mesurable) : Le critère doit être quantifiable et observable pour qu’il puisse être testé.
- Achievable (Réaliste) : Le critère doit être réalisable, sans complexité excessive ou contraintes techniques insurmontables.
- Relevant (Pertinent) : Le critère doit être directement lié à la user story et apporter une valeur ajoutée.
- Time-bound (Temporel) : Le critère doit avoir une application circonscrite dans le temps, spécifiant par exemple un délai ou une période d’application.
Pourquoi les critères d’acceptation sont-ils essentiels ?
- Clarté des attentes : Ils permettent de définir clairement ce qui est attendu pour qu’une fonctionnalité soit considérée comme terminée, réduisant ainsi le risque de malentendus.
- Mesure de la réussite : Ils servent de base pour tester et valider que la fonctionnalité livrée répond aux besoins spécifiés.
- Alignement de l’équipe : Les critères d’acceptation assurent que l’ensemble de l’équipe (Product Owner, développeurs, testeurs) partage la même vision du résultat à atteindre.
- Validation de la qualité : Ils aident à garantir que la fonctionnalité respecte les normes de qualité et les exigences des utilisateurs finaux.
Conclusion
Les critères d’acceptation jouent un rôle crucial dans le développement de produits agiles, en définissant ce qui fait qu’une fonctionnalité est réussie et prête à être livrée. Rédigés avec soin et clarté, ils permettent d’assurer que le produit final réponde aux attentes des utilisateurs tout en facilitant la collaboration et la compréhension entre les différentes parties prenantes du projet. En suivant la méthode SMART et la structure GIVEN-WHEN-THEN, les critères d’acceptation deviennent un outil clé pour un développement produit efficace et centré sur l’utilisateur.