Le product backlog
Le product Backlog (= PBL) : mais quâest ce que câest que ça ?
Chaque Product Owner pourrait donner sa propre définition du product backlog mais la mienne est la suivante :
le product backlog est une liste ordonnĂ©es des futures fonctionnalitĂ©s que je souhaite un jour voir en production pour mon produit. Appelons ces futures fonctionnalitĂ©s des âitemsâ.
Par définition un PBL ne contient que des items qui ne sont pas encore développés.
Les différents items qui composent un product backlog représentent au choix :
- des nouvelles fonctionnalités,
- des améliorations de fonctionnalités déjà existantes,
- des tĂąches techniques*.
*et oui, il est tout Ă fait possible de voir Ă©galement dans un PBL des items correspondant Ă des tĂąches techniques comme par exemple : ârefonte de la charte graphique de lâappli mobileâ ou alors âmigration du backend toto vers la version 1.67â par exemple.
La rĂšgle communĂ©ment admise Ă©tant tout de mĂȘme de se confectionner un PBL avec des items de taille similaire (au moins fonctionnellement parlant car on dĂ©couvre parfois des surprises sur la taille des items aprĂšs leurs macros-chiffrages par lâĂ©quipe de dĂ©veloppement, mais jây viens plus tard).
Il existe pas mal dâoutils pour faire de la gestion de backlog, personnellement j’ai travaillĂ© avec la doublette magique Jira/Confluence et AzureDevOps (ex TFS) mais je suis sĂ»r que vous trouverez votre bonheur parmi toutes les solutions du marchĂ©.
En tant que PO sur quoi qui puis-je mâappuyer pour mâaider Ă crĂ©er mon PBL ?
GĂ©nĂ©ralement si vous ĂȘtes Product Owner câest que quelquâun vous a demandĂ© de lâĂȘtre (directement ou non mais vous nâĂȘtes pas arrivĂ© lĂ par hasard).
Cette personne est gĂ©nĂ©ralement appelĂ©e le mĂ©tier, le sponsor (ou la MOA ou le stakeholder et jâen passe et des meilleurs) de votre produit.
Devinez quoi ? Câest lui qui va vous donner les items de votre backlog.
La premiĂšre chose Ă dire concernant les items constituant un PBL va vous sembler Ă©vidente mais il est parfois bon dâenfoncer des portes ouvertes (comme on dit pas chez moi đ) : un PBL ne doit contenir que des Ă©lĂ©ments qui ont de la valeur pour votre produit.
Les tĂąches techniques, les POCs et autres spikes peuvent Ă©galement ĂȘtre ajoutĂ©s Ă un PBL car bien quâils nâapportent pas de valeur directement Ă lâutilisateur, ils vont participer Ă amĂ©liorer la qualitĂ© du produit et Ă rĂ©duire les risques dâincident sur le long terme.
Jâaborde dans dâautres articles du blog, mes techniques de recueil de besoin.
Sachez que pour constituer votre PBL vous allez avoir besoin de rĂ©aliser un certain nombre dâateliers avec le mĂ©tier afin de rĂ©cupĂ©rer :
- la âroadmapâ du produit avec les dates clĂ©s et les jalons Ă respecter,
- éventuellement un pré-découpage en version déjà effectué par un PM,
- les fonctionnalitĂ©s de base de votre produit (les âmust-haveâ) sans quoi rien ne sera possible (ex : une brique dâauthentification),
- les fonctionnalitĂ©s que lâon veut dĂ©velopper absolument mais qui ne peuvent pas venir sans les fondations (les âshould-haveâ) par exemple âenvoyer une notification push pour chaque but marquĂ© par mon Ă©quipe favoriteâ,
- les fonctionnalitĂ©s que lâon aimerait avoir Ă moyen terme (les ânice-to-haveâ) par exemple âpouvoir personnaliser le texte de mes notifications pour rester discret au travailâ.
Muscler sont PBL avec le métier
Des ateliers au cours desquels on construit son product backlog, ne doit pas ĂȘtre un jeu de questions/rĂ©ponses entre un PO et un PM.
Au contraire le Product Owner est lĂ pour comprendre oĂč veut aller le PM, le challenger sur le maximum de choses pour quâensemble ils sachent oĂč le produit ira.
Le Product Manager doit ĂȘtre Ă lâĂ©coute de son Product Owner pour que celui-ci puisse prendre possession du produit et sâinvestir Ă 100% dans sa crĂ©ation.
Il est inutile dans ce genre dâatelier dâaborder des sujets qui viendront Ă ĂȘtre dĂ©velopper dans trop longtemps : le besoin aura le temps dâĂ©voluer 10 fois et le fait dâaborder maintenant un sujet trop flou nâaura aucune utilitĂ© concrĂšte mise Ă part celle de faire traĂźner une rĂ©union 20 minutes supplĂ©mentaires.
Mes deux principaux conseils lors dâateliers de constitution dâun PBL pour un Product Owner sont les suivants :
- Timeboxer lâexercice : 1h30 maximum (Ă rĂ©pĂ©ter jusquâĂ avoir une roadmap sur 6 mois par exemple)
- Sâefforcer de âpenser versionâ câest Ă dire regrouper au maximum au cours de lâatelier les items devant fonctionner ensemble en une version cohĂ©rente
En dĂ©finitive, une fois que vous avez menĂ© vos X ateliers avec le mĂ©tier et que vous avez compris et dĂ©terminĂ© avec le PM la valeur de chaque fonctionnalitĂ©, vous devez ĂȘtre en mesure de pouvoir prĂ©senter un premier draft de votre PBL tel que ci-dessous :
Note : La valeur dâun item est quelque chose dâarbitraire câest Ă dire quâĂ un instant t le PO et le PM se sont mis dâaccord sur un certain poids mais il arrive quâils se trompent (et oui ça arrive). Dans ce cas lĂ , les retours utilisateurs montreront que la fonctionnalitĂ© nâest pas ou peu utilisĂ©e et la business value de cet item sera mise Ă jour par le PO dans le PBL.
Attention, la valeur dâune fonctionnalitĂ© ne dĂ©signe pas sa prioritĂ©. Pour savoir comment prioriser les items de votre backlog la rĂ©ponse se trouve dans le chapitre ci-dessous.
Comment prioriser les items de son Backlog ?
Il existe de nombreuses maniĂšres de prioriser les items de son backlog pour un Product Owner (MMF etcâŠ)
Toutefois il faut bien garder en tĂȘte que le plus important dans le rĂŽle dâun product Owner et la gestion de son product backlog rĂ©side dans le fait de savoir en permanence oĂč en est son produit Ă lâinstant t et oĂč il va aller Ă Ă t+1.
Dâailleurs pourquoi demande-t-on Ă un PO de prioriser son backlog ?
A mon sens câest avant tout pour quâil sache en permanence oĂč il en est et oĂč il veut aller, comme un capitaine sur un bateau en quelque sorte.
Imaginez que vous croisiez votre N+3 Ă la cafĂ©tâ Ă midi, sauriez-vous lui rĂ©pondre la date prĂ©visionnelle de sortie de la feature âde notifications push tant attendue dont il a justement parlĂ© avec le DG lors de sa partie de golf de dimancheâ en moins de 10 secondes de rĂ©flexion ?
Le bon PO, oui đ car il connaĂźt son backlog, il connaĂźt les items en cours de dĂ©veloppement (et Ă©ventuellement le retard accumulĂ©), il connaĂźt les items au programme du prochain sprint de son PBL, il connaĂźt le temps de latence moyen entre un dĂ©veloppement DONE est une mise en production et il peut donc rĂ©pondre Ă +/- 2 semaine, une date rĂ©aliste hors imprĂ©vus.
Et ça, le N+3 il kiffe.
Je donne ci-dessous ma technique de priorisation dâun PBL, elle est certainement perfectible, nâhĂ©sitez pas Ă commenter mon article pour me donner votre technique de priorisation de backlog #ameliorationcontinue ;).
Imaginons que jâai dĂ©jĂ une liste de X items constituant mon PBL, chaque item possĂšde :
- Une valeur (en agile on nomme ceci la business value) relative par rapport à ses voisins (voir chapitre précédent),
- Une version cible
- Une taille similaire et convenable Ă mes yeux
Maintenant comment je priorise tout ça ?
Lâexercice de priorisation en tant que tel est plutĂŽt complexe, il nâexiste pas de âformule magiqueâ et rien ne vous garantie que ce qui a marchĂ© une seule vaudra pour la suivante.
Pour pouvoir bien prioriser les items de son PBL le PO a bien de connaĂźtre pour chaque item :
- La business value,
- La complexité*,
- Le risque (est-ce que sans cet item mon produit est en risque ?)
*Pour tout savoir sur la complexitĂ© dâun item du PBL, je vous invite Ă lire lâarticle suivant.
Une fois ces 3 informations en sa possession il est possible de dĂ©terminer la prioritĂ© dâune fonctionnalitĂ© en faisant le rapport de sa business value sur sa complexitĂ©.
Par exemple :
FonctionnalitĂ© dâauthentification : BV=100 // ComplexitĂ© = 30 jH // Risque : niveau le plus haut Poids de la priorisation = 3.33 (+ risque max)
FonctionnalitĂ© de personnalisation dâune notif push : BV : 5 // ComplexitĂ© = 3 jH // Risque: nul
Poids de la priorisation = 1.66 (pas de risque)
Au regard de toutes ces informations et en gérant au mieux les dépendances, le product Owner est normalement maintenant capable de générer un PBL de ce type :
insérer ici une maquette de PBL avec des items ordonnés par versions et priorisés.
La vie est parfois…cruelle
Un Product Owner pourra mettre toute lâĂ©nergie quâil peut pour prioriser de la meilleure des maniĂšres son PBL il faut garder Ă lâesprit que dans âla vraie vieâ une demande du top management passera toujours en top prioritĂ©.
Bien souvent, un des rĂŽles de PO sera donc de savoir jongler entre son product backlog et les demandes externes non-initialement âprĂ©vuesâ. Comme dans la vraie vie en quelques sorte đ
Conclusion
ClĂ© de voĂ»te de la mĂ©thode Scrum, le Product Backlog qui est partagĂ© avec lâensemble des parties prenantes interagissant avec le produit, est lâoutil principal du product Owner.
En perpĂ©tuelle Ă©volution, le PBL reflĂšte la roadmap Ă lâinstant t du produit en cours de construction. Il donne des indications sur les diffĂ©rentes fonctionnalitĂ©s attendues dans chaque version ainsi que des prĂ©cisions sur les dates espĂ©rĂ©es de livraisons.
Je conseille à chaque PO de faire de son PBL sa boussole lui permettant de toujours garder le cap vers le plus important : fabriquer des fonctionnalités pertinentes pour les utilisateurs.