Dans un article récent, j’essayais d’exprimer mon point de vue sur les raisons d’estimer nos projets en points (comprenez de manière relative). Et je me suis rendu compte que l’explication de ce concept n’était pas si simple.
Lors d’une séance de coaching, j’ai d’ailleurs découvert qu’une des difficultés à comprendre le concept était l’usage même de ces estimations. En effet, son usage à posteriori, c’est à dire la projection dans le futur de mesures constatées, n’est pas vraiment dans nos habitudes. Une image m’est alors venue en tête, et je la partage donc ici. Qui sait, peut-être pourra-t-elle servir à quelqu’un.
Premièrement un petit rappel, comme dit dans l’article sur les raisons d’estimer nos projets en points, l’estimation relative est exclusivement faite pour répondre à des questions de prédictibilité concernant le délai. Par exemple :
- Qu’est-ce qui peut être livré à une date donnée ?
- Quand pourrons-nous livrer ces fonctionnalités / la première version ?
- Sommes-nous dans le timing / en retard / en avance ?
- Quel est l’impact d’un changement de périmètre sur la date de livraison ?
- etc.
Prenons donc un cas d’école : Le remplissage d’une piscine (oui la baignoire traditionnelle, c’est trop petit). Imaginons que nous avons trois robinets différents qui se déversent dans notre piscine. Les questions que nous pourrions nous poser sur les délais pourraient être les suivantes :
- Combien de litres d’eau dans la piscine aurons-nous au bout d’une heure ?
- Quand aurons-nous 1 000 litres d’eau dans la piscine ?
- Est-on dans le bon timing pour avoir la piscine remplie dans 24 heures ?
- etc.
Du coup, comparons deux approches afin de donner de la prédictibilité à ces événements :
- L’approche par le chiffrage traditionnel
- L’approche basée sur la performance mesurée
Prédictibilité par la méthode chiffrée traditionnelle

Pour répondre à de telles questions, les aficionados des fichiers d’abaques essaieront de prédire le débit des robinets. Ils commenceront certainement par mesurer le diamètre du tuyau d’arrivée d’eau. Puis certainement le diamètre interne du conduit de chaque robinet. Ensuite, ils essaieront probablement d’obtenir des informations sur la pression à l’entrée des logements en organisant une réunion avec la mairie. Puis ils chercheront à prendre un rendez-vous avec le constructeur du logement le diamètre de tous les tuyaux entre le compteur et le robinet.
Bref, après 4 jours de travail et 3 semaines de délai (oui parce que la mairie et le constructeur n’étaient pas disponibles rapidement), les chiffreurs vont alors faire un joli fichier Excel présentant leurs calculs. Ils en concluront alors le débit et pourront ainsi répondre aux questions si dessus.
C’est très chouette tout cela. Les chiffres sont sûrs. Ils parlent bien à tout le monde, et étant issus d’un calcul scrupuleux ils ne peuvent être faux. Nous voilà donc partis dans l’implémentation et malheureusement, tout ne se passe pas exactement comme prévu. Le chiffreur n’avait en effet pas pris en compte que la pression pouvait diminuer en utilisant un autre robinet dans la maison, qu’il y a du calcaire dans les robinets, qu’il y en a aussi dans l’ensemble de la tuyauterie et dans le compteur d’eau lui même, ce qui engendre une perte de pression. Enfin, ils ont carrément oublié que deux robinets sont équipés de mousseur, diminuant ainsi légèrement leur débit. Bref, on se retrouve avec un écart, mais « c’est la faute des robinets » et surtout, maintenant que l’estimation est faite, il va falloir se débrouiller avec.
Prédictibilité par la performance mesurée

Les personnes utilisant cette méthode vont avoir une autre approche. Ils vont ouvrir les 3 robinets, mesurer ce qu’il y a dans la piscine au bout d’une minute (par exemple). Ils sauront alors quel est le débit global des trois robinets et seront alors capable de répondre aux questions avec de vraies mesures. Et comme cette mesure sera reprise à intervalle régulier, toute modification de débit sera prise en compte au plus vite tout au long du remplissage.
C’est quoi le rapport avec notre métier ?

Quand on doit donner de la visibilité sur un projet, estimer en jour n’est pas efficace. Oui oui, je vous l’affirme. Cela sous-entendrait de connaitre parfaitement les personnes qui vont travailler sur le projet, de prendre en compte chacune de leurs compétences spécifiques, et donc d’avoir une vision sur qui fera quoi sur les prochains mois. Pire encore, cela voudrait dire qu’on est capable de prédire les éventuels impondérables comme des problèmes de plateforme, d’environnement de développement, de retours clients urgents à prendre en priorité, etc. Bref, à jouer à madame Irma en voulant prédire l’imprévisible.
L’estimation relative permet d’avoir une vision sur l’effort(*) qu’il va falloir produire pour réaliser un projet. L’idée est ensuite de lancer les développements et de mesurer ce que l’équipe est capable de produire dans le contexte dans lequel elle évolue. C’est à dire en prenant en compte la vraie vie : les différentes compétences des équipiers, les éventuels problèmes de plateforme, d’environnement de développement, de correctifs clients urgents à livrer, etc. De la même manière que nous allons mesurer ce que les trois robinets vont faire couler comme eau en une minute pour extrapoler sur une plus longue période, on va mesurer le nombre de points d’effort que l’équipe est capable de produire sur un temps fini (sprint pour Scrum, cadence pour Kanban, etc.). C’est ce que nous appellerons la vélocité. Il nous restera donc à extrapoler pour estimer rapidement quand l’équipe sera capable de produire l’ensemble des efforts et livrer la liste des fonctionnalités demandées. Bien évidemment, plus l’équipe a réalisé de sprints ou de cadences et plus la vélocité sera juste. Un seul sprint n’est pas représentatif, mais si on fait la moyenne des 8 derniers sprints ou des 10 dernières semaines par exemple, cela commence à être viable.
L’estimation dans le futur, c’est de la voyance. La performance constatée est réelle car elle est mesurée. C’est là toute la différence.
Et vous, comment donnez-vous de la prédictibilité à vos projets ?
* : Pour rappel, on peut voir l’effort comme un écart (une distance) qui nous sépare du résultat souhaité. Il est estimé sur un ensemble de petites fonctionnalités de manière relative, c’est à dire les unes par rapport aux autres. Ainsi, 1 point d’effort sera calibré sur une demande simple, et représentera donc la même chose pour un débutant que pour un expert. Au même titre que 1 km représentera la même chose pour moi et pour Usain Bolt, même si on ne mettra pas le même temps à le parcourir (quoi que, on ne sait pas, on n’a pas essayé). L’important, c’est que 2 points demanderont deux fois plus d’efforts que 1 point. Au même titre que 2 km est deux fois plus long que 1 km (en distance et non en temps) pour Usain Bolt et pour moi.