samiadrici-product-management-story-points-1

Story Points

Story Points 800 400 Samia Drici

Home >> Product Management >> Story Points

Les story points sont l’unité de mesure utilisée dans les projets Agile, pour estimer l’effort nécessaire à la réalisation d’une story. Il s’agit d’une valeur qui représente la charge de travail à effectuer, sa complexité et la part d’incertitude.

Une estimation relative

Ce qu’il est important de comprendre, c’est que les story points ne sont pas une estimation en temps, ou en nombre de jours / homme, mais une évaluation de la complexité de la tâche à réaliser, qui tient compte également de l’incertitude ou du risque. Les story points permettent de comparer l’effort nécessaire à la réalisation des différentes tâches, de manière relative.

L’échelle choisie est propre à chaque équipe et le nombre de points associé à une story n’a pas de signification absolue. Traditionnellement, on utilise la suite de Fibonacci pour chiffrer ces points d’efforts : 1, 2, 3, 5, 8… Dans la suite de Fibonacci, chaque valeur est la somme des deux valeurs précédentes. Ainsi, plus on attribue une valeur importante à une story, plus sa valeur est distincte des valeurs qui la précèdent et la suivent.

Comment réalise-t-on ces estimations ?

C’est la dev team qui évalue le nombre de story points associé à chaque US, ou tâche selon le découpage réalisé. Cette évaluation peut être faite au fil de l’eau, lors des affinages, ou bien lors de cérémonies dédiées appelée Poker planning.

Concrètement, les membres de la dev team attribuent une valeur à l’US qui a été présentée au préalable par le Product Owner (ou le porteur du sujet). Un premier vote simultané invite chacun à s’exprimer sans être influencé par l’équipe. Des discussions permettent ensuite à l’équipe d’argumenter leur opinion, de modifier leur estimation et de définir ensemble la valeur qui leur semble la plus juste.

A quoi servent les story points ?

L’estimation en story points a de nombreuses utilités pour l’équipe Agile.

S’assurer d’avoir toutes les informations avant de démarrer

L’estimation se fait après avoir affiné le sujet. Il a été présenté au préalable à l’équipe qui dispose, théoriquement, de toutes les informations nécessaires pour l’estimer puis le traiter. Mais il arrive que l’exercice d’estimation soulève de nouvelles questions. En essayant d’évaluer les points d’effort au plus juste, l’équipe s’aperçoit qu’il lui manque des éléments. C’est l’occasion de résoudre ces points afin de n’embarquer dans un sprint que des tickets totalement prêts.

Tenir compte des aléas

A la différence d’une estimation en temps, l’estimation en story points prend en compte l’incertitude et les risques. Elle laisse ainsi la place à l’adaptation en continu, fondamentale en Agilité. Les story points ne sont pas un engagement en nombre de jours et ne permettent donc pas l’interprétation d’une date de livraison qui pourrait être amenée à changer.

Etablir les priorités

L’une des responsabilités du Product Owner est de maximiser la valeur Produit tout au long du cycle de vie de ce dernier. Ainsi, pour définir l’ordre de priorité des stories à réaliser ou des fonctionnalités à livrer, il a besoin d’estimer la valeur (utilisateur et business) de chaque story et de la rapprocher de l’effort nécessaire à sa réalisation. Ces informations sont essentielles pour arbitrer sur l’ordre des sujets à traiter dans le but de livrer de la valeur le plus efficacement.

Préparer le contenu des sprints au plus juste

Après plusieurs exercices d’estimation et quelques sprints, on est capable d’observer la vélocité de l’équipe. Il s’agit du nombre de points d’efforts que l’équipe est capable de traiter durant un sprint. Cette information est très précieuse pour l’équipe. Elle sert notamment à la planification des sprints à venir. Elle permet au product owner de choisir les sujets à réaliser durant la prochaine itération en tenant compte des priorités mais également de la capacité à faire de l’équipe.

Suivre l’évolution de la vélocité de l’équipe

Une fois qu’elle est correctement estimée, la vélocité est un bon indicateur de la santé de l’équipe. Si l’on s’aperçoit qu’elle augmente au cours des sprints alors que la qualité des livrables est constante, cela signifie que l’équipe fonctionne de mieux en mieux ensemble et gagne en productivité. Si elle diminue, elle peut être le signe d’un problème interne ou externe à l’équipe. Il est alors important d’identifier la cause, au cours d’une rétrospective d’équipe par exemple, pour savoir si un élément interne ou externe à l’équipe pose problème et proposer des solutions le cas échéant. Attention toutefois à ne pas tirer de conclusions trop hâtive : une baisse de vélocité peut tout simplement être due à des congés d’un ou plusieurs membres de l’équipe ou encore à la montée en compétences d’une nouvelle recrue. Elle n’est pas toujours le signe d’un problème et ne doit jamais être considérée sans contexte.

Quelques astuces

Utiliser des tailles de tee-shirts pour démarrer

Estimer en story points peut paraître très déroutant au démarrage. Les équipes habituées à estimer en nombre de jours sont souvent tentées d’établir une correspondance mathématique entre le temps nécessaire et les story points. Afin, d’éviter cet écueil, on peut démarrer en estimant les stories par des tailles de tee-shirt : XS, S, M, L, XL… Cela permet de se détacher de l’estimation en nombre de jours. Mais cette solution ne doit être que provisoire car elle limite les apports de l’estimation, ne permettant pas par exemple de calculer une vélocité.

Garder un référentiel d’estimations sous les yeux

Parce que l’échelle d’estimations est une échelle relative, elle n’a de sens lorsque l’on compare, entre elles, les estimations de différentes stories. Pour garder une cohérence et permettre à l’équipe de s’imprégner de cette échelle, on recommande de garder sous les yeux quelques exemples d’estimations passées. Ainsi, la question que l’on se pose n’est plus “La story C vaut-elle plutôt un 3 ou 5 ?” mais “L’effort nécessaire pour réaliser la story C est-il plus proche de celui fournit pour la story A ou la story B ?” ce qui rend les estimations beaucoup plus concrètes.

Découper les US qui sont difficiles à estimer

Souvent, lorsqu’un sujet est difficile à estimer pour l’équipe, c’est qu’il contient trop de complexité ou d’incertitude. C’est le signe qu’il soit être découper en plus petites tâches unitaires, permettant d’avoir une estimation plus fine et plus précise.