DEFINITION D’UNE USER STORY
Une user story est une description de la fonctionnalité ou d’une partie de la fonctionnelle écrite dans le langage courant ou métier qui capture ce qu’un utilisateur fait ou doit faire.
Les user stories fournissent un moyen rapide de traiter les exigences des clients au lieu des documents d’exigences formels et sans effectuer les tâches administratives liées à leur maintenance.
BENEFICES
Les spécialistes de notre entreprise ont formulé les avantages de l’utilisation des user stories pour chaque membre de l’équipe Agile :
POUR LES CHEFS DE PROJET :
- Il aide à faire l’architecture de l’application correctement ;
- Il réduit le temps de réponse aux questions sur la logique de l’application aux développeurs, concepteurs, testeurs ;
- Il peut être utilisé comme documentation et mis à jour facilement ;
POUR LES CONCEPTEURS :
- Il donne un aperçu de la quantité de maquettes nécessaires pour couvrir l’ensemble de l’application de mise en page;
- Il avertit de l’excès ou de l’absence de certains écrans / boutons / fonctionnalités;
POUR LES DÉVELOPPEURS :
- Les fonctionnalités sont la base de l’écriture des tests d’acceptation avec le développement piloté par les tests (TDD et BDD);
- Il permet d’éviter les incompréhensions de la documentation (spécifications et exigences du client), et les erreurs dans la logique de l’application;
POUR L’AQ :
- Il sert de base à l’écriture de cas de test et de scénarios de test;
- Il aide à comprendre rapidement la logique de l’application;
POUR LES CLIENTS :
- Donne une bonne compréhension d’une application et de son fonctionnement;
- Le client peut décrire la nouvelle fonctionnalité, en utilisant notre format de user Story qui empêche une mauvaise interprétation des exigences;
FORMATS DES USER STORIES
Vous pouvez également rencontrer les formats suivants d’une user story :
Mike Cohn, un auteur bien connu de user stories, concernant la clause « afin que » comme facultative :
« En tant que < rôle>, Je veux <goal/desire> »
Chris Matts a suggéré que « chasser la valeur » était la première étape pour réussir à livrer un logiciel, et a proposé cette alternative dans le cadre de Feature Injection :
« Afin de <recevoir un bénéfice> en tant que <role>, Je veux <but/desir> »
Autres options :
« En tant que <role>, je veux <objectif/désir> pour que <bénéficie> »
« En tant que <role>, je peux <agir avec le système> afin que <bénéfice externe> »
Dans l’entreprise Steelkiwi, nous utilisons le langage Gherkin pour rendre une user story plus lisible et compréhensible à la fois pour les développeurs et les clients.
DEFINITION DU LANGAGE GHERKIN
Gherkin est un langage lisible par l’homme pour la description du comportement du système, qui utilise l’indentation pour définir la structure du document (espaces ou tabulations). Chaque ligne commence par l’un des mots-clés et décrit l’une des étapes.
La plupart des lignes du cornichon commencent par un mot-clé spécial et se composent de fonctionnalités et de scénarios, par exemple :
Regardons l’exemple ci-dessus :
1. Fonctionnalité : Une description courte mais complète de la fonctionnalité requise, qui démarre une fonction et lui donne un nom.
2. Les trois lignes suivantes décrivent le bénéfice que nous allons tirer de cette fonctionnelle.
3. Scénario : Une certaine situation commerciale spécifique commence le script et contient une description.
4. Les 7 lignes suivantes décrivent les étapes du test, qui correspondent à un code spécifique, effectuant l’action décrite. Les lignes qui sont suivies des mots-clés « Given », « AND », « Then », etc. sont comparées.