Posted on Mai 20, 2019 in A la une, Blog, Scrum
Le mythe et la réalité
Dans le cadre de vos projets en SCRUM, vous avez forcément déjà entendu des affirmations du genre « nous fonctionnons sur un mode agile donc nous ne pouvons pas vous dire à quelle date nous livrerons cette fonctionnalité puisque nous nous adaptons au changements fréquents qu’on nous demande de prendre en compte ».
Comme si la contrepartie de cette adaptation au changement était une incapacité à prendre des engagements ou à donner de la visibilité sur l’avancement du projet.
Non seulement cette affirmation est fausse (comme nous le verrons un peu plus loin) mais elle est également délétère quant au développement et à la crédibilité de l’Agilité dans les entreprises, en particulier dans celles qui peinent à la mettre en œuvre.
Nous allons voir un peu loin dans cet article qu’il est possible de prédire des dates de livraisons et de passer en revue les moyens à mettre en œuvre pour y parvenir. Pour cela, imaginons le contexte suivant :
Un Product Owner exerce au sein d’une équipe SCRUM et on lui impose un engagement à date et à périmètre fixe. Il a beaucoup de pression et on lui fait bien comprendre qu’atteindre cet objectif est impératif.
Comment gérer cette situation ? Quelle stratégie mettre en place pour construire une réponse qui tienne compte de ce que l’équipe est réellement capable de produire tout en satisfaisant au plus près les critères de cette demande (périmètre et date fixe) ?
Comprendre les enjeux
L’enjeu essentiel pour le Product Owner et son équipe tient à sa crédibilité : construire sa crédibilité auprès des stakeholders c’est tenir ses engagements au fil du temps et le faire savoir (tenir ce que l’on a promis avec le meilleur niveau de qualité possible et le faire sur la durée, à un rythme soutenable).
La fiabilité avec laquelle on maintient ce niveau de maitrise génère un niveau de confiance croissant qui servira de fondement à la crédibilité recherchée.
Le commanditaire n’a souvent aucune idée de la capacité de production d’une équipe, sa principale motivation est d’avoir la totalité de ce qui est demandé à la date exigée. De son côté, le devoir d’une équipe SCRUM est de fournir rapidement la meilleure réponse possible qui permettra de satisfaire (ou d’être au plus près) de l’objectif à atteindre. Cela inclut la capacité de dire non à ce qui ne parait pas raisonnable et d’accepter d’être challengé sur les éléments de réponse fournis. L’expression meilleure réponse possible correspond à la précision avec laquelle on se projette dans le futur en se basant sur une capacité à produire fiable et prédictible.
Connaitre ses limites
L’équipe Scrum doit connaitre ses limites afin de construire une réponse objective et chiffrable sur la base de fait mesurables et objectifs. La première question posée à laquelle il faut pouvoir répondre étant : sommes-nous capables de fournir la quantité de travail nécessaire à la livraison de ce qui est demandé à la date fixée mais sans sacrifier le niveau de qualité du produit.
Si l’équipe SCRUM n’en est pas capable alors dans quelle mesure en est-elle éloignée et sur quoi peut-elle raisonnablement s’engager ? Dans tous les cas, la réponse doit être rapide : il n’est pas question de répondre dans des délais qui mette en péril la date de livraison exigée par exemple (auquel cas, fournir une réponse n’a plus vraiment d’intérêt).
Construire sa réponse à partir d’éléments mesurables
Parmi les artefacts que l’approche SCRUM fournit, la vélocité est un des éléments important qui va nous servir à construire une visibilité sur les futures dates de livraison. Pour cela prenons les hypothèses suivantes :
- La vélocité est stable
- Le backlog décrit le périmètre fonctionnel demandé et est complètement estimé
- La durée d’un sprint est de deux semaines
- Soit V cette vélocité de l’équipe de développement
- Soit B le nombre total de stories points que représente le backlog
Il faudra donc B / V = N sprints pour livrer l’ensemble des fonctionnalités décrites dans le backlog, c’est-à-dire 2N semaines pour effectuer la livraison correspondante. Si on démarre le premier sprint à la date « t » alors il est alors inutile de s’engager avant la date « t + 2N ».
Remarque: un premier constat permet de se rendre compte que si nous voulons être en mesure d’effectuer cette prédiction alors il faut absolument avoir une vélocité stable et un backlog complètement estimé rapidement.
Estimer rapidement un backlog
Il existe une technique qui s’appelle « eXtreme cotation » et qui consiste à paralléliser le travail d’estimation auquel toute l’équipe SCRUM participe. On travaille sur l’ensemble des Epics qui représentent le périmètre fonctionnel demandé (si le besoin n’est pas exprimé sous cette forme alors il faudra préalablement générer l’ensembles de Epics avec l’équipe).
D’une manière rapide, on procède de la manière suivante (le détail du processus est décrit dans deux articles que vous trouverez en référence à la fin de cet article) :
- On dispose sur un mur l’ensemble des Epic sous la forme de post’it (titre + description) ainsi que l’échelle d’estimation utilisée par l’équipe (SP, taille de T-shirts, …).
- Le PO présente rapidement les Epics à l’équipe
- Sans parler, chaque personne vient poser les post’it sous la valeur d’estimation qui lui parait la plus juste (la valeur correspondante est notée sur les post’it)
- Une fois que tous les post’it ont été traités, l’ensemble de l’équipe déplace les post’it (toujours sans parler) vers la valeur qui lui parait mieux correspondre. La nouvelle valeur est notée sur le post’it.
- On met de côté les post’it qui n’ont pas changé de valeur
- Seulement à cette étape, l’équipe échange sur les raisons qui ont conduit à changer la valeur des post’it de manière à s’entendre sur la valeur finale à donner à chacun des post’it restant.
On ne demande pas d’engagement à l’équipe, l’objectif est d’obtenir une estimation macro dans un laps de temps réduit. Une estimation plus précise sera effectué durant le travail de grooming lorsque les sprints de réalisation seront lancés.
Définir un sprint au plus tôt et au plus tard
La limite de l’exercice vient du fait qu’on manipule une valeur moyenne de vélocité alors qu’on sait que cette valeur peut varier de manière relativement importante d’un sprint à l’autre. Il peut donc être intéressant de se faire une idée de la précision avec laquelle on est capable d’estimer un sprint de livraison sur la base de la vélocité d’une équipe SCRUM en prenant en compte cette variabilité. Pour cela on va utiliser des courbes de Burn Up qui seront construites à partir des valeurs de vélocité constatés sur les 12 premiers sprints.
Pour fixer les idées nous utilisons une feuille Excel afin de construire les courbes de Burn Up, pour simuler les variations de vélocité et leur impact sur les projections de sprint de livraisons envisageables.
Le fichier Excel qui sert d’exemple se trouve ici.
ReleaseBurnUpSimulatorV1.0
Revenons à la situation où se trouve le Product Owner. La feuille Excel simule un contexte ou à l’instant « t », le développement en cours correspond au sprint 12 et le périmètre fonctionnel à atteindre se situe au niveau de 180 story points (SP) avant l’arrivée de la demande urgente. La demande urgente, une fois estimée, corresponds à un périmètre fonctionnel additionnel de 120 SP qui devra être livrée impérativement pour sprint 19.
La vélocité de l’équipe étant de 10 SP par sprint avec un écart max entre deux sprint de 5 SP (on est dans le cas d’une vélocité non stabilisée variant entre les limites de 5 SP et 15 SP). En reprenant les valeurs min et max de la vélocité on peut alors tracer deux droites (rouge et verte) permettant de se projeter sur les prochains sprints. Les dates auxquelles les droites rouge et verte coupent la ligne de 300 SP (objectif initial 180 SP + nouveau périmètre demandé 120 SP) correspondent aux sprint au plus et au plus tard que nous cherchons à définir.
On se rend compte au passage que le sprint 19 ne sera pas tenable même en étant très optimiste (droite verte obtenue en prenant l’hypothèse d’une vélocité max pour chacun des futurs sprints).
Arrêtons-nous un instant sur le fonctionnement de la feuille Excel.
- Dans l’onglet « Sprint » se trouve le calcul du nombre de SP réalisé par sprint à partir des valeurs min et max de vélocité.
- La valeur de la vélocité et sa variation (Ecart) peuvent être modifiée dans l’onglet « Projection ». Case B4 de l’onglet « Projection ».
- Scope 1 correspond à 180 SP et scope 2 correspond à 300 SP.
- L’écart (exprimé en nombre de sprints) correspond à la précision avec laquelle l’estimation du sprint de livraison est effectuée (si Ecart =0 alors « sprint au plus tôt » = « sprint au plus tard » = « sprint de livraison »). Voir « Erreur » en cases G2 et G3 de l’onglet « Projection ».
La feuille de calcul est conçue de manière à introduire un aléa sur la valeur de vélocité de chacun des 12 premiers sprints (l’ampleur de cet aléa est ajustable par la valeur donnée à Ecart en case B4 de l’onglet « Projection »). Donc à chaque fois que l’on fait <CRTL-S> sur la feuille Excel, on génère un autre ensemble de valeurs de vélocité qui vont influer sur les valeurs min et max de la vélocité.
Que se passe-t-il lorsqu’on compare le cas de figure où l’équipe SCRUM a une vélocité stable (Ecart = 1) à celui où la vélocité n’est pas stable (Ecart = 5) ? Pour cela, regarder :
- Les valeurs de « Erreur » pour le scope 2 qui correspond au périmètre devant être livré (case G3 de l’onglet « Projection ») à chaque fois que vous faites <CRTL-S>.
- L’allure des droites rouge et verte.
On constate que lorsque la vélocité est stable, l’écart entre le sprint au plus tôt et le sprint au plus est réduit dans des proportions importantes (graphiquement l’angle que représente la droite rouge et la droite verte est plus faible).
L’importance d’une vélocité stable est donc primordiale quant à la précision avec laquelle on va pouvoir estimer un sprint de livraison. En terme de prédiction, la stabilité de la vélocité est plus importante que sa valeur absolue. Dit autrement, si l’obtention d’une grande valeur de vélocité se fait au prix d’une grande variabilité alors l’erreur sur la prédiction sera d’autant plus grande.
Arrivé à ce stade, deux cas de figure se présentent. Soit la date à laquelle je peux m’engager est antérieure à celle imposée (je peux m’engager en répondant à la demande telle qu’elle est exprimée), soit elle correspond à une date postérieure (je ne suis pas en mesure de m’engager tel quel) mais il faut quand même proposer une alternative.
J’ai la capacité à tenir l’engagement
Cela signifie qu’à partir de la date que l’on m’impose, il est possible de définir un sprint sur lequel s’engager. Il restera malgré tout à challenger cette date en considérant les périodes de congés durant cette période, les formations, et éventuellement une analyse des risques liés à des aspects techniques du développement (nouvelle technologie, migration dans le Cloud, …) ou à l’environnement dans lequel le projet se déroule (engagements pris ailleurs, salon professionnel, …).
Je n’ai pas la capacité à tenir l’engagement
Le moment de la négociation finira bien par arriver alors autant se tenir prêt à fournir des arguments défendables et proposer des solutions alternatives viables. Le release Burn Up est un bon outil sur lequel basé sa communication et expliquer les raisons pour lesquels on ne peut pas satisfaire la demande telle quelle. Elle montre en passant que l’équipe se donne les moyens de piloter ses activités, respecte les principes de transparence et fournit des moyens factuels de se projeter dans l’avenir.
Parmi les alternatives les plus classiques on trouve (non exhaustif) :
- Réduire le périmètre et conserver la date de livraison: c’est la solution la plus raisonnable lorsque les contraintes business le permettent. De plus rien n’empêche de livrer le reste à des dates ultérieures, les fonctionnalités livrées en premier lieu ayant été choisie pour leur meilleur ROI (un maximum de valeur pour l’utilisateur pour un minimum d’effort de développement, mis à disposition le plus tôt possible).
- Augmenter la taille de l’équipe : c’est souvent tentant mais c’est une mauvaise idée (à court terme tout du moins) l’impact immédiat sur l’équipe étant fort (accueil et formation des nouveaux arrivants sur le produit et les méthodes de travail). On a un effet inverse de celui recherché la vélocité de l’équipe baisse car elle doit passer du temps à des taches non productives dont le bénéfice ne se verra que plus tard.
- Confier le développement à une autre équipe: c’est un peu une variante du cas précédent puisqu’il faut effectuer un transfert de connaissance vers l’équipe sous-traitante.
Les critères de succès d’une telle approche
Un niveau de maitrise élevé
- Une Definition Of Done efficace et une vélocité stable
- Savoir estimer rapidement un backlog : l’eXtreme cotation
- La stabilité de l’équipe dans la durée
- Sans oublier les autres bonnes pratiques liées à XP, à la maitrise de la dette technique, à DevOps …
Anticiper
Ce n’est pas le jour ou arrive une demande de développement urgente qu’il faut se mettre en ordre de bataille pour se positionner rapidement vis-à-vis de la demande. Etre en mesure d’établir une vélocité stable prends du temps (environ trois à quatre sprints) et n’est possible qu’avec un bon niveau de maturité agile. C’est un levier efficace pour renforcer la motivation intrinsèque de l’équipe SCRUM tout entière et un moyen efficace pour la faire progresser. Une vélocité digne de ce nom ne peut s’entendre qui si une Defintion Of Done efficace est mise en place.
L’estimation complet, d’un backlog sa priorisation passe par la maitrise de techniques et d’outils (Xtreme cotation, WSJF, …) qui nécessite un temps d’apprentissage et d’expérimentation avant d’être utilisés efficacement. De la même façon, maintenir un backlog bien ordonné permet de mieux estimer l’impact d’une nouvelle demande sur des objectifs en cours.
Conclusion
Il est tout à fait possible de s’engager sur des dates de livraisons en mode agile, d’évaluer le challenge que cela représente et enfin de tenir cet engagement. Cependant, pour être en capacité d’évaluer avec une bonne précision les dates de livraison en mode agile il faut impérativement :
- Une vélocité stable (Scrum Master et équipe de développement)
- Un backlog complètement estimé qui décrive le périmètre fonctionnel à livrer (Product Owner et équipe de développement).
Le fait de devoir maintenir un backlog à jour et une vélocité stable représentent un défi important à atteindre pour une équipe SCRUM. Ces contraintes fortes représentent aussi un levier très puissant au service du Scrum Master pour faire évoluer son équipe SCRUM vers plus de maitrise et de maturité agile.
La régularité avec laquelle l’équipe tiendra ses engagements renforcera sa crédibilité auprès des stakeholders même si ceux-ci ne sont pas pleinement satisfait de ne disposer dans un premier temps que d’une partie du périmètre fonctionnel attendu. Ils auront alors des éléments factuels pour prendre les décisions adaptées aux objectifs qu’il se fixent (passer à l’agilité à l’échelle ou se contenter d’un périmètre moins large mais avec un délai plus court par exemple).
Références
Burn Up vs Burn Down chart
http://www.clariostechnology.com/productivity/blog/burnupvsburndownchart
L’eXtreme Quotation : le planning agile «cartes sur table»
https://blog.octo.com/extreme-quotation-planning-agile-sous-steroides/
Estimer la complexité de son backlog : tout un défi
http://blog.thiga.fr/product-management/extreme-quotation-estimer-la-complexite-de-son-backlog/
Scrum Life #31 — Estimer un backlog entier en 1 heure avec l’atelier Extreme Quotation
https://jp-lambert.me/scrum-life-31-estimer-un-backlog-entier-en-1-heure-avec-latelier-extreme-quotation-dce141291b3c
Stabilizing Your Velocity
https://medium.com/@mdalmijn/stabilizing-your-velocity-4639e27f713b
Prioriser par coût du retard (cost of delay) | Excellence Agile
https://excellenceagile.com/2017/08/29/prioriser-par-cout-du-retard-cost-of-delay/
DoD Definition Of Done
https://www.sodifrance.fr/blog/dod-definition-of-done/
What is Extreme Programming?
http://ronjeffries.com/xprog/what-is-extreme-programming/
Agile Product Ownership in a Nutshell
https://www.youtube.com/watch?v=502ILHjX9EE
Sujets de réflexions
- Avez-vous des équipes de développement dont le turnover est important. Dans ce cas quid de la vélocité stable et de la capacité de l’équipe à être prédictible ?
- Quel est l’impact de l’absence de Vision sur la prédictibilité de l’équipe ? Sur la négociation avec le donneur d’ordre ?
read more
Posted on Mar 11, 2019 in A la une, Blog, Lecture
Un modèle organisationnel d’entreprise est intéressant lorsque l’on veut avoir une idée des chances de succès liées à l’introduction d’une nouvelle méthode de travail au sein d’une organisation ou plus largement dans le cadre d’une transformation agile.
On dispose alors d’une grille de lecture facilitant la lecture et la compréhension des comportements de groupes et de mieux comprendre les raisons de la réussite ou de l’échec de certaines initiatives :
- Passer en mode Kanban est-il judicieux ?
- Quelles sont nos chances de réussir la transformation à l’échelle que nous envisageons ?
Cet article a été inspiré par la lecture de l’excellent document « Michael Sahota – Un guide de survie à l’adoption ou transformation agile ou travailler avec la culture d’une organisation » que vous trouverez sur http://agilitrix.com.
Le modèle de Schneider
Ce modèle est relativement ancien puisque le livre « The Reengineering Alternative » de William E. Schneider fut édité en 2000. Le modèle de Schneider introduit quatre types de culture d’entreprise.
On distingue des types axés sur :
- Le contrôle
- La collaboration
- L’épanouissement des collaborateurs
- La compétence
Le modèle de Schneider explique qu’on peut passer relativement facilement à une culture connexe (le quadrant d’à côté sur le modèle décrit ci-dessous) et qu’on ne peut pas passer à un type opposé (de « Collaboration » à « Compétence » par exemple) sans transiter d’abord vers un type connexe (« Controle » ou « Cultivation » par exemple).
Cela rend extrêmement difficile le passage à une culture opposée (les chances de succès sont très faibles sachant qu’il n’est déjà pas évident de changer pour un type connexe).
Il y a toujours une culture dominante
Pour le découvrir il existe un questionnaire en ligne https://www.surveymonkey.com/r/VVNT5FB qui permet de cibler le modèle culturel dominant (ou de la confirmer si vous avez une idée). Le résultat obtenu permet de se représenter la situation sous la forme suivante :
Il sera plus facile de passer du type « Collaboration » au type « Cultivation » qu’au type « Control » par exemple.
Culture d’entreprise et agilité
On reprend les valeurs et les principes de l’agilité et on les identifie la partie du modèle de Schneider à laquelle elle s’apparente le mieux pour obtenir le schéma ci-dessous.
La confiance est la valeur agile qui correspond le mieux à la collaboration, le craftmanship avec la compétence, la prédictibilité avec le mode Control, etc …
Introduction de kanban dans une organisation
Lorsqu’on essaye de définir à quel type du modèle de Schneider correspondent les caractéristiques de kanban, on s’aperçoit que la plupart collent avec le type Control.
Introduction d’autres méthodes de travail
Si on reprends l’exercice précédent mais en s’intéressant cette fois aux méthodes de travail (Méthodes Agiles, Kanban, craftmanship), on obtient alors le schéma ci-dessous :
On notera que la méthode Scrum à des valeurs de collaboration et d’éducation d’une équipe à plus de maturité agile occupe deux quadrants du modèle : la mise en place de SCRUM a plus de chances de succès dans ces deux modèles culturels que dans les deux autres.
Transformer une partie d’une organisation
Lorsque on se trouve dans une démarche de transformation à l’échelle au sein d’une entreprise, il est fréquent que le domaine d’application de ce changement soit limité à une partie de l’entreprise et non à sa totalité (par exemple, la partie de l’organisation qui doit changer prend en charge la digitalisation de l’activité tandis que le reste de l’entreprise reste sur son cœur de métier qui n’est de type informatique).
Nous avons vu que la compatibilité entre différentes cultures d’organisation ne va pas de soi : vouloir introduire un mode agile dans une organisation de type dominant « Command and Control » provoquera des situations tendues liés au décalage culturel qui existe entre ces deux organisations.
L’organisation dominante souhaitera par exemple recevoir du reporting et des KPI de la part de l’organisation Agile avec laquelle elle se trouve en interface car cela correspond à son mode de fonctionnement. Cette demande n’a pas de sens pour une organisation agile et représente un travail inutile et coûteux en temps et en énergie. Elle sera donc incitée à ne pas fournir les éléments attendus, renforçant d’autant l’hostilité du reste l’organisation vis-à-vis de son mode de fonctionnement décalé. Ce genre de situation est décrite par le schéma ci-dessous.
Une solution pour protéger la partie de l’organisation qui souhaite poursuivre son changement d’organisation est de créer une bulle de protection grâce à des adaptateurs qui serviront à l’isoler de ce genre de frictions. L’organisation agile fournira à minima une partie de ce qui est demandé (en essayant d’en réduire l’impact négatif sur son activité).
Par exemple, elle négociera la fourniture d’un reporting et de KPI plus légers, nommera une personne en charge des aspect « diplomatiques » de cette interface. On peut, par analogie considérer ces adaptateurs comme une redevance à payer à l’organisation dominante permettant la création d’une bulle protectrice qui facilitera le changement local au sein de l’organisation dominante.
Pour aller plus loin
How To Be Successful with Agile in Any Culture : http://agilitrix.com/2018/09/how-to-be-successful-agile-any-culture-with-bubble/
How to Make Your Culture Work with Agile – Schneider Model :https://www.youtube.com/watch?v=wIbCcfxzc2A
Build Culture Adapters to Avoid Agile Failure : http://agilitrix.com/2013/05/culture-adapters/
Tactics, Strategy, & Culture – A Model for Thinking about Organizational Change : http://agilitrix.com/2012/11/tactics-strategy-culture/
How we do things around here in order to succeed : http://agilitrix.com/2010/08/how-we-do-things-around-here-in-order-to-succeed/
read more
Posted on Oct 11, 2018 in Blog
Cette approche permet d’obtenir une échelle plus grande pour évaluer un risque et facilite le classement des risques et leur perception par un auditoire hétérogène, possédant une expertise ou une expérience variée sur les différents domaines identifiés dans l’analyse des risques. Elle permet une comparaison plus aisée des différents risques.
Elle pourrait être utilisée par exemple pour analyser les risques commerciaux.
La gestion des risques projet se compose de six étapes :
- Initialisation (se déroule au commencement du projet),
- Mise à jour du portefeuille des risques,
- Evaluation des risques,
- Proposition de plan d’actions,
- Suivi du plan d’actions,
- Reporting au Comité de pilotage.
Les étapes 2, 3, 4 et 5 se déroulent en continu au fil de l’eau.
Initialisation du portefeuille des risques
Au début du projet, les risques associés doivent tout d’abord être recensés. Ces risques sont ainsi enregistrés dans un portefeuille des risques qui deviendra vite un outil important pour le chef de projet, tant pour piloter le projet que pour rendre des comptes au comité de pilotage du projet et ainsi favoriser les décisions qui s’imposent pour en réduire la probabilité d’apparition ou leur gravité dans le cas de survenance.
Mise à jour au fil de l’eau
Recenser les risques au début du projet ne suffit pas. Le chef de projet doit être vigilant et consacrer du temps à recenser les nouveaux risques et même imaginer les éventuels risques futurs possibles.
Chaque risque est évalué selon ses impacts et ceux-ci sont de trois ordres : impact sur les coûts du projet (dépassement des budgets initiaux), impact sur les délais du projet (retards dans la date de démarrage) et impact sur la qualité même de ce que le projet doit produire, que l’on appelle les “livrables“.
L’évaluation doit être réalisée sur ces trois natures d’impact en fonction de l’importance possible de leur impact unitaire et combiné. A chaque évaluation est associée une cotation en fonction de ses impacts potentiels.
Une fois estimée la gravité du risque sur les trois critères : coûts, délais et qualité, et une fois évaluée sa probabilité d’apparition et sa tendance, il est possible au chef de projet gestionnaire de coter le risque à l’aide d’une formule mathématique de la façon suivante :
Impacts (coûts / délais / qualité) x probabilité
Le résultat de la cotation mathématique permet de classer les risques entre eux, pour mettre en évidence le classement des risques. Le plus souvent, on classe les risques en quatre catégories : (- -), (-), (+) et (+ +).
Le plan d’actions pourrait comprendre :
- Des actions préventives (identifier et tenir à jour mensuellement la liste des experts pouvant intervenir sur le thème, négocier avec chacune de ces personnes un budget temps et une période d’intervention, tenir à jour hebdomadairement le “Planning des experts sollicités“ intégrant les contraintes de disponibilité des experts (autres projets, congés…) ;
- Des actions de régulation dans le cas de non disponibilité des experts (demander l’intervention du sponsor du projet, préparer un arbitrage à l’attention du comité de Direction qui priorise l’ensemble des projets de l’entreprise les uns par rapport aux autres).
Plan d’actions
Pour chaque action du plan, un responsable do it être naturellement désigné ainsi qu’une échéance. Régulièrement, l’état d’avancement du plan d’actions doit être réalisé par le chef de projet. Par ailleurs, ce dernier doit se tenir à la disposition des personnes concernées afin de leur apporter l’assistance méthodologique nécessaire. Cette assistance permettra aussi au chef de projet de capitaliser l’exercice réutilisable dans d’autres projets.
Le suivi des actions décidées afin de mettre sous contrôle le risque identifié pourra être le suivant :
- Mise à jour hebdomadaire du “Planning des experts sollicités“ ;
- Mise à jour mensuelle de la liste des experts pouvant intervenir sur le thème.
Reporting
Le chef de projet doit mettre à jour son portefeuille de risques. Ces informations peuvent être représentées sous la forme de graphiques. Ces graphiques peuvent, par exemple, mettre en évidence :
- Le stock de risques en portefeuille en les distinguant selon les quatre niveaux de gravité possibles,
- L’évolution de ces risques par rapport au comité de pilotage précédent,
- Les nouveaux risques rentrés en portefeuille, en les distinguant selon les quatre niveaux de gravité possibles.
Le chef de projet doit rendre compte au comité de pilotage des risques ainsi que de la mise en œuvre des actions de prévention.
read more
Posted on Fév 1, 2018 in Blog, Scrum
« Il n’y a pas de vent favorable pour celui qui ne sait pas où il va. » (Sénèque).
La vision produit est la réponse opérationnelle à la stratégie business de l’entreprise. Elle fait le pont entre cette stratégie et la roadmap du produit.
La vision produit se doit de répondre aux questions suivantes :
- Quel problème essayons-nous de résoudre ?
- Pour qui résolvons-nous ce problème ?
- Quelle solution apportons-nous à ce problème ?
- Comment allons-nous mesurer le succès de ce que nous faisons ?
Avoir une vision produit claire permet entre autres :
- D’accorder les parties prenantes (marketing, finance, équipes techniques). Elle contribuera à guider et fédérer les acteurs du projet.
- De garantir la motivation des équipes : sans objectif, sans vision partagée, l’équipe ne saura pas précisément où aller, dans quel but, ni comment y aller. Du retard peut être pris en début de projet, parce que l’équipe n’a pas connaissance de cette vision ; elle est alors hésitante, refusant de prendre le risque de se fourvoyer dans une mauvaise direction.
- D’anticiper les choix technologiques en fonction de cette vision.
La Stratégie produit et sa communication dans l’entreprise s’exprime souvent en termes de vision lorsque l’on parle d’innovation. La vision fixe le cap, elle donne du sens et décrit ce qu’on entrevoit pour le produit à court, moyen ou long terme.
« Fits in a shirt pocket, syncs seamlessly with PC, fast and easy to use, no more than $299″
A l’instar de la vision d’Hawkins pour le Palm Pilot en 1994, la vision produit est concise, souvent liée à un problème et pilotée en termes d’objectifs. Cependant, la vision produit n’aura de sens et ne sera fédératrice que si elle portée et partagée, permettant ainsi aux équipes de se projeter dans le futur.
La vision facilite les choix auxquels sont confrontées les équipes de développement dans leur recherche de solutions en leur fournissant un repère sur ce qu’ils peuvent envisager (ou pas) dans quelles directions ils peuvent s’autoriser à explorer des pistes sans craindre de voir leur choix remise en cause (et donc de perdre du temps).
read more
Posted on Fév 1, 2018 in Agilité, Blog, Scrum
La rétrospective est l’un des moments phare d’une démarche agile. C’est à ce moment que l’équipe se réunit et fait le bilan de la période écoulée. L’objectif en est simple, fêter les victoires et les points positifs et chercher ensemble les solutions à apporter sur les éléments empêchant l’équipe de tenir ses promesses et de travailler dans un environnement sain et bienveillant
Les 5 règles d’or de la rétrospective : avant de démarrer une rétrospective, quel que soit son format, des règles claires doivent être partagées et acceptées par l’ensemble des participants.
- Assurez-vous que tout le monde peut s’exprimer librement, il ne faut pas que l’équipe ait l’impression que ses paroles sortiront de la salle de réunion et qu’elles auront des conséquences. Au début d’une rétrospective, rappelez systématiquement que cette règle de confidentialité s’applique à la réunion.
- Ne défendez pas votre ordre du jour La rétrospective n’est pas le moment de parler de choix techniques ou technologiques.
- N’accusez personne et ne laisser personne le faire. Personne n’est coupable. La rétrospective est avant tout un moyen d’améliorer la performance de toute l’équipe.
- N’acceptez pas les déclarations vagues. Il est important que chacun décrive exactement son point de vue ou son problème. Ne pas tomber dans le piège des non-dits ou des allusions.
- Faites-en sorte que chacune des actions à entreprendre soit attribuée à un membre de l’équipe et qu’elle rentre dans le processus de développement du projet. Personne ne voudra s’attaquer à la mise en place d’actions non répertoriées et non estimées.
D’après Mariah FRIH dans son article « Donner du peps à vos rétrospectives », les 5 règles d’or d’une rétrospective. http://blog.thiga.fr/a-la-une/product-owner-donnez-du-peps-a-vos-retrospectives/
Ensuite, une rétrospective va toujours suivre 5 étapes clés :
- On lance la rétrospective et on met en place un environnement bienveillant et adapté,
- On recueille des informations (positives, négatives) issue des membres de l’équipe,
- On passe à l’analyse des informations récoltées,
- On décide des actions à mettre en œuvre pour améliorer le fonctionnement de l’équipe,
- On termine la rétrospective, avec un vote de satisfaction de l’équipe sur son déroulement (ROTI).
Important : ne jamais perdre de vue que l’objectif d’une rétrospective est de définir un plan d’action visant à améliorer le fonctionnement de l’équipe.
Le Speed boat
Méthode « Speed boat »
Source du support : XEBIA (article « la rétrospective : le format speed boat » par Olivier Marquet).
https://blog.xebia.fr/2015/03/20/la-retrospective-le-format-speed-boat/
Dans ce format de rétrospective, on trouve :
- Les objectifs à atteindre, représentés par l’île ;
- Les forces nous permettant d’atteindre les objectifs, représentées par le vent qui pousse le bateau ;
- Les freins et obstacles qui vont nous empêcher d’atteindre nôtre Ile, représentés par l’ancre ;
- Les risques pouvant potentiellement nous freiner dans l’atteinte de notre objectif, représentés par les récifs.
L’équipe est représentée par le bateau, avec l’image donnée à chaque membre que nous devons tous travailler ensemble pour que ce bateau puisse atteindre l’île, quel que soit notre rôle, nos responsabilités. Cela implique d’apprendre à se parler avec confiance et bienveillance.
Star Fish (Keep / Drop / Start)
Cette méthode permet de collecter les idées de l’équipe et permet à chaque membre de mieux comprendre l’intérêt des bonnes pratiques.
- Continuez à faire : quelque chose que l’équipe réussie bien et dont on reconnait la valeur
- Moins de : quelque chose de déjà fait ; on constate une certaine valeur mais on souhaite le réduire un peu
- Plus de : quelque chose de déjà fait et dont on pense qu’elle apportera encore plus de valeur si davantage utilisée.
- Arrêtez de faire : quelque chose qui n’apporte pas de valeur, ou encore pire, qui empêche de progresser.
- Commencer à faire : une nouvelle idée, ou quelque chose que vous avez vu marche et que l’on souhaiterait essayer.
Chaque membre va indiquer, sur un post-it, les pratiques, activités, comportements, qu’il souhaite garder ou arrêter ou les choses qu’il voudrait tester sur les prochaines itérations.
Chaque membre va prendre 5 minutes pour identifier au moins un sujet par thème. A l’issue de cette période, chacun va venir poser ses post-it, dans le thème correspondant (peu importe l’ordre), en expliquant ce qu’il a écrit. C’est un moment où chacun peut échanger librement sur les sujets abordés.
A l’issue de cette phase de présentation / discussion (15-30 min), l’équipe va identifier les sujets qu’elle accepte d’abandonner et ceux qui doivent être commencés (1-2 maxi). L’idée n’est pas d’accepter d’abandonner ou de commencer un sujet parce qu’il est inscrit sur un post-it. Cette décision doit faire l’objet d’un consensus de l’ensemble de l’équipe, avec une période de transition, qui va permettre de mesurer l’efficacité de l’ajout d’une nouvelle pratique ou de l’abandon d’une autre.
Il est recommandé de pratiquer cet exercice à un rythme régulier.
Conclusion
Il existe bien d’autres formats de rétrospective, chacun avec des objectifs différents. Changer fréquemment de format permet à l’équipe de rester constamment en éveil sur le fonctionnement de sa boucle d’amélioration continue et également de s’adapter aux événements et au contexte vécu par l’équipe.
read more
Posted on Fév 1, 2018 in Blog, Scrum
ROTI est l’acronyme pour Return On Time Investment. C’est un vote rapide à 4 doigts qui permet d’obtenir un feedback rapide sur le déroulement d’une réunion.
4 doigts = Excellent : très bonne réunion qui valait le temps qu’on y a passé,
3 doigts = Bon : j’ai gagné plus de temps que j’en ai passé mais sans plus,
2 doigts = Pas terrible : ça ne valait pas le temps que j’y ai consacré,
1 doigt = Pas satisfait : j’ai perdu mon temps,
Il n’y a pas de niveaux « neutre » afin d’obliger les participants à faire un choix véritable. Une fois le vote effectué, on interroge seulement les participants qui ont voté 1 ou 2 pour comprendre les raisons de leur vote.
read more
Posted on Fév 1, 2018 in Blog, Scrum
Un Burndown Chart est un graphique simple qui indique le degré d’avancement dans la réalisation des tâches. En d’autres termes, c’est une représentation graphique de l’évolution de la quantité de travail résiduelle en fonction du temps, sur une période donnée.
Le Burndown chart est utile car il offre une vision rapide de l’état d’avancement des travaux. Il définit ainsi la performance collective de l’équipe. Il est actualisé tous les jours lors du Daily meeting. Et, il est accessible à toutes les parties mobilisées sur le projet.
En début du Sprint, il est nécessaire d’initialiser le Burndown chart en positionnant l’échelle du temps en abscisse et, le nombre de tâches en ordonnées
Burndown chart (1/3)
Il faut positionner le premier point sur le nombre total des tâches. Ce point sera le point de départ pour la droite d’évolution idéale, ainsi que de la courbe réelle.
Ensuite, il faut tracer la droite qui part du premier point et qui rejoint le dernier point. Ce dernier a les coordonnées suivantes : abscisse : le dernier jour du temps imparti. Ordonnée : 0
Burndown chart (2/3)
Un bilan des activités se fera lors du Daily meeting. On constate alors par ce moyen, le nombre de tâches à achever à la charge de l’équipe. Puis, une fois que le total des tâches restantes à exécuter est calculé, il faut positionner un nouveau point sur le graphique, selon les coordonnées suivantes :
- Abscisse : date du jour
- Ordonnées : somme des tâches restantes
Enfin, il suffit de tracer la ligne entre le point précédent et le nouveau point. Et ainsi de suite.
Burndown chart (3/3)
On constate en général, dans la première partie du graphique, que la descente est assez faible. Cela est lié à la découverte de nouvelles tâches en démarrage de Sprint, ou à certaines tâches commencées qui se révèlent plus compliquées que prévu.
Le Burndown chart est un indicateur visuel de la quantité de travail qui reste théoriquement à faire pour terminer le Sprint.
Il pousse à évaluer quotidiennement le travail en instance d’achèvement.
read more