SlideShare ist ein Scribd-Unternehmen logo
L’art d’affiner des User stories
BONJOUR A tous !
Nicolas Thibert
Formateur, Facilitateur
& Coach Agile
@
Passionné par le développement logiciel et par les personnes et
les organisations qui les conçoivent.
Merci aux sponsors !
Découper
45 min ensemble
Détailler et clarifier
AU Programme
Pour parler affinage de User Stories
Prérequis
Connaitre le concept de User Story
Culture générale sur l’agilité
I
User story DE QUALITE ?
N V E S T
Indépendante Négociable Valeur Estimable Small Testable
Excellente base pour évaluer
la qualité du découpage de vos User Stories
User story DE QUALITE ?
I N V E S T
Indépendante Négociable Valeur Estimable Small Testable
Mais au fait …
Pourquoi découper ?
Et à quelle taille ?
Faciliter la priorisation et les prises de décisions
Pourquoi dEcouper ???
Livrer plus rapidement de la valeur (y compris durant un sprint)
Favoriser l’apprentissage continu
Minimiser les risques
Adresser plus facilement la complexité
Être finalisée au cours d’un sprint
QUELLE TAILLE pour nos US ???
Et suffisamment importante pour …
Que chaque équipier travaille sur au moins 2 US par sprint
Suffisamment petite pour …
Continuer à apporter de la valeur
Conserver de la cohérence fonctionnelle
Atteindre une complexité acceptable (seuil critique défini par l’équipe)
COMMENT ON fait ?
Suffisamment petites
pour être finalisées au cours d'une itération,
tout en apportant encore de la valeur métier …
I N V E S T
Indépendante Négociable Valeur Estimable Small Testable
OK mais comment on fait ?
STRATEGIES DE DECOUPAGE
Tous les modèles sont faux
mais certains sont utiles.
George Box
STRATEGIES DE DECOUPAGE
Enrichissement
d’un processus
Type
d’opération
Règles métiers
Type d’interface
Données traitées
Typologie
utilisateur
STRATEGIES DE DECOUPAGE
#1 Enrichissement d’un processus métier
L’U.S. décrit-elle
un processus métier ?
Extraire le cas le plus simple couvrant
le processus de bout en bout
puis ajouter les étapes intermédiaires
STRATEGIES DE DECOUPAGE
#1 Enrichissement d’un processus métier
E1: Consulter et vérifier mon panier d'achat,
E2: Choisir le mode de livraison,
E3: Renseigner les infos nécessaires pour la livraison,
E5: Effectuer le paiement,
E6: Consulter la confirmation de commande.
E4: Sélectionner le mode de paiement,
STRATEGIES DE DECOUPAGE
#1 Enrichissement d’un processus métier
US1 : Cas simple de bout en bout
Récapitulatif du panier
Livraison et retrait au magasin le plus proche
Utilisation des infos du profil (nom, adresse,…)
Paiement uniquement par CB
Message simple de confirmation de commande
• US4 : Récapitulatif détaillé de la commande
• US2 : Sélectionner le magasin de livraison
• US8 : Possibilité de régler via Paypal
• US3 : Paiement en 3X sans frais
… puis enrichissement des étapes intermédiaires
• US6 : Livraison à domicile / point relais / …
• US7 : Saisir une adresse de facturation différente
de celle du profil
STRATEGIES DE DECOUPAGE
#2 Type d’opération
L’U.S. inclut-elle
un ensemble d’opérations ?
(ex : CRUD)
Découper pour chaque opération
indépendante
STRATEGIES DE DECOUPAGE
En tant que Client de jachete.fr
Je souhaite gérer mon panier d’achat
Afin d’avoir de la visibilité sur ma prochaine
commande
#1 Gérer ma liste d’achats (panier)
#2 Type d’opération
Je souhaite ajouter un article à mon panier
Je souhaite supprimer un article
Je souhaite modifier la quantité d’un article sélectionné
Je souhaite consulter le contenu de mon panier
Je souhaite consulter le montant total de ma commande
Indicateur d’applicabilité : « gérer, administrer, configurer … »
STRATEGIES DE DECOUPAGE
#3 Règles de gestion
Est-il possible de dissocier les
règles de gestion associées à ma
Story initiale et de les traiter
indépendamment ?
Découper pour chaque règle
(ou sous-ensemble) indépendante
STRATEGIES DE DECOUPAGE
#3 Règles de gestion
En tant que Client de jachete.fr
Je souhaite être informé du niveau de sécurité du
mot de passe que je saisis
Afin d'être rassuré sur son niveau de sécurité et
éviter les saisies multiples.
#1 Être informé du niveau de sécurité du mot de passe saisi RG 1 : mot de passe = haute sécurité si :
• + de 12 caractères,
• Et au moins : 1 lettre, 1 chiffre et 1 caractère spécial
• Et différent des 3 derniers mots de passes pour ce compte.
RG 2 : mot de passe = moyenne sécurité
s’il ne respecte que 2 des critères précédents.
RG 3 : mot de passe = faible sécurité
s’il ne respecte qu’un seul des critères précédents.
RG 4 : mot de passe inacceptable
s’il ne respecte aucun des critères précédents.
STRATEGIES DE DECOUPAGE
#3 Règles de gestion
RG 1 : mot de passe = haute sécurité si :
• + de 12 caractères,
• Et au moins : 1 lettre, 1 chiffre et 1 caractère spécial
• Et différent des 3 derniers mots de passes pour ce compte.
R1, R2 et R3 dépendantes de R4.
RG 2 : mot de passe = moyenne sécurité
s’il ne respecte que 2 des critères précédents.
RG 3 : mot de passe = faible sécurité
s’il ne respecte qu’un seul des critères précédents.
RG 4 : mot de passe inacceptable
s’il ne respecte aucun des critères précédents.
US n°1 : mot de passe inacceptable ou conforme
avec haut niveau de sécurité
US n°2 : niveau moyenne sécurité détecté
US n°3 : niveau faible sécurité détecté
Stratégie 3 bis : applicable avec les critères d’acceptation
STRATEGIES DE DECOUPAGE
#4 Type de données et d’informations traitées
L’U.S. implique-t-elle
un traitement identique sur
différents types de données ?
Traiter un premier type de données
puis ajouter les autres par la suite
(en prenant en compte la complexité)
STRATEGIES DE DECOUPAGE
#4 Type de données et d’informations traitées
US1 : Je souhaite consulter les articles dispos en magasin
dont nb articles vendus ≥ µ des ventes
US2 : Je souhaite consulter les articles dont la note client est ≥ 4/5
US3 : Je souhaite consulter les articles disponibles
dans les magasins les plus proches ( ≤ à 50 km).
STRATEGIES DE DECOUPAGE
#5 Type d’interface
Différents types d’interfaces
sont elles impliquées
pour répondre au besoin ?
Découper la story pour chaque interface
d’entrée ou de sortie identifiée
STRATEGIES DE DECOUPAGE
#5 Type d’interface
En tant que d’Administrateur de jachete.fr
Je souhaite importer les nouvelles références
produits commandés auprès de nos fournisseurs
Afin de pouvoir les vendre depuis le site
Interfaces spécifiques par fournisseurs
US1 : Import des données depuis fichier au format Excel,
US2 : Depuis un fichier au format XML,
US3 : Appel d’un web service mis à disposition par le fournisseur
Applicable pour des interfaces en sortie (export)
… et hardware (bus CAN ou UART)
STRATEGIES DE DECOUPAGE
#6 Typologie d’utilisateur
L’U.S. implique-t-elle plusieurs
typologies d’utilisateurs ?
Existe-t-il des spécificités en
fonction du rôle concerné ?
Découper pour chaque rôle impliqué
STRATEGIES DE DECOUPAGE
#6 Typologie d’utilisateur
En tant que Client de jachete.fr
Je souhaite consulter la liste des promotions
en cours
Afin d’économiser de l’argent en découvrant
les produits au bon rapport qualité-prix
En tant que Client Premium
Je souhaite consulter la liste des
promotions exclusives aux comptes Premium
Afin de profiter des meilleurs réductions
proposées par le site sur des produits
>
STRATEGIES DE DECOUPAGE
Certaines stratégies présentées seront
probablement incompatibles avec votre
contexte ou vos habitudes.
Choisissez les plus adéquates et adaptez
les en fonction des retours de l’équipe.
Liste non exhaustive…
Découpez, évaluez … et recommencez si nécessaire !
STRATEGIES DE DECOUPAGE
Les nouvelles US sont elles suffisamment petites
pour être terminées au cours d’un sprint ?
( ≤ au seuil de complexité critique)
Chacune des US respectent-
elles les propriétés INVEST ?
Est-il possible de déprioriser ou supprimer
certaines des nouvelles US ?
Bravo, il semble que
vous ayez un découpage satisfaisant !
Essayez une autre stratégie
de découpage !oui
oui
oui
non
non non
Session d’affinage …
clarifier & partager
Heureux que nous soyons tous au clair sur cette US !
Example Mapping
Atelier d’affinage de User Stories
Clarifier le besoin et limiter les ambiguïtés
… en générant des conversations
Example Map
Inventé par Matt Wynne de Cucumber
https://cucumber.io/blog/example-mapping-introduction/
… autour d’exemples concrets
Exemples qui explicitent chaque règle
Example Mapping
4 types de cartes
Ma
User Story
Ma 1ère règle 2ème règle
1ère exemple
de la 1ère règle
2ème exemple
de la 1ère règle
1ère exemple
de la 2ème règle
US au sommet
Règles métiers rattachées en dessous
Questions à investiguer
Example Mapping
Les « 3 Amigos »
P.O. – Business Analyst
Développeur – Lead Tech Testeur
Example Mapping
P.O. présente l’US et les règles
ETQ client de jachete.fr
Je souhaite ajouter un
article à mon panier
Article ajouté si
dispo
en stock
Si article épuisé alors
notification mail du
retour en stock ?
Article ajouté si
réassort en cours
Example Mapping
On élabore les exemples
ETQ client de jachete.fr
Je souhaite ajouter un
article à mon panier
Article ajouté si
dispo
en stock
Si article épuisé alors
notification mail du
retour en stock ?
Article ajouté si
réassort en cours
• Panier = 1
• Stock #457 = 3
Clic « ajouter »
Panier = 2
Popin « Article #457
ajouté au panier »
• Panier = 0
• Stock #224 = 0
• Réassort en cours
Clic « ajouter »
Panier = 1
Popin « Article #224
ajouté au panier »
• Stock #123 = 0
• Réassort impossible
Clic « ajouter »
« Article épuisé »
Popin e-mail pour
notification retour
en stock
Example Mapping
Lever les ambiguïtés, expliciter les évidences
ETQ client de jachete.fr
Je souhaite ajouter un
article à mon panier
Nb d’articles du
panier visible sous
forme de badge
• Panier vide
• Badge non visible
Article ajouté au panier

