User Stories ... what else ?
Agile Grenoble 2013
Le 21 Novembre 2013
Christophe Addinquy,

Aujourd’hui : Coach agile @ Zenika
Avant : Directeur de projet, consultant,
formateur, agiliste bon teint,
développeur et d’autres choses
encore...
Donc, des outils ?!?
Désolé...

...ça va être un peu dense !
Et pourtant incomplet
Expression du besoin

Requirements management

Capture des exigences
Work item

Comment les nommer ? Pas le sujet d’aujourd’hui
Vision
Business

Expression

Collaboration
Vision
Business

Vision Produit

Stratégie

Positionnement
marketing
Product Box

✤

Une proposition de valeur

✤

Un branding

✤

Un caractère différenciant
The elevator statement

30 secondes pour attirer
l’attention de votre boss dans
l’ascenseur...
«start with the why»
Simon Sinek
Lean Canvas, étape 1

Ash Maurya
Le Startup pitch
1 minute pour vendre votre business model !
La «pyramide de Leffingwell»
Impact Mapping

L’assistance d’agile
Grenoble

Donner envie d’en
savoir plus

Ce talk

Lecteurs de mon
blog

Recommandations
de lecture ciblées

Notes de lecture

Faire rencontrer l’ingénierie
des exigences à la
communauté agile
Rationalisme

Quantifier

Emotions

Donner du sens
Vision
Business

Vision Produit

Stratégie

Positionnement
marketing
Adoption des technologies (1/2)

Veut de la
technologie

Veut une solution opérationnelle
Adoption des technologies (2/2)
Innovateur : Va acheter un produit même (surtout) s’il est
imparfait pourvu que ce soit une avancée technologique
Early adopter : J’achète car c’est nouveau et prometteur,
même si ça n’a pas fait ses preuves
Early majority : J’achète un produit qui est une solution à
mon besoin ... mais je vais suivre un référent !
Late majority : J’achète un produit bien établi qui a fait
ses preuves
Laggards : J’achète un produit car je ne peux vraiment
plus faire autrement
Blue ocean strategy
Créer un marché incontesté

Se battre sur les marchés existant

Rendre la compétition sans objet

Vaincre la concurrence

Créer et capturer une nouvelle
demande

Exploiter la demande existante

Casser l’équation coût / valeur

Ajuster la valeur par rapport au
coût

Rechercher le différenciateur avec
un coût ajusté

Se battre sur le prix ou chercher
le facteur différenciateur
Vision
Business

Vision Produit

Stratégie

Positionnement
marketing
Lean Canvas, étape 2

Business model

≠
Business plan
... ou Business Model Canvas
Et pour un
projet
interne ?
Approche progicielle (1/2)

Faire

Acheter

Apport de valeur

Cost cutting

Coeur métier

?

Commodity
Approche progicielle (2/2)
Gap

Fit

Renoncements

?
Expression

✤

Structurer

✤

Exprimer

✤

Solidifier
Expression

✤

Structurer

✤

Exprimer

✤

Solidifier
Diagramme de contexte

✤

✤

Acteurs externes

Evénements
déclencheurs

✤

Evénements en retour

✤

Système boite noire
Story Mapping
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

Bottom up

http://freethinker.addinq.uy/post/66131430961/a-la-conquete-du-story-mapping

7. Indiquer les estimations
8. Servir en tranches !
Cas d’utilisation, 1ère étape

✤

✤

Cas d’utilisation

✤

Essentiellement Top-Down

Acteurs

Packages

✤

(relations)
Expression

✤

Structurer

✤

Exprimer

✤

Solidifier
Cas d’utilisation, 2nd étape (1/2)
1. Le client se présente pour régler sa nuit d’hôtel
2. Le système affiche le montant à régler
1. Le système imprime le voucher pré-payé
2. Le client signe le voucher

1. Le voucher ne correspond pas au client
3. Le système enregistre le voucher acquitté (suite en
6)
3. Le client règle sa facture en cash

