Patrice Boisieau - Coach Agile
La planification
de release :
une condition de
réussite d'un projet agile
La planification de release : une condition de réussite d'un projet agile
Des projets
trop souvent en
échec
Sur 23 000 projets NON agiles :
Par rapport à l’étude précédente : net recul du taux de réussite
Source : The Standish Group
La planification de release : une condition de réussite d'un projet agile
Délai
Budget
Périmètre fonctionnel
Qualité
Les 4 variables
d'ajustement
La planification de release : une condition de réussite d'un projet agile
La matrice de compromis, un outil de gestion de crise
Fixe Ferme Ajustable Souple
Délai XBudget XPérimètrefonctionnel XQualité X
La matrice de
compromis
La planification de release : une condition de réussite d'un projet agile
La planification de release, un outil de prévention de crise
Etudes Exploration Calibrage Déploiement
Lancementdu projet
Sprint1
Sprint2
Planificationde release
Sprint3
Sprintn
...
?
Développement
La planification
de release
La planification de release : une condition de réussite d'un projet agile
Objectif :Identifier le périmètre fonctionnelpouvant être réalisé par l'équipe
dans un temps imparti
Participants :=> L'équipe cœur (PO + Scrum Master + développeurs)=> Le métier et les utilisateurs (présence fortement recommandée)
Durée : une journée complète
Déroulement :1. Construction de la story map2. Estimation avec le planning poker (ou estimation par similitude d'effort)
3. Définition du plan d'itérations
Pré-requis : avoir une bonne idée de la vélocité de l'équipe !
La planification
de release
La planification de release : une condition de réussite d'un projet agile
Avant la story map, on construit le backlog de produit
=> Couvre le périmètre fonctionnel du projet
=> Structuré en thèmes, epics et stories
1.
Construction de
la story map
Backlog Thème 2
Thème 1
Thème 3
Epic 2
Epic 1
Epic 3
User 2
User 1
User 3
La planification de release : une condition de réussite d'un projet agile
Priorisation avec MoSCoW :=> Must : les fonctionnalités incontournables=> Should : les fonctionnalités métiers importantes=> Could : les fonctionnalités de confort=> Won't : les fonctionnalités superflues
1.
Construction de
la story map
Backlog Thème 2
Thème 1
Thème 3
Epic 2
Epic 1
Epic 3
User 2
User 1
User 3
Must
Must
Should
25% par niveau de priorité
La planification de release : une condition de réussite d'un projet agile
Priorisation avec numérotation unique :=> Must : 750 – 1000=> Should : 500 – 750=> Could : 250 – 500=> Won't : 0 – 250
1.
Construction de
la story map
Backlog Thème 2
Thème 1
Thème 3
Epic 2
Epic 1
Epic 3
User 2
User 1
User 3
Must
Must
Should
940
670
920
La planification de release : une condition de réussite d'un projet agile
Construction de la story map :
=> Carte des user stories priorisées et classées par thèmes ou epics
=> Axe horizontal : rangement par thème ou epic
=> Axe vertical : rangement par priorité MoSCoW / numéro
1.
Construction de
la story map
La planification de release : une condition de réussite d'un projet agile
1.
Construction de
la story map
La planification de release : une condition de réussite d'un projet agile
Problème : 3 heures de préparation des post-its « à la main »
Astuce : la colle post-it !
1.
Construction de
la story map
La planification de release : une condition de réussite d'un projet agile
Le PO s'appuie sur la story map pour :
=> donner une vision du projet (grandes fonctionnalités, échéances)
=> présenter une à une les grandes fonctionnalités (epics)
=> discuter des dépendances entre stories
=> prioriser plus finement les stories
1.
Construction de
la story map
La planification de release : une condition de réussite d'un projet agile
Une user story est définie par :
=> Un identifiant unique
=> Un titre
=> Une priorité unique
=> Une complexité
1.
Construction de
la story map
La planification de release : une condition de réussite d'un projet agile
Le planning poker, une technique d'estimation collective de stories :
1. Les développeurs et le PO échangent sur la user story
2. Les développeurs votent une première fois (secrètement)
3. Les estimations extrêmes sont discutées
4. Les développeurs votent une deuxième fois (secrètement)
2.Planning poker
La planification de release : une condition de réussite d'un projet agile
Projet exemple :3h30 environ pour 80 user stories
2.Planning poker
La planification de release : une condition de réussite d'un projet agile
Risque : manque de temps pour terminer la revue des stories
Astuce : le time boxing !
Autre astuce : estimation par ordre de priorité (de MUST à WON'T)
2.Planning poker
La planification de release : une condition de réussite d'un projet agile
Définir le plan d'itérations :
1. Reconstitution de la story map sur le premier tableau
2. Préparation des sprints sur le deuxième tableau
3. Détermination de l'objectif de vélocité moyenne
4. Ajustement de la vélocité sur chaque sprint
5. Remplissage des sprints par ordre de priorité des stories
6. Ajustement des priorités (éventuellement)
3.Définition
du plan
d'itérations
La planification de release : une condition de réussite d'un projet agile
3.Définition
du plan
d'itérations
La planification de release : une condition de réussite d'un projet agile
Projet exemple :
=> objectif de vélocité à 50 points répartis en
8 points attribués à la gestion des stories techniques8 points attribués à la gestion des anomalies34 points attribués à la gestion des user stories
=> plan de 10 itérations de deux semaines
=> nécessité d'ajuster les priorités pour un premier lot significatif
3.Définition
du plan
d'itérations
La planification de release : une condition de réussite d'un projet agile
Principal bénéfice : une feuille de route claire
Un instrument de décision : on arrête ou on continue ?
Autres bénéfices :
=> Une vision partagée par l'équipe des besoins fonctionnels à venir
=> La connaissance des principaux écueils techniques
=> Une meilleure connaissance des dépendances entre user stories
=> Une meilleure priorisation du travail à faire
Bénéfices
La planification de release : une condition de réussite d'un projet agile
Des questions ?
FIN !