• Panier = 3
Article ajouté au panier

1
Article ajouté si
dispo
en stock
Si article épuisé alors
notification mail du
retour en stock ?
Article ajouté si
réassort en cours
4
• Panier = 1
• Stock #457 = 3
Clic « ajouter »
Panier = 2
Popin « Article #457
ajouté au panier »
• Panier = 0
• Stock #224 = 0
• Réassort en cours
Clic « ajouter »
Panier = 1
Popin « Article #224
ajouté au panier »
• Stock #123 = 0
• Réassort impossible
Clic « ajouter »
« Article épuisé »
Popin e-mail pour
notification retour
en stock
Example Mapping
Trouver les réponses à vos questions
ETQ client de jachete.fr
Je souhaite ajouter un
article à mon panier
• Panier vide
• Badge non visible
Article ajouté au panier

• Panier = 3
Article ajouté au panier

Article ajouté si
dispo
en stock
Article ajouté si
réassort en cours
Ajout impossible si
article indisponible
à la vente
• Panier = 1
• Stock #457 = 3
• Panier = 0
• Stock #224 = 0
• Réassort en cours
• Stock #123 = 0
• Réassort impossible
Clic « ajouter »
Panier = 2
Popin « Article #457
ajouté au panier »
Clic « ajouter »
Panier = 1
Popin « Article #224
ajouté au panier »
Clic « ajouter »
« Article épuisé »
Popin e-mail pour
notification retour
en stock
• Stock #87 = 3
• Réassort en cours
• Indispo
Bouton « ajouter »
non visible
« Article indisponible »
Si article épuisé alors
notification mail du
retour en stock ?
Nb d’articles du
panier visible sous
forme de badge
• Dispo
• Dispo
• Dispo
4
1
Example Mapping
Découpez selon les règles
Article ajouté si
dispo
en stock
Article ajouté si
réassort en cours
Si article épuisé alors
notification mail du
retour en stock ?
• Stock #123 = 0
• Réassort impossible
Clic « ajouter »
« Article épuisé »
Popin e-mail pour
notification retour
en stock
• Dispo
Ajout impossible si
article indisponible
à la vente
Je souhaite être notifié
du retour en stock d’un
article épuisé
Je souhaite visualiser
rapidement qu’un
article est indisponible
Je souhaite ajouter un
article à mon panier
• Panier = 1
• Stock #457 = 3
Clic « ajouter »
Panier = 2
Popin « Article #457
ajouté au panier »
• Dispo
• Panier = 0
• Stock #224 = 0
• Réassort en cours
Clic « ajouter »
Panier = 1
Popin « Article #224
ajouté au panier »
• Dispo
• Stock #87 = 3
• Réassort en cours
• Indispo
Bouton « ajouter »
non visible
« Article indisponible »
• Stock #87 = 3
• Réassort en cours
• Indispo
Bouton « ajouter »
non visible
« Article indisponible »
Nb d’articles du
panier visible sous
forme de badge
• Panier vide
• Badge non visible
Article ajouté au panier