1. Le client règle sa facture par C.B.
2. Le système imprime une facturette (suite en 5)
4. La système affiche le montant à rendre
5. Le système imprime la facture
1. Impression de la facture impossible
6. Le système clos la transaction
Entités du domaine

Cas d’utilisation, 2nd étape (2/2)

Use
Cases

Vision

Use case
User Story

Entrées / sorties
Template d’exigences

✤

Hub d’information par
exigence

✤

Permet le tri

✤

Remplissage incrémental
Software Requirements Specifications
Exigences non-fonctionnelles
Expression

✤

Structurer

✤

Exprimer

✤

Solidifier
Spécifications exécutables

✤

✤

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
Améliorer la qualité
✤

« Quality gateway »
✤
✤

Viabilité des contraintes

✤
✤

Alignement sur l’objectif
Besoin ou solution ?

Levée des ambiguïtés
✤

PLanguage ?

✤

Quantification des attributs

✤

Levée des implicites

✤

Etc...
Collaboration
Gemba (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
Approche orientée solution

✤

✤

✤

Une incarnation de «remember
the future»

A quoi ressemblerait votre travail
avec le nouveau système ?
Comment identifiez-vous que les
choses vont mieux ?
Workshops
✤

Requirements workshop
✤

✤

Acceptance tests workshop
✤

✤

Cadrer, préciser et lever les ambiguïtés

Brainstorm
✤

✤

Définir, Identifier

Générer des options, rechercher des
solutions non triviales

Discussions informelles
✤

Comprendre
Design thinking

✤

Pour faciliter l’innovation

✤

S’appuie sur :
✤

La visualisation

✤

La génération d’idées

✤

Le filtrage et la sélection

✤

L’adaptation
Questionner
Questions hors
contexte

•Pour quelles raisons désironsnous cette fonctionnalité ?
•De quoi pouvons-nous nous
inspirer ?

Focus questions

•Qui ? Où ?
•Comment ? Quand ?
•Pourquoi ?
•Quoi ?

Questions Fermées

•Cette information est-elle
obligatoire ?

Questions Ouvertes

•Que voulez-vous traiter ?
•Que souhaitez-vous y voir

figurer ?
•Comment voyez-vous ça ?

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
Biais cognitifs
✤

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 : influence laissée par la première impression

✤

✤

✤

✤

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
Liespotting

✤

Pourquoi ?
✤

✤

Comment ?

Récompense
✤

✤
✤

Expressions faciales

✤

✤

Langage non-verbal

Indications verbales

Avantage
Impression positive

✤

Pouvoir

✤

Eviter la punition

✤

Protection

✤

Intimité
Conclusions
Service-Oriented
requirements

Arbre de décision

Design Thinking

Domain Driven Design
Analyse structurée

UML

Personas

Programmation neurolinguistique

Collaborative reqt. gathering

Analyse causale
Problem frames

Business case

Stakeholders taxonomy

Social modeling

Analyse système
Story maps

Spécifications formelles

Stakeholders
assessment

Liespotting

Cartes CRC

Analyse
contextuelle

Creativity
workshop

Agent-oriented
requirements

Usability engineering

Mesures

Archéologie
documentaire

Contextual inquiry

Questionnement

Exigences nonfonctionnelles

Vision

Biais cognitifs

Story boards

Contraintes

EARS

Brainstorming

Screenwriting

Integrated requirements
engineering

Analyse de risques

Event-oriented reqt.

Prototypage

Card sort

Modèle de
Kano

Product features

Analyse cognitive

Reqt. driven design

Analyse quantitative

Liste d’attributs
HCI analysis

Gap analysis

Use Cases
Pyramide de Leffingwell
Use Cases maps

Goal modeling
Mind maps

Glossaire

BPM

Modèle de
traçabilité

Elevator statement
52
« Awareness »

Ne pas se méprendre sur le
facteur principal !
Questions ?
Merci !
@addinquy
http://freethinker.addinq.uy
christophe.addinquy@zenika.com
addinquy
addinquy
addinquy
addinquy
addinquy

User Stories ... What else ?