Temps de lecture : < 5 minutes
Tout d’abord, excellente année à toutes et à tous 🎉 !
Aujourd’hui, je vais vous parler du budget et de la visibilité dans un contexte #NoEstimates :)
Let’s go 💪 !
Dans le post précédent, nous avions vu comment prioriser sans estimations.
La priorisation n’est qu’une étape dans le développement d’un projet. Il faut aussi savoir rassurer, en donnant de la visibilité, mais aussi en établissant un budget !
L’idée générale du #NoEstimates est de se baser sur ce que l’on sait, plutôt que sur ce que l’on essaye de prévoir.
Rassurer le client
Rassurer le client, c’est lui faire prendre conscience que le projet avance, et qu’il avance dans la bonne direction. La notion de “bonne direction” est bien sûr subjective, mais elle peut se déterminer grâce à des indicateurs bien réels comme :
👉 la fréquence de livraison
👉 la satisfaction des utilisateurs
La fréquence de livraison élevée rassure un client pour une raison évidente : il se dit qu’il peut laisser plus de place à l’expérimentation puisque au premier problème détecté, l’équipe sera capable de livrer une correction très rapidement.
Pour ce faire, il est donc primordial d’avoir une vraie “obsession” de livrer. Et pour pouvoir livrer sans problème, le projet doit nécessairement adopter les meilleures pratiques de continous delivery comme les tests automatisés, l’infrastructure as code, le trunk-based development, etc.
L’importance de la démo
À intervalle régulier, il est important de faire une démo à votre client. Et la condition sine qua none a une confiance renforcée, c’est l’honnêteté.
Tenter de prévoir le futur en disant que telle ou telle fonctionnalité sera en ligne d’ici X jours à coups sûr, alors que l’on sait pertinemment que l’on n’en sait rien du tout, ce n’est pas de l’honnêteté.
À la place, il convient d’articuler la démo sur la communication “passé, présent, futur”. Ainsi, lors d’une réunion de 20 minutes, on parlera pendant 19 minutes de ce que l’on a fait pendant ces dernières semaines, 45 secondes sur ce que l’on fait actuellement, et seulement 15 secondes sur le futur !
Être honnête est donc primordial, car à essayer de mentir en prétextant pouvoir prévoir à coup sûr une date de livraison future, on génère de la défiance. Et la défiance mène aux estimations et les estimations au planning…
Réaliser un budget sans estimer
La première question que l’on peut se poser avec le #NoEstimates, c’est de savoir comment budgétiser un projet !
En effet, dans un budget traditionnel on va vendre des fonctionnalités pour un certain montant de jours, convertis ensuite en jour / homme par exemple, ce qui permet d’établir un budget.
Que faire alors ? Et si l’on proposait au client d’être payé seulement s’il est content ? Trop risqué ? Pas plus que de faire de l’avant-vente finalement… Sans estimations, si l’on arrive à montrer rapidement quelque chose qui fonctionne, même un tout petit périmètre fonctionnel, et que les concurrents sont encore dans les slides de préparation de projet ou autre, c’est un énorme avantage !
Évidemment, comme déjà dit plus haut, il faut pour ça adopter les bonnes pratiques de continuous delivery.
Le chiffrage thématique
Pour établir un budget sans tomber dans le piège des estimations et du planning, il est primordial de faire un chiffrage thématique, plus ou moins grosse maille, mais surtout pas extrêmement détaillé.
On pourrait par exemple prendre la thématique de “sécurisation de l’application”, sans détails, ou encore un “système de fidélisation”, là encore sans donner plus de détails. Plus le chiffrage est volumineux, et plus on pourra être agile. Un chiffrage volumineux nous donne en effet un budget pour travailler sur toute cette thématique, et donc développer au rythme de nos apprentissages grâce aux livraisons fréquentes et aux retours utilisateurs.
Bien que le chiffrage soit thématique et grosse maille, il est tout de même extrêmement important d’annoncer un prix fixe au client ! C’est ce qui va le rassurer :
“Ok, je sais que je vais dépenser XXXXX€ et que cet argent sera dépensé au mieux pour se rapprocher de mes objectifs sur cette fonctionnalité, et potentiellement changer mon fusil d’épaule si je m’aperçois qu’une meilleure direction est possible, tout en restant dans mon budget initial” - Votre client très content
Pour que la communication avec le client se passe au mieux, il est très important :
d’écouter ses préoccupations, en reprenant ses mots
de mettre en avant la souplesse offerte
de mesurer, valoriser l’activité de maintenance
de valoriser dès que possible le strict respect des budgets
Fidéliser le client
Pour fidéliser le client, on peut par exemple définir un abonnement. Le bon budget pour un client, c’est tout simplement le maximum qu’il est prêt à payer, car le jour où le budget s’arrête, le logiciel s’arrête !
Ce budget idéal, c’est de ce fait le maximum que peut payer le client de manière récurrente.
Une fois le budget mensuel défini, tout ce qui ne peut pas rentrer dans le mois en cours sera fait le mois suivant. On ne dit jamais non au client, on lui dit “plus tard”.
Dans la réalité opérationnelle, comme il n’y a pas d’estimations pour générer des “factures”, il faut plus de mesure. Chaque développeur remplira donc par exemple une feuille de temps, qui servira à déterminer la facturation. On ne facture ainsi pas du prédictif, mais de la mesure.
Voilà qui clôt le sujet #NoEstimates :) Il y a encore énormément de choses à dire, notamment sur la partie contractuelle. Je vous invite vraiment à assister à la formation “Par delà les estimations” de Frédéric Leguédois. Vous en aurez vraiment pour votre argent :)
Le prochain post sera très certainement plus orienté technique, donc stay tuned :)
Happy Coding !
Et pour tous ceux qui souhaitent approfondir ces notions, la prochaine formation aura lieu le 11 mars : https://www.leguedois.fr/par-dela-les-estimations/