User Stories, what else ?
par Christophe Addinquy
15h30 - 14h Salle 1
#AgileFrance
Aujourd’hui : Accompagnement agile @ Zenika
Christophe Addinquy,
Avant : Directeur de projet, consultant,
formateur, agiliste bon teint,
développeur et d’autres choses
encore...
Donc, des outils ?!?
...ça va être un peu dense !
Et pourtant incomplet
Désolé...
Décidator
Du côté de
chez Victor
Mon pote
Bernie
Décidator
Vision Produit
Positionnement
produit / marché
Stratégie
La «pyramide de Leffingwell»
✤ Une proposition de valeur
✤ Un branding
✤ Un caractère différenciant
La Product Box
30 secondes pour attirer l’attention
de votre boss dans l’ascenseur...
1 minute pour vendre
votre business model
!
De l’elevator statement au pitch
✤ Traction
✤ Produit
✤ Equipe
✤ Social proof
Simon Sinek
«start with the why»
Faire rencontrer
l’ingénierie des exigences
à la communauté agile
L’assistance
d’agile Grenoble
Lecteurs de mon
blog
Donner envie d’en
savoir plus
Ce talk
Recommandation
s de lecture
ciblées
Notes de lecture
Impact Mapping
Décidator
Vision Produit
Positionnement
produit / marché
Stratégie
Veut de la
technologie
Veut une solution opérationnelle
La segmentation de marché
C’est nouveau,
imparfait, c’est une
avancée techno
C’est
nouveau et
prometteur
C’est une solution
à mon besoin
C’est un produit
bien établi qui a fait
ses preuves
J’y vais car je ne
peux plus faire
autrement
Se battre sur les marchés
existant
Vaincre la concurrence
Exploiter la demande existante
Ajuster la valeur par rapport au
coût
Se battre sur le prix ou
chercher le facteur
différenciateur
Créer un marché incontesté
Rendre la compétition sans
objet
Créer et capturer une nouvelle
demande
Casser l’équation coût / valeur
Rechercher le différenciateur
avec un coût ajusté
Blue ocean strategy
Décidator
Vision Produit
Positionnement
produit / marché
Stratégie
Ash Maurya
Le Lean Canvas
Problem / solution fit
1 2
3
4 5
Product / market fit
7 6
8 9
... ou Business Model Canvas
Et pour les
projets
internes ?
Purpose alignment model
Je fais pour moi quelque chose
de spécifique
Je fais ou j’achète une solution
standard
Envisager de ne pas
faire !
Je m’appuie sur des
spécialistes du sujet
Du côté
de chez
Victor
✤ Structurer
✤ Exprimer
✤ Solidifier
Du côté
de chez
Victor
✤ Structurer
✤ Exprimer
✤ Solidifier
✤ Acteurs externes
✤ Evénements
déclencheurs
✤ Evénements en retour
✤ Système boite noire
Le diagramme de contexte
http://freethinker.addinq.uy/post/66131430961/a-la-conquete-du-story-mapping
Bottom up
1 - Collecter les fonctionnalités
2 - Ajouter des détails
3 - Disposer en séquence
4 - Regrouper par fréquence
5 - Indiquer les ruptures logiques
dans le worflow
6 - Diviser en releases
7 - Indiquer les estimations
8 - Servir en tranches !
Story Mapping
Cas d’utilisation, 1ère étape
Essentiellement Top-Down
✤ Acteurs
✤ Cas d’utilisation
✤ Packages
✤ (relations)
Du côté
de chez
Victor
✤ Structurer
✤ Exprimer
✤ Solidifier
1 - Le client se présente pour régler sa nuit d’hôtel
2 - Le système affiche le montant à régler
2.1 - Le système imprime le voucher pré-payé
2.2 - Le client signe le voucher
2.2.1 - Le voucher ne correspond pas au client
2.3 - Le système enregistre le voucher acquitté
3 - Le client règle sa facture en cash
3.1 - Le client règle sa facture par C.B.
3.2 - Le système imprime une facturette (suite en 5)
4 - La système affiche le montant à rendre
4 - Le système imprime la facture
4.1 - Impression de la facture impossible
5 - Le système clos la transaction
Cas d’utilisation, 2nd étape (1/2)
Use
Cases
Entitésdudomaine
Entrées/sorties
Vision
Use case
User Story
Cas d’utilisation, 2nd étape (2/2)
✤ Hub d’information par
exigence
✤ Permet le tri
✤ Remplissage incrémental
Template d’exigences
Software Requirements Specifications
Exigences non-fonctionnelles
Le modèle QUPER
✤ Définir les indicateurs qualité
✤ Pour chaque fonctionnalité : estimer
les breakpoints et barrières
✤ Estimer la qualité actuelle du produit
/ des concurrents
✤ Estimer la qualité cible souhaitée
✤ Communiquer / itérer
Du côté
de chez
Victor
✤ Structurer
✤ Exprimer
✤ Solidifier
✤ Exigences déclinées en
exemples
✤ Basé (si possible) sur des cas
réels
✤ Construits en collaboration
✤ Avec les combinatoires
✤ Avec les cas aux limites
Spécifications exécutables
✤ « Quality gateway »
✤ Alignement sur l’objectif
✤ Viabilité des contraintes
✤ Besoin ou solution ?
✤ Levée des ambiguïtés
✤ PLanguage ?
✤ Quantification des attributs
✤ Levée des implicites
✤ Etc...
Améliorer la qualité
Mon pote
Bernie
Go & See (aller sur le terrain)
✤ Voir ce que le système ne
prends pas en compte
(environnement de travail)
✤ Observer la logique de travail
✤ Mesurer les temps productifs /
improductifs
✤ Comprendre les problèmes /
souffrances des utilisateurs
✤ S’immerger dans le métier
✤ Empathie avec les utilisateurs
Analyse Causale
✤ L’utilisateur n’exprime généralement
pas un besoin mais ce qu’il pense être
la solution
✤ Factualiser, s’extraire du ressenti
✤ Remonter au besoin initial
✤ Les 5 pourquoi : une recette pour
l’analyse causale
Workshops
✤ Requirements workshop
✤ Définir, Identifier
✤ Acceptance tests workshop
✤ Cadrer, préciser et lever les ambiguïtés
✤ Brainstorm
✤ Générer des options, rechercher des solutions non
triviales
✤ Discussions informelles
✤ Comprendre
Questions hors
contexte
• Pour quelles raisons désirons-
nous cette fonctionnalité ?
• De quoi pouvons-nous nous
inspirer ?
Focus questions
• Qui ? Où ?
• Comment ? Quand ?
• Pourquoi ?
• Quoi ?
Questions Ouvertes
• Que voulez-vous traiter ?
• Que souhaitez-vous y voir
figurer ?
• Comment voyez-vous ça ?
Questions Fermées
• Cette information est-elle
obligatoire ?
Questions Provocatrices
• Immédiatement : c’est
nécessairement moins d’1 sec.
ou 1 min. convient encore ?
✤ Questions hors contexte : En amont pour connaitre des propriétés générales
✤ Focus questions : Pour détailler et lever des ambiguïtés
✤ Questions ouvertes : Pour générer des informations
✤ Questions fermées : pour lever des options
✤ Questions provocatrices : Pour affiner une information
Questionner
✤ Biais rétrospectif ou l'effet « je le savais
depuis le début »
✤ Effet de récence : mieux se souvenir
des dernières informations auxquelles
on a été confronté
✤ Effet de simple exposition : avoir
préalablement été exposé à quelqu'un
ou à une situation le/la rend plus positive
✤ Effet d'ambiguïté : tendance à éviter les
options dont on manque d'information
✤ Ancrage mental : La répétabilité d’un
phénomène crée une illusion de
causalité
✤ Biais de statu quo : la nouveauté est
vue comme apportant plus de risques
que d'avantages possibles et amène une
résistance au changement
✤ Effet de halo : une perception sélective
d'informations allant dans le sens d'une
première impression que l'on cherche à
confirmer
✤ Biais de confirmation d'hypothèse :
préférer les éléments qui confirment
plutôt que ceux qui infirment une
hypothèse
✤ Perception sélective : interpréter de
manière sélective des informations en
fonction de sa propre expérience
Les biais cognitifs
Liespotting
✤ Pourquoi ?
✤ Récompense
✤ Avantage
✤ Impression positive
✤ Pouvoir
✤ Eviter la punition
✤ Protection
✤ Intimité
✤ Comment ?
✤ Langage non-verbal
✤ Expressions faciales
✤ Indications verbales
Conclusions
45
Analyse causale
Programmation neuro-
linguistique
BPMModèle de
Kano
Design Thinking
Creativity
workshop
Biais cognitifs
Pyramide de Leffingwell
Brainstorming
Personas
Mind maps
Analyse
contextuelle
Use Cases
Story boards
Archéologie
documentaire
Gap analysis
Exigences non-
fonctionnelles
Contraintes
Questionnement
Liste d’attributs
Mesures
Vision
Analyse de risques
Liespotting
Glossaire
Prototypage
Story maps
Stakeholders
assessment
Elevator statement
Analyse système
Product features
Cartes CRC
Arbre de décision
Modèle de
traçabilité
Business case
Usability engineering
Analyse quantitative
Goal modeling
Service-Oriented
requirements
Integrated requirements
engineering
Agent-oriented
requirements
Use Cases maps
UML
Collaborative reqt. gathering
Screenwriting
Card sort
Spécifications formelles
Analyse cognitive
Analyse structurée
EARS
Social modeling
Event-oriented reqt.
Contextual inquiry
Reqt. driven design
Problem frames
Domain Driven Design
HCI analysis
Stakeholders taxonomy
« Awareness »
Ne pas se méprendre sur le
facteur principal !
Merci !
@addinquy
http://freethinker.addinq.uy
christophe.addinquy@zenika.com
addinquy
addinquy
addinquy
addinquy
addinquy
Questions
#AgileFrance
Si vous avez des
passez me voir après

