Deux personnes en face d'une vitre pleine de post-its

Si tu évolues dans une organisation Agile et que ton équipe applique la méthode SCRUM, tu sais qu'il est parfois difficile d'estimer les « Story Points » des tickets que tu vas embarquer dans le prochain sprint.

Moi-même, j'ai souvent eu du mal à prévoir le bon nombre de points lors des phases de Poker Planning.

Mais depuis, j'ai évolué (fort heureusement 😅) et j'applique aujourd'hui une méthode assez simple. Une méhode que je vais partager avec toi quelques lignes plus bas. Et même si elle ne garantit pas des estimations « 100% safe », je dois dire que mes pronostics s'avèrent très souvent positifs et que les projets sortent quasiment toujours dans les temps.

Voici donc comment je procède 👇

Exit les tâches d'une semaine ou plus.

La tâche que je dois réaliser prendra plus de 4 jours ? Alors Next !

Impossible pour moi de m'engager sur un ticket aussi gros.

Alors soit je le dé-priorise, soit je le découpe en plusieurs petits tickets !

Calcul de la complexité

Partant de ce principe, chacun de mes tickets sera donc traité théoriquement entre quelques heures et 4 jours maximum. Et de ce fait, je ne vais pas en estimer leur temps.

Non.

Car ce qui va changer le temps de réalisation de chacun de ces tickets, c'est précisément leur complexité.

Une complexité que je divise en 5 points essentiels :

  1. L'analyse
  2. La conception
  3. L'exécution
  4. Les tests
  5. La communication

Estimation de la complexité

Pour estimer la complexité globale d'un ticket, je vais donc prendre chacun de ces concepts et je vais leur donner une note sur 10 selon mon intuition.

Cette notation hyper intuitive (et hyper visuelle) peut être comparée l'échelle de la douleur ou celles utilisées dans les tests de personnalité. Je trouve qu'avec ce système de notation, on arrive à plutôt bien se situer.

Et puis, si on se focalise sur une seule branche à la fois, cela rend le travail d'estimation et de visualisation encore plus facile.

Ayant séparé la complexité en 5 éléments, et que chacun peut être noté de 0 à 10, si j'additionne le tout j'obtiens une note totale sur 50.

La normalisation

Cette notation sur 50 points, je la normalise sur une notation à 21 (par exemple, le total de 25/50, deviendra 10.5/21).

Donc même si je change d'échelle, les notes conserveront le même poids et tu vas comprendre tout de suite pourquoi j'ai choisi de me baser sur 21.

La Fibonaccisation

Ensuite, je me dote de la suite de Fibonacci en m'arrêtant au nombre 21.

La suite Fibonacci est une séquence mathématique dans laquelle chaque nombre est la somme des deux précédents.

Donc concrètement, je dispose de ceci : 0, 1, 2, 3, 5, 8, 13 et 21.

Ces valeurs seront utilisées pour estimer mes tickets.

0 sera associé à un ticket qui n'aura aucune complexité et qui ne demandera aucun effort (je me dis d'ailleurs que je ne vois pas vraiment d'intérêt de caler un ticket à 0 points dans un sprint).

Quand à 21 : ce nombre représentera un ticket trop complexes pour être réalisé en 4 jours max (et donc, comme dit plus haut, ce genre de ticket sera à dispatcher en plusieurs tickets plus petits).

L'estimation finale

Pour l'estimation finale, je vais donc choisir la valeur issue de la suite Fibonacci, la plus proche du total que j'avais ramené sur 21 points.

En fait, cette notation issue de la suite Fibonacci permet d'éviter les débats excessifs et de perdre du temps sur des détails mineurs.

Passons à la pratique

Pour ça, je t'ai confectionné un petit calculateur très simple qui reproduit toutes les règles que je t'ai décrites ci-dessus.

Il te suffit de noter chaque type de complexité sur 10 et le calculateur t'estimera le nombre de Story Points que tu pourras attribuer à ton ticket de sprint.

A toi de jouer !

Total Story Points : 0

Je serai curieux de savoir si cela marche aussi pour toi et si je peux y faire des ajustements pour le rendre encore plus performant 😛

Alors ? Qu'en penses-tu ?

Cet article a été écrit le 17 juin 2024. Il est classé dans la catégorie méthodes agiles.

2h de conseil gratuit et sans engagement