Maîtriser les User Stories avec Agile et la méthodologie INVEST

Si vous vous intéressez au développement de logiciels, vous avez entendu parler des « user stories » ou “US”. Elles sont au cœur de la méthode Agile et elles sont une super façon de se concentrer sur les besoins de l’utilisateur final. 

Mais attention, une user story peut rapidement être mal rédigée. Pour être vraiment efficaces, elles doivent suivre certaines règles, que l’on retrouve dans l’acronyme INVEST, imaginé par Bill Wake.

Alors dans cet article, on va décomposer tout ça et ainsi vous montrer comment ce principe peut rendre vos user stories encore meilleures et donner un vrai coup de boost à votre projet. 

Alors, prêt à faire passer vos user stories au niveau supérieur ? 

C’est quoi une « user story » ?

 

Une user story, aussi appelé backlog item, est un support utilisé dans le développement de logiciels qui capture une description d’une fonctionnalité souhaitée du point de vue de l’utilisateur final. 

Elle aide les équipes de développement à comprendre les besoins et les désirs de l’utilisateur en les formalisant concrètement, et à concevoir des solutions qui répondent à ces attentes.

Une user story est toujours introduite de la manière suivante :

« En tant que [type d’utilisateur(s)], 

Je veux [une certaine fonctionnalité] 

Afin de [un certain bénéfice] ».

Par exemple, une user story pour une application d’e-commerce présentera le besoin de l’utilisateur comme-ci :  

« En tant que client, je veux être capable de filtrer les produits par catégorie afin de trouver plus facilement les produits que je cherche. »

Simple et efficace, non ?

Une fois le besoin exprimé de cette manière, l’analyste fonctionnel ou business analyste, va compléter la User Story en y ajoutant des règles fonctionnelles et les contraintes que doit respecter le développement qui va être réalisé pour couvrir ce besoin.

Une user story est un moyen de favoriser la communication. Elle permet aux développeurs de se mettre à la place des utilisateurs lorsqu’ils créent des logiciels. 

C’est un élément central de nombreuses méthodologies de développement Agile, comme Scrum, et Extreme Programming (XP).

Que signifie INVEST ?

L’acronyme INVEST, qui est utilisé pour décrire les caractéristiques d’une bonne user story dans une méthode Agile. Cela permet d’apporter de la valeur à la création du projet.

INVEST est un acronyme qui signifie :

I – Independent

N – Negotiable

V – Valuable

E – Estimable

S – Size appropriately

T – Testable

Petit tour d’horizon pour comprendre l’importance et la portée de chacun de ces éléments : 

Independent (« indépendante ») 

Chaque user story doit être indépendante, c’est-à-dire qu’elle ne doit pas dépendre d’une autre user story pour avoir de la valeur. 

Cela facilite la planification, car les stories doivent pouvoir être développées dans n’importe quel ordre. Un développeur ne doit pas attendre le travail d’un autre développeur pour développer une nouvelle US. 

Negociable (« négociable »)

Une user story n’est pas un contrat, mais plutôt une invitation à une conversation. Elle doit être flexible et ouverte à la discussion et à l’adaptation. L’Analyste Fonctionnel ou le Product Owner présente toujours chaque US aux développeurs, qui propose leurs idées pour simplifier et améliorer la User Story pour répondre le plus simplement possible au besoin. C’est toujours la valeur ajoutée qui est au centre de la conversation.

Valuable (« valeur ») 

Chaque user story doit apporter de la valeur à l’utilisateur final ou au client. Si ce n’est pas le cas, il faut se demander si cette story est nécessaire.

Chaque US doit maximiser la valeur apportée à l’utilisateur. C’est cette notion de valeur qui va permettre au Product Owner de prendre la décision de l’ordonnancement des User Stories dans le backlog, qui est le listing des US par priorité de développement sur lequel se base l’ensemble de l’équipe Agile. 

Estimable 

L’équipe de développement doit être en mesure d’estimer la “taille” d’une user story, généralement en termes de temps ou de ressources nécessaires pour la mettre en œuvre. 

Si une user story n’est pas estimable, cela peut indiquer qu’elle est trop grande et qu’elle doit être décomposée en plusieurs stories plus petites. 

En cas de séparation de l’US, la plus grande difficulté est toujours de garder le caractère indépendant des user stories entre elles. C’est le rôle du Product Owner d’arbitrer ce choix au mieux. Souvent, réduire la taille de l’US est plus important, au détriment de l’indépendance des US entre elles. 

Small (« suffisament petit »)

Les développements en méthodologies Agile Scrum sont rythmés en Sprint de quelques semaines, période pendant laquelle l’équipe développement et de test doit délivrer une quantité de user stories définie à l’avance. 

C’est pourquoi, les user stories doivent être assez petites pour pouvoir être réalisées en une itération (sprint). Si elles sont trop grandes, elles doivent être décomposées en plusieurs stories plus petites.

Testable 

Il doit être possible de tester une user story pour vérifier qu’elle a été correctement mise en œuvre. Si une story n’est pas testable, cela peut indiquer qu’elle n’est pas suffisamment claire ou spécifique.

Origine 

L’acronyme INVEST a été créé par Bill Wake, un coach en développement de logiciels, comme un moyen de rappeler les caractéristiques d’une bonne user story dans le développement Agile. Il a présenté cet acronyme pour la première fois dans un article de 2003 intitulé « INVEST in Good Stories, and SMART Tasks« .

La méthode Agile elle-même a été formalisée pour la première fois en 2001, lorsque 17 développeurs de logiciels se sont réunis pour créer le Manifeste Agile, un ensemble de principes destinés à améliorer les processus de développement de logiciels. 

Les user stories, en tant qu’élément clé de plusieurs méthodologies Agile, comme Scrum et Extreme Programming (XP), sont devenues une pratique courante dans le développement de logiciels peu de temps après.

 

Conclusion

Une user story bien construite offre une perspective précieuse sur les besoins et les désirs de l’utilisateur final. 

En utilisant INVEST, vous pouvez vous assurer que vos user stories seront indépendantes, négociables, source de valeur pour l’utilisateur, estimables, de taille appropriée et testables.

Pour en savoir plus sur le développement de projet grâce à la méthode agile, n’hésitez pas à lire notre article précédent.

Si vous souhaitez développer un projet avec des développeurs compétents, sachez que iterates utilise cette méthode et peut vous aider. 

 

Contact us

Laisser un commentaire