User Stories What Else ?

  • 1.
    User Stories, whatelse ? par Christophe Addinquy 15h30 - 14h Salle 1 #AgileFrance
  • 2.
    Aujourd’hui : Accompagnementagile @ Zenika Christophe Addinquy, Avant : Directeur de projet, consultant, formateur, agiliste bon teint, développeur et d’autres choses encore...
  • 3.
  • 4.
    ...ça va êtreun peu dense ! Et pourtant incomplet Désolé...
  • 5.
    Décidator Du côté de chezVictor Mon pote Bernie
  • 6.
  • 7.
    La «pyramide deLeffingwell»
  • 8.
    ✤ Une propositionde valeur ✤ Un branding ✤ Un caractère différenciant La Product Box
  • 9.
    30 secondes pourattirer l’attention de votre boss dans l’ascenseur... 1 minute pour vendre votre business model ! De l’elevator statement au pitch ✤ Traction ✤ Produit ✤ Equipe ✤ Social proof
  • 10.
  • 11.
    Faire rencontrer l’ingénierie desexigences à la communauté agile L’assistance d’agile Grenoble Lecteurs de mon blog Donner envie d’en savoir plus Ce talk Recommandation s de lecture ciblées Notes de lecture Impact Mapping
  • 12.
  • 13.
    Veut de la technologie Veutune solution opérationnelle La segmentation de marché C’est nouveau, imparfait, c’est une avancée techno C’est nouveau et prometteur C’est une solution à mon besoin C’est un produit bien établi qui a fait ses preuves J’y vais car je ne peux plus faire autrement
  • 14.
    Se battre surles marchés existant Vaincre la concurrence Exploiter la demande existante Ajuster la valeur par rapport au coût Se battre sur le prix ou chercher le facteur différenciateur Créer un marché incontesté Rendre la compétition sans objet Créer et capturer une nouvelle demande Casser l’équation coût / valeur Rechercher le différenciateur avec un coût ajusté Blue ocean strategy
  • 15.
  • 16.
    Ash Maurya Le LeanCanvas Problem / solution fit 1 2 3 4 5 Product / market fit 7 6 8 9
  • 17.
    ... ou BusinessModel Canvas
  • 18.
  • 20.
    Purpose alignment model Jefais pour moi quelque chose de spécifique Je fais ou j’achète une solution standard Envisager de ne pas faire ! Je m’appuie sur des spécialistes du sujet
  • 21.
    Du côté de chez Victor ✤Structurer ✤ Exprimer ✤ Solidifier
  • 22.
    Du côté de chez Victor ✤Structurer ✤ Exprimer ✤ Solidifier
  • 23.
    ✤ Acteurs externes ✤Evénements déclencheurs ✤ Evénements en retour ✤ Système boite noire Le diagramme de contexte
  • 24.
    http://freethinker.addinq.uy/post/66131430961/a-la-conquete-du-story-mapping Bottom up 1 -Collecter les fonctionnalités 2 - Ajouter des détails 3 - Disposer en séquence 4 - Regrouper par fréquence 5 - Indiquer les ruptures logiques dans le worflow 6 - Diviser en releases 7 - Indiquer les estimations 8 - Servir en tranches ! Story Mapping
  • 25.
    Cas d’utilisation, 1èreétape Essentiellement Top-Down ✤ Acteurs ✤ Cas d’utilisation ✤ Packages ✤ (relations)
  • 26.
    Du côté de chez Victor ✤Structurer ✤ Exprimer ✤ Solidifier
  • 27.
    1 - Leclient se présente pour régler sa nuit d’hôtel 2 - Le système affiche le montant à régler 2.1 - Le système imprime le voucher pré-payé 2.2 - Le client signe le voucher 2.2.1 - Le voucher ne correspond pas au client 2.3 - Le système enregistre le voucher acquitté 3 - Le client règle sa facture en cash 3.1 - Le client règle sa facture par C.B. 3.2 - Le système imprime une facturette (suite en 5) 4 - La système affiche le montant à rendre 4 - Le système imprime la facture 4.1 - Impression de la facture impossible 5 - Le système clos la transaction Cas d’utilisation, 2nd étape (1/2)
  • 28.
  • 29.
    ✤ Hub d’informationpar exigence ✤ Permet le tri ✤ Remplissage incrémental Template d’exigences
  • 30.
  • 31.
  • 32.
    Le modèle QUPER ✤Définir les indicateurs qualité ✤ Pour chaque fonctionnalité : estimer les breakpoints et barrières ✤ Estimer la qualité actuelle du produit / des concurrents ✤ Estimer la qualité cible souhaitée ✤ Communiquer / itérer
  • 33.
    Du côté de chez Victor ✤Structurer ✤ Exprimer ✤ Solidifier
  • 34.
    ✤ Exigences déclinéesen exemples ✤ Basé (si possible) sur des cas réels ✤ Construits en collaboration ✤ Avec les combinatoires ✤ Avec les cas aux limites Spécifications exécutables
  • 35.
    ✤ « Qualitygateway » ✤ Alignement sur l’objectif ✤ Viabilité des contraintes ✤ Besoin ou solution ? ✤ Levée des ambiguïtés ✤ PLanguage ? ✤ Quantification des attributs ✤ Levée des implicites ✤ Etc... Améliorer la qualité
  • 36.
  • 37.
    Go & See(aller sur le terrain) ✤ Voir ce que le système ne prends pas en compte (environnement de travail) ✤ Observer la logique de travail ✤ Mesurer les temps productifs / improductifs ✤ Comprendre les problèmes / souffrances des utilisateurs ✤ S’immerger dans le métier ✤ Empathie avec les utilisateurs
  • 38.
    Analyse Causale ✤ L’utilisateurn’exprime généralement pas un besoin mais ce qu’il pense être la solution ✤ Factualiser, s’extraire du ressenti ✤ Remonter au besoin initial ✤ Les 5 pourquoi : une recette pour l’analyse causale
  • 39.
    Workshops ✤ Requirements workshop ✤Définir, Identifier ✤ Acceptance tests workshop ✤ Cadrer, préciser et lever les ambiguïtés ✤ Brainstorm ✤ Générer des options, rechercher des solutions non triviales ✤ Discussions informelles ✤ Comprendre
  • 40.
    Questions hors contexte • Pourquelles raisons désirons- nous cette fonctionnalité ? • De quoi pouvons-nous nous inspirer ? Focus questions • Qui ? Où ? • Comment ? Quand ? • Pourquoi ? • Quoi ? Questions Ouvertes • Que voulez-vous traiter ? • Que souhaitez-vous y voir figurer ? • Comment voyez-vous ça ? Questions Fermées • Cette information est-elle obligatoire ? Questions Provocatrices • Immédiatement : c’est nécessairement moins d’1 sec. ou 1 min. convient encore ? ✤ Questions hors contexte : En amont pour connaitre des propriétés générales ✤ Focus questions : Pour détailler et lever des ambiguïtés ✤ Questions ouvertes : Pour générer des informations ✤ Questions fermées : pour lever des options ✤ Questions provocatrices : Pour affiner une information Questionner
  • 41.
    ✤ Biais rétrospectifou l'effet « je le savais depuis le début » ✤ Effet de récence : mieux se souvenir des dernières informations auxquelles on a été confronté ✤ Effet de simple exposition : avoir préalablement été exposé à quelqu'un ou à une situation le/la rend plus positive ✤ Effet d'ambiguïté : tendance à éviter les options dont on manque d'information ✤ Ancrage mental : La répétabilité d’un phénomène crée une illusion de causalité ✤ Biais de statu quo : la nouveauté est vue comme apportant plus de risques que d'avantages possibles et amène une résistance au changement ✤ Effet de halo : une perception sélective d'informations allant dans le sens d'une première impression que l'on cherche à confirmer ✤ Biais de confirmation d'hypothèse : préférer les éléments qui confirment plutôt que ceux qui infirment une hypothèse ✤ Perception sélective : interpréter de manière sélective des informations en fonction de sa propre expérience Les biais cognitifs
  • 43.
    Liespotting ✤ Pourquoi ? ✤Récompense ✤ Avantage ✤ Impression positive ✤ Pouvoir ✤ Eviter la punition ✤ Protection ✤ Intimité ✤ Comment ? ✤ Langage non-verbal ✤ Expressions faciales ✤ Indications verbales
  • 44.
  • 45.
    45 Analyse causale Programmation neuro- linguistique BPMModèlede Kano Design Thinking Creativity workshop Biais cognitifs Pyramide de Leffingwell Brainstorming Personas Mind maps Analyse contextuelle Use Cases Story boards Archéologie documentaire Gap analysis Exigences non- fonctionnelles Contraintes Questionnement Liste d’attributs Mesures Vision Analyse de risques Liespotting Glossaire Prototypage Story maps Stakeholders assessment Elevator statement Analyse système Product features Cartes CRC Arbre de décision Modèle de traçabilité Business case Usability engineering Analyse quantitative Goal modeling Service-Oriented requirements Integrated requirements engineering Agent-oriented requirements Use Cases maps UML Collaborative reqt. gathering Screenwriting Card sort Spécifications formelles Analyse cognitive Analyse structurée EARS Social modeling Event-oriented reqt. Contextual inquiry Reqt. driven design Problem frames Domain Driven Design HCI analysis Stakeholders taxonomy
  • 46.
    « Awareness » Nepas se méprendre sur le facteur principal !
  • 47.
  • 48.
    Questions #AgileFrance Si vous avezdes passez me voir après