• Panier = 3
Article ajouté au panier
 4
1
Example Mapping
Et après on en fait quoi de cette map ?
Conserver et prendre en photo les cartes
Faciliter le sprint planning et les développements
Base pour la formalisation des U.S.
Example Mapping : tips
Numéroter les cartes …
…
pour conserver la
correspondance
règle / exemples
Article ajouté si
dispo
en stock
Article ajouté si
réassort en cours
…
Si article épuisé alors
notification mail du
retour en stock ?
…...
ETQ client de jachete.fr
Je souhaite ajouter un
article à mon panier
1
1
2
2
3
3
Example Mapping : tips
Celui dans lequel …
1. Celui dans lequel l’article est en stock
2. Celui dans lequel l’article est en cours de réassort
3. Celui dans lequel l’article est épuisé
Convention de nommage
« Friends » pour
identifier vos exemples
Example Mapping : tips
Visualiser les problèmes
Nb de règles > à 4 pour une US
… découper la story ?
Nb d’exemples > à 3 pour une règle
Mélange de plusieurs règles ?
Clarifier et extraire les règles implicites
Le mot de la fin
L’objectif est avant tout de générer des
conversations.
Prenez plaisir à lever les ambiguïtés,
répondre à l’inconnu, partager vos doutes
et solutions avec votre équipe.
Gardez à l’esprit que …
QUESTIONS ?
nicolas.thibert@viveris.fr
Quelques
questions peut-être ?
SOURCES & references
https://agileforall.com/resources/how-to-split-a-user-story/
https://www.youtube.com/watch?v=rP9AlpFwvSM
https://blog.myagilepartner.fr/index.php/2019/04/26/example-mapping/
https://www.youtube.com/watch?v=gID0boETxJQ&t=391s
https://cucumber.io/blog/example-mapping-introduction/
https://www.youtube.com/watch?v=pEekq7nCyzY&t=7s
Découper des U.S.
Richard Lawrence – Agile for all - How to split a user story
J.P. Lambert – Scrum Life - "Impossible de découper cette User Story !"
Denis Migot - "Comment découper sa User Story ?"
Example Mapping
Matt Wynne – Cucumber – Introducing Example Mapping
J.P. Lambert – Scrum Life - "Avoir des US vraiment Ready grâce à l'Example Mapping"
Judicaël Paquet – MyAgilePartner - Example Mapping

Weitere ähnliche Inhalte

Was ist angesagt?

La gestion du risque et de la sécurité en mode Agile
La gestion du risque et de la sécurité en mode AgileLa gestion du risque et de la sécurité en mode Agile
La gestion du risque et de la sécurité en mode Agile
Agile Montréal
 
jeu puissance 7 distanciel
jeu puissance 7 distancieljeu puissance 7 distanciel
jeu puissance 7 distanciel
Nadia Gharbi
 
Personal branding 4 sur 5 offline et focus réseaux sociaux
Personal branding 4 sur 5   offline et focus réseaux sociauxPersonal branding 4 sur 5   offline et focus réseaux sociaux
Personal branding 4 sur 5 offline et focus réseaux sociaux
François Decaux
 
Agile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMARTAgile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMART
Sébastien GAUDIN
 
Méthode d'Agile: Scrum
Méthode d'Agile: ScrumMéthode d'Agile: Scrum
Méthode d'Agile: Scrum
ChaymaMghazli
 
Impacts de l'adoption de Scrum
Impacts de l'adoption de ScrumImpacts de l'adoption de Scrum
Impacts de l'adoption de Scrum
Pyxis Technologies
 
Stratégie de tests type
Stratégie de tests typeStratégie de tests type
Stratégie de tests typemadspock
 
L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)
L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)
L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)
Étienne Garbugli
 
INSTAGRAM en 2023
INSTAGRAM en 2023INSTAGRAM en 2023
INSTAGRAM en 2023
François - Sylvie MEULEMAN
 
Formation Agile Scrum
Formation Agile ScrumFormation Agile Scrum
Formation Agile Scrum
Mohamed IBN ELAZZOUZI
 
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL OracleÉcriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
webreaker
 
Cours information communication : le brand content
Cours information communication : le brand contentCours information communication : le brand content
Cours information communication : le brand content
Adrien Quenette
 
Tests & recette - Les fondamentaux
Tests & recette - Les fondamentauxTests & recette - Les fondamentaux
Tests & recette - Les fondamentaux
COMPETENSIS
 
Écoute et feedback
Écoute et feedbackÉcoute et feedback
Écoute et feedback
Agile Montréal
 
Transformation agile d'envergure strategies, pieges et facteurs de succes
Transformation agile d'envergure strategies, pieges et facteurs de succesTransformation agile d'envergure strategies, pieges et facteurs de succes
Transformation agile d'envergure strategies, pieges et facteurs de succes
Agile Montréal
 
User stories
User storiesUser stories
User stories
Yannick Quenec'hdu
 
Attitudes de porter
Attitudes de porterAttitudes de porter
Attitudes de porterChti Nem
 
4P.ppt
4P.ppt4P.ppt
4P.ppt
Acro60
 

Was ist angesagt? (20)

La gestion du risque et de la sécurité en mode Agile
La gestion du risque et de la sécurité en mode AgileLa gestion du risque et de la sécurité en mode Agile
La gestion du risque et de la sécurité en mode Agile
 
jeu puissance 7 distanciel
jeu puissance 7 distancieljeu puissance 7 distanciel
jeu puissance 7 distanciel
 
Personal branding 4 sur 5 offline et focus réseaux sociaux
Personal branding 4 sur 5   offline et focus réseaux sociauxPersonal branding 4 sur 5   offline et focus réseaux sociaux
Personal branding 4 sur 5 offline et focus réseaux sociaux
 
Agile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMARTAgile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMART
 
Méthode d'Agile: Scrum
Méthode d'Agile: ScrumMéthode d'Agile: Scrum
Méthode d'Agile: Scrum
 
Impacts de l'adoption de Scrum
Impacts de l'adoption de ScrumImpacts de l'adoption de Scrum
Impacts de l'adoption de Scrum
 
Stratégie de tests type
Stratégie de tests typeStratégie de tests type
Stratégie de tests type
 
L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)
L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)
L’ergonomie et l’expérience utilisateur en contexte agile (Agile UX Masterclass)
 
INSTAGRAM en 2023
INSTAGRAM en 2023INSTAGRAM en 2023
INSTAGRAM en 2023
 
Formation Agile Scrum
Formation Agile ScrumFormation Agile Scrum
Formation Agile Scrum
 
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL OracleÉcriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
 
Cours information communication : le brand content
Cours information communication : le brand contentCours information communication : le brand content
Cours information communication : le brand content
 
Atelier Story Map
Atelier Story MapAtelier Story Map
Atelier Story Map
 
Tests & recette - Les fondamentaux
Tests & recette - Les fondamentauxTests & recette - Les fondamentaux
Tests & recette - Les fondamentaux
 
Écoute et feedback
Écoute et feedbackÉcoute et feedback
Écoute et feedback
 
Transformation agile d'envergure strategies, pieges et facteurs de succes
Transformation agile d'envergure strategies, pieges et facteurs de succesTransformation agile d'envergure strategies, pieges et facteurs de succes
Transformation agile d'envergure strategies, pieges et facteurs de succes
 
User stories
User storiesUser stories
User stories
 
Attitudes de porter
Attitudes de porterAttitudes de porter
Attitudes de porter
 
Storytelling
StorytellingStorytelling
Storytelling
 
4P.ppt
4P.ppt4P.ppt
4P.ppt
 

Ähnlich wie L art d affiner des user stories

Mdm entrepot_de_donnees_-_wiki
Mdm  entrepot_de_donnees_-_wikiMdm  entrepot_de_donnees_-_wiki
Mdm entrepot_de_donnees_-_wiki
Michel Bruley
 
Segmentation et exploration
Segmentation et explorationSegmentation et exploration
Segmentation et exploration
Samir Bounab
 
EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...
EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...
EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...
Clic et Site
 
Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve
Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve
Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve
Pyxis Technologies
 
Les tests automatisés par mots-clés, le complément parfait d’un projet Agile
Les tests automatisés par mots-clés, le complément parfait d’un projet AgileLes tests automatisés par mots-clés, le complément parfait d’un projet Agile
Les tests automatisés par mots-clés, le complément parfait d’un projet Agile
Agile Montréal
 
Introduction au Machine Learning
Introduction au Machine Learning Introduction au Machine Learning
Introduction au Machine Learning
Novagen Conseil
 
Conference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISION
Conference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISIONConference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISION
Conference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISIONALTICS
 
Les Secrets pour Réussir une bonne Démo
Les Secrets pour Réussir une bonne DémoLes Secrets pour Réussir une bonne Démo
Les Secrets pour Réussir une bonne Démo
Fred Canevet
 
Meet up - qu'on me donne l'envie de Groomer
Meet up - qu'on me donne l'envie de GroomerMeet up - qu'on me donne l'envie de Groomer
Meet up - qu'on me donne l'envie de Groomer
Alexandre Quach
 
Le Growth Hacking: Optimisez votre croissance
Le Growth Hacking: Optimisez votre croissanceLe Growth Hacking: Optimisez votre croissance
Le Growth Hacking: Optimisez votre croissance
CleverToday
 
Conférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.s
Conférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.sConférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.s
Conférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.sALTICS
 
Le Lean Product Management présenté au LeanKanban Day 2015
Le Lean Product Management présenté au LeanKanban Day 2015Le Lean Product Management présenté au LeanKanban Day 2015
Le Lean Product Management présenté au LeanKanban Day 2015
Sébastien Sacard
 
Pourquoi less stratégies de formation ne fonctionnent pas?
Pourquoi less stratégies de formation ne fonctionnent pas? Pourquoi less stratégies de formation ne fonctionnent pas?
Pourquoi less stratégies de formation ne fonctionnent pas?
PECB
 
Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...
Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...
Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...
polenumerique33
 
Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?
Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?
Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?
Maxime de Jabrun
 
Atelier 2 commerce électronique - décembre
Atelier 2   commerce électronique - décembreAtelier 2   commerce électronique - décembre
Atelier 2 commerce électronique - décembreGetting to Global
 
Atelier 2016/2017 : Gestion de la relation client
Atelier 2016/2017 : Gestion de la relation clientAtelier 2016/2017 : Gestion de la relation client
Atelier 2016/2017 : Gestion de la relation client
Destination Brocéliande
 
Places de marché by Shopping Flux
Places de marché by Shopping FluxPlaces de marché by Shopping Flux
Places de marché by Shopping Flux
Brigitte Marandon
 
Réussir l'internationalisation de sa boutique e-commerce
Réussir l'internationalisation de sa boutique e-commerceRéussir l'internationalisation de sa boutique e-commerce
Réussir l'internationalisation de sa boutique e-commerce
PrestaShop
 
Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...
Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...
Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...
Guilhem Bertholet
 

Ähnlich wie L art d affiner des user stories (20)

Mdm entrepot_de_donnees_-_wiki
Mdm  entrepot_de_donnees_-_wikiMdm  entrepot_de_donnees_-_wiki
Mdm entrepot_de_donnees_-_wiki
 
Segmentation et exploration
Segmentation et explorationSegmentation et exploration
Segmentation et exploration
 
EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...
EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...
EMDay 2015 - 10 conseils concrets pour déployer un datamart performant sur le...
 
Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve
Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve
Agile BA - catalyseur, createur de valeur - BAFS 29 juin 2015 Geneve
 
Les tests automatisés par mots-clés, le complément parfait d’un projet Agile
Les tests automatisés par mots-clés, le complément parfait d’un projet AgileLes tests automatisés par mots-clés, le complément parfait d’un projet Agile
Les tests automatisés par mots-clés, le complément parfait d’un projet Agile
 
Introduction au Machine Learning
Introduction au Machine Learning Introduction au Machine Learning
Introduction au Machine Learning
 
Conference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISION
Conference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISIONConference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISION
Conference-ECommerceParis-NewslettersEcommerce-ALTICS-EMAILVISION
 
Les Secrets pour Réussir une bonne Démo
Les Secrets pour Réussir une bonne DémoLes Secrets pour Réussir une bonne Démo
Les Secrets pour Réussir une bonne Démo
 
Meet up - qu'on me donne l'envie de Groomer
Meet up - qu'on me donne l'envie de GroomerMeet up - qu'on me donne l'envie de Groomer
Meet up - qu'on me donne l'envie de Groomer
 
Le Growth Hacking: Optimisez votre croissance
Le Growth Hacking: Optimisez votre croissanceLe Growth Hacking: Optimisez votre croissance
Le Growth Hacking: Optimisez votre croissance
 
Conférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.s
Conférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.sConférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.s
Conférence-ECommerceParis-Conversion-ALTICS-OVERSTIM.s
 
Le Lean Product Management présenté au LeanKanban Day 2015
Le Lean Product Management présenté au LeanKanban Day 2015Le Lean Product Management présenté au LeanKanban Day 2015
Le Lean Product Management présenté au LeanKanban Day 2015
 
Pourquoi less stratégies de formation ne fonctionnent pas?
Pourquoi less stratégies de formation ne fonctionnent pas? Pourquoi less stratégies de formation ne fonctionnent pas?
Pourquoi less stratégies de formation ne fonctionnent pas?
 
Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...
Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...
Projet E-Commerce comment choisir sa solution Open Source - CCI Bordeaux 04/1...
 
Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?
Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?
Marketing du RSSI: Comment valoriser et donner de l'impact à votre action ?
 
Atelier 2 commerce électronique - décembre
Atelier 2   commerce électronique - décembreAtelier 2   commerce électronique - décembre
Atelier 2 commerce électronique - décembre
 
Atelier 2016/2017 : Gestion de la relation client
Atelier 2016/2017 : Gestion de la relation clientAtelier 2016/2017 : Gestion de la relation client
Atelier 2016/2017 : Gestion de la relation client
 
Places de marché by Shopping Flux
Places de marché by Shopping FluxPlaces de marché by Shopping Flux
Places de marché by Shopping Flux
 
Réussir l'internationalisation de sa boutique e-commerce
Réussir l'internationalisation de sa boutique e-commerceRéussir l'internationalisation de sa boutique e-commerce
Réussir l'internationalisation de sa boutique e-commerce
 
Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...
Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...
Marketing Automation Light : comment se lancer sans prise de tête (Invox & We...
 

L art d affiner des user stories

  • 1. L’art d’affiner des User stories
  • 2. BONJOUR A tous ! Nicolas Thibert Formateur, Facilitateur & Coach Agile @ Passionné par le développement logiciel et par les personnes et les organisations qui les conçoivent.
  • 4. Découper 45 min ensemble Détailler et clarifier AU Programme Pour parler affinage de User Stories Prérequis Connaitre le concept de User Story Culture générale sur l’agilité
  • 5. I User story DE QUALITE ? N V E S T Indépendante Négociable Valeur Estimable Small Testable Excellente base pour évaluer la qualité du découpage de vos User Stories
  • 6. User story DE QUALITE ? I N V E S T Indépendante Négociable Valeur Estimable Small Testable Mais au fait … Pourquoi découper ? Et à quelle taille ?
  • 7. Faciliter la priorisation et les prises de décisions Pourquoi dEcouper ??? Livrer plus rapidement de la valeur (y compris durant un sprint) Favoriser l’apprentissage continu Minimiser les risques Adresser plus facilement la complexité
  • 8. Être finalisée au cours d’un sprint QUELLE TAILLE pour nos US ??? Et suffisamment importante pour … Que chaque équipier travaille sur au moins 2 US par sprint Suffisamment petite pour … Continuer à apporter de la valeur Conserver de la cohérence fonctionnelle Atteindre une complexité acceptable (seuil critique défini par l’équipe)
  • 9. COMMENT ON fait ? Suffisamment petites pour être finalisées au cours d'une itération, tout en apportant encore de la valeur métier … I N V E S T Indépendante Négociable Valeur Estimable Small Testable OK mais comment on fait ?
  • 10. STRATEGIES DE DECOUPAGE Tous les modèles sont faux mais certains sont utiles. George Box
  • 11. STRATEGIES DE DECOUPAGE Enrichissement d’un processus Type d’opération Règles métiers Type d’interface Données traitées Typologie utilisateur
  • 12. STRATEGIES DE DECOUPAGE #1 Enrichissement d’un processus métier L’U.S. décrit-elle un processus métier ? Extraire le cas le plus simple couvrant le processus de bout en bout puis ajouter les étapes intermédiaires
  • 13. STRATEGIES DE DECOUPAGE #1 Enrichissement d’un processus métier E1: Consulter et vérifier mon panier d'achat, E2: Choisir le mode de livraison, E3: Renseigner les infos nécessaires pour la livraison, E5: Effectuer le paiement, E6: Consulter la confirmation de commande. E4: Sélectionner le mode de paiement,
  • 14. STRATEGIES DE DECOUPAGE #1 Enrichissement d’un processus métier US1 : Cas simple de bout en bout Récapitulatif du panier Livraison et retrait au magasin le plus proche Utilisation des infos du profil (nom, adresse,…) Paiement uniquement par CB Message simple de confirmation de commande • US4 : Récapitulatif détaillé de la commande • US2 : Sélectionner le magasin de livraison • US8 : Possibilité de régler via Paypal • US3 : Paiement en 3X sans frais … puis enrichissement des étapes intermédiaires • US6 : Livraison à domicile / point relais / … • US7 : Saisir une adresse de facturation différente de celle du profil
  • 15. STRATEGIES DE DECOUPAGE #2 Type d’opération L’U.S. inclut-elle un ensemble d’opérations ? (ex : CRUD) Découper pour chaque opération indépendante
  • 16. STRATEGIES DE DECOUPAGE En tant que Client de jachete.fr Je souhaite gérer mon panier d’achat Afin d’avoir de la visibilité sur ma prochaine commande #1 Gérer ma liste d’achats (panier) #2 Type d’opération Je souhaite ajouter un article à mon panier Je souhaite supprimer un article Je souhaite modifier la quantité d’un article sélectionné Je souhaite consulter le contenu de mon panier Je souhaite consulter le montant total de ma commande Indicateur d’applicabilité : « gérer, administrer, configurer … »
  • 17. STRATEGIES DE DECOUPAGE #3 Règles de gestion Est-il possible de dissocier les règles de gestion associées à ma Story initiale et de les traiter indépendamment ? Découper pour chaque règle (ou sous-ensemble) indépendante
  • 18. STRATEGIES DE DECOUPAGE #3 Règles de gestion En tant que Client de jachete.fr Je souhaite être informé du niveau de sécurité du mot de passe que je saisis Afin d'être rassuré sur son niveau de sécurité et éviter les saisies multiples. #1 Être informé du niveau de sécurité du mot de passe saisi RG 1 : mot de passe = haute sécurité si : • + de 12 caractères, • Et au moins : 1 lettre, 1 chiffre et 1 caractère spécial • Et différent des 3 derniers mots de passes pour ce compte. RG 2 : mot de passe = moyenne sécurité s’il ne respecte que 2 des critères précédents. RG 3 : mot de passe = faible sécurité s’il ne respecte qu’un seul des critères précédents. RG 4 : mot de passe inacceptable s’il ne respecte aucun des critères précédents.
  • 19. STRATEGIES DE DECOUPAGE #3 Règles de gestion RG 1 : mot de passe = haute sécurité si : • + de 12 caractères, • Et au moins : 1 lettre, 1 chiffre et 1 caractère spécial • Et différent des 3 derniers mots de passes pour ce compte. R1, R2 et R3 dépendantes de R4. RG 2 : mot de passe = moyenne sécurité s’il ne respecte que 2 des critères précédents. RG 3 : mot de passe = faible sécurité s’il ne respecte qu’un seul des critères précédents. RG 4 : mot de passe inacceptable s’il ne respecte aucun des critères précédents. US n°1 : mot de passe inacceptable ou conforme avec haut niveau de sécurité US n°2 : niveau moyenne sécurité détecté US n°3 : niveau faible sécurité détecté Stratégie 3 bis : applicable avec les critères d’acceptation
  • 20. STRATEGIES DE DECOUPAGE #4 Type de données et d’informations traitées L’U.S. implique-t-elle un traitement identique sur différents types de données ? Traiter un premier type de données puis ajouter les autres par la suite (en prenant en compte la complexité)
  • 21. STRATEGIES DE DECOUPAGE #4 Type de données et d’informations traitées US1 : Je souhaite consulter les articles dispos en magasin dont nb articles vendus ≥ µ des ventes US2 : Je souhaite consulter les articles dont la note client est ≥ 4/5 US3 : Je souhaite consulter les articles disponibles dans les magasins les plus proches ( ≤ à 50 km).
  • 22. STRATEGIES DE DECOUPAGE #5 Type d’interface Différents types d’interfaces sont elles impliquées pour répondre au besoin ? Découper la story pour chaque interface d’entrée ou de sortie identifiée
  • 23. STRATEGIES DE DECOUPAGE #5 Type d’interface En tant que d’Administrateur de jachete.fr Je souhaite importer les nouvelles références produits commandés auprès de nos fournisseurs Afin de pouvoir les vendre depuis le site Interfaces spécifiques par fournisseurs US1 : Import des données depuis fichier au format Excel, US2 : Depuis un fichier au format XML, US3 : Appel d’un web service mis à disposition par le fournisseur Applicable pour des interfaces en sortie (export) … et hardware (bus CAN ou UART)
  • 24. STRATEGIES DE DECOUPAGE #6 Typologie d’utilisateur L’U.S. implique-t-elle plusieurs typologies d’utilisateurs ? Existe-t-il des spécificités en fonction du rôle concerné ? Découper pour chaque rôle impliqué
  • 25. STRATEGIES DE DECOUPAGE #6 Typologie d’utilisateur En tant que Client de jachete.fr Je souhaite consulter la liste des promotions en cours Afin d’économiser de l’argent en découvrant les produits au bon rapport qualité-prix En tant que Client Premium Je souhaite consulter la liste des promotions exclusives aux comptes Premium Afin de profiter des meilleurs réductions proposées par le site sur des produits >
  • 26. STRATEGIES DE DECOUPAGE Certaines stratégies présentées seront probablement incompatibles avec votre contexte ou vos habitudes. Choisissez les plus adéquates et adaptez les en fonction des retours de l’équipe. Liste non exhaustive…
  • 27. Découpez, évaluez … et recommencez si nécessaire ! STRATEGIES DE DECOUPAGE Les nouvelles US sont elles suffisamment petites pour être terminées au cours d’un sprint ? ( ≤ au seuil de complexité critique) Chacune des US respectent- elles les propriétés INVEST ? Est-il possible de déprioriser ou supprimer certaines des nouvelles US ? Bravo, il semble que vous ayez un découpage satisfaisant ! Essayez une autre stratégie de découpage !oui oui oui non non non
  • 28. Session d’affinage … clarifier & partager Heureux que nous soyons tous au clair sur cette US !
  • 29. Example Mapping Atelier d’affinage de User Stories Clarifier le besoin et limiter les ambiguïtés … en générant des conversations Example Map Inventé par Matt Wynne de Cucumber https://cucumber.io/blog/example-mapping-introduction/ … autour d’exemples concrets
  • 30. Exemples qui explicitent chaque règle Example Mapping 4 types de cartes Ma User Story Ma 1ère règle 2ème règle 1ère exemple de la 1ère règle 2ème exemple de la 1ère règle 1ère exemple de la 2ème règle US au sommet Règles métiers rattachées en dessous Questions à investiguer
  • 31. Example Mapping Les « 3 Amigos » P.O. – Business Analyst Développeur – Lead Tech Testeur
  • 32. Example Mapping P.O. présente l’US et les règles ETQ client de jachete.fr Je souhaite ajouter un article à mon panier Article ajouté si dispo en stock Si article épuisé alors notification mail du retour en stock ? Article ajouté si réassort en cours
  • 33. Example Mapping On élabore les exemples ETQ client de jachete.fr Je souhaite ajouter un article à mon panier Article ajouté si dispo en stock Si article épuisé alors notification mail du retour en stock ? Article ajouté si réassort en cours • Panier = 1 • Stock #457 = 3 Clic « ajouter » Panier = 2 Popin « Article #457 ajouté au panier » • Panier = 0 • Stock #224 = 0 • Réassort en cours Clic « ajouter » Panier = 1 Popin « Article #224 ajouté au panier » • Stock #123 = 0 • Réassort impossible Clic « ajouter » « Article épuisé » Popin e-mail pour notification retour en stock
  • 34. Example Mapping Lever les ambiguïtés, expliciter les évidences ETQ client de jachete.fr Je souhaite ajouter un article à mon panier Nb d’articles du panier visible sous forme de badge • Panier vide • Badge non visible Article ajouté au panier  • Panier = 3 Article ajouté au panier  1 Article ajouté si dispo en stock Si article épuisé alors notification mail du retour en stock ? Article ajouté si réassort en cours 4 • Panier = 1 • Stock #457 = 3 Clic « ajouter » Panier = 2 Popin « Article #457 ajouté au panier » • Panier = 0 • Stock #224 = 0 • Réassort en cours Clic « ajouter » Panier = 1 Popin « Article #224 ajouté au panier » • Stock #123 = 0 • Réassort impossible Clic « ajouter » « Article épuisé » Popin e-mail pour notification retour en stock
  • 35. Example Mapping Trouver les réponses à vos questions ETQ client de jachete.fr Je souhaite ajouter un article à mon panier • Panier vide • Badge non visible Article ajouté au panier  • Panier = 3 Article ajouté au panier  Article ajouté si dispo en stock Article ajouté si réassort en cours Ajout impossible si article indisponible à la vente • Panier = 1 • Stock #457 = 3 • Panier = 0 • Stock #224 = 0 • Réassort en cours • Stock #123 = 0 • Réassort impossible Clic « ajouter » Panier = 2 Popin « Article #457 ajouté au panier » Clic « ajouter » Panier = 1 Popin « Article #224 ajouté au panier » Clic « ajouter » « Article épuisé » Popin e-mail pour notification retour en stock • Stock #87 = 3 • Réassort en cours • Indispo Bouton « ajouter » non visible « Article indisponible » Si article épuisé alors notification mail du retour en stock ? Nb d’articles du panier visible sous forme de badge • Dispo • Dispo • Dispo 4 1
  • 36. Example Mapping Découpez selon les règles Article ajouté si dispo en stock Article ajouté si réassort en cours Si article épuisé alors notification mail du retour en stock ? • Stock #123 = 0 • Réassort impossible Clic « ajouter » « Article épuisé » Popin e-mail pour notification retour en stock • Dispo Ajout impossible si article indisponible à la vente Je souhaite être notifié du retour en stock d’un article épuisé Je souhaite visualiser rapidement qu’un article est indisponible Je souhaite ajouter un article à mon panier • Panier = 1 • Stock #457 = 3 Clic « ajouter » Panier = 2 Popin « Article #457 ajouté au panier » • Dispo • Panier = 0 • Stock #224 = 0 • Réassort en cours Clic « ajouter » Panier = 1 Popin « Article #224 ajouté au panier » • Dispo • Stock #87 = 3 • Réassort en cours • Indispo Bouton « ajouter » non visible « Article indisponible » • Stock #87 = 3 • Réassort en cours • Indispo Bouton « ajouter » non visible « Article indisponible » Nb d’articles du panier visible sous forme de badge • Panier vide • Badge non visible Article ajouté au panier  • Panier = 3 Article ajouté au panier  4 1
  • 37. Example Mapping Et après on en fait quoi de cette map ? Conserver et prendre en photo les cartes Faciliter le sprint planning et les développements Base pour la formalisation des U.S.
  • 38. Example Mapping : tips Numéroter les cartes … … pour conserver la correspondance règle / exemples Article ajouté si dispo en stock Article ajouté si réassort en cours … Si article épuisé alors notification mail du retour en stock ? …... ETQ client de jachete.fr Je souhaite ajouter un article à mon panier 1 1 2 2 3 3
  • 39. Example Mapping : tips Celui dans lequel … 1. Celui dans lequel l’article est en stock 2. Celui dans lequel l’article est en cours de réassort 3. Celui dans lequel l’article est épuisé Convention de nommage « Friends » pour identifier vos exemples
  • 40. Example Mapping : tips Visualiser les problèmes Nb de règles > à 4 pour une US … découper la story ? Nb d’exemples > à 3 pour une règle Mélange de plusieurs règles ? Clarifier et extraire les règles implicites
  • 41. Le mot de la fin L’objectif est avant tout de générer des conversations. Prenez plaisir à lever les ambiguïtés, répondre à l’inconnu, partager vos doutes et solutions avec votre équipe. Gardez à l’esprit que …
  • 43. SOURCES & references https://agileforall.com/resources/how-to-split-a-user-story/ https://www.youtube.com/watch?v=rP9AlpFwvSM https://blog.myagilepartner.fr/index.php/2019/04/26/example-mapping/ https://www.youtube.com/watch?v=gID0boETxJQ&t=391s https://cucumber.io/blog/example-mapping-introduction/ https://www.youtube.com/watch?v=pEekq7nCyzY&t=7s Découper des U.S. Richard Lawrence – Agile for all - How to split a user story J.P. Lambert – Scrum Life - "Impossible de découper cette User Story !" Denis Migot - "Comment découper sa User Story ?" Example Mapping Matt Wynne – Cucumber – Introducing Example Mapping J.P. Lambert – Scrum Life - "Avoir des US vraiment Ready grâce à l'Example Mapping" Judicaël Paquet – MyAgilePartner - Example Mapping