Zorro est revenu

La valeur et le coût, c'est pas pareil

Dans son deuxième commentaire de mon billet sur la variation de périmètre, Zorro revient sur les courbes et s’y perd entre les notions de valeur, d’effort et de coût.

J’essaie d’éclaircir.

Le burndown chart montre l’effort qui reste à faire. Il est obtenu en collectant le nombre de points des éléments qui restent à faire dans le backlog de produit. Exemple :

  • début du sprint 1 : 100 points à faire
  • fin du sprint 1: 82
  • fin du sprint 2 : 64
  • fin du sprint 3 : 56
  • fin du sprint 4: 30

Il ne permet pas de connaitre la part due au travail accompli et celle venant du changement de périmètre dans le backlog. Pour visualiser ces informations, il est nécessaire d’avoir 2 séries, que montrera le diagramme correspondant. Un diagramme possible est le burnup à 2 courbes. La première série montre le nombre de points des éléments dans le backlog de produit, ceux qui sont faits plus ceux qui restent à faire. La deuxième montre l’effort fait, obtenu par cumul des vélocités.

  • début du sprint 1 : 100 points dans le backlog de produit. Les 2 premières valeurs du burnup sont 100 et 0
  • fin du sprint 1: 82, vélocité 16. Les 2 valeurs sont 98 (100-82+16) et 16
  • fin du sprint 2 : 64, vélocité 19. Les 2 valeurs sont 99 (98 - - 19) et 35 (16+19)
  • fin du sprint 3 : 56 vélocité 18. Les 2 valeurs sont 109 et 53
  • fin du sprint 4: 30, vélocité 20. Les 2 valeurs sont 106 et 73

La première série représente l’évolution du périmètre à chaque sprint : 100, 98, 99, 109, 106

La deuxième série montre le cumul de vélocité : 0, 16, 35, 53, 73

Le reste à faire est la surface entre les 2 courbes. Le projet devrait se terminer au croisement des 2 courbes.

Le burndown et le burnup dont je viens de parler utilisent tous les 2 des points. Les points représentent une estimation de la taille d’un élément, donc du travail nécessaire pour le finir. Ils sont généralement obtenus par des séances de planning poker.

Ces 2 rapports sont donc bâtis sur une estimation du travail à faire. Les points sont utilisés comme unité arbitraire pour éviter l’emploi explicite des euros.

Pour répondre à Zorro, il n’y est pas question de valeur et pourtant la confusion est parfois faite. La valeur d’un élément du backlog est ce qu’elle rapporte avec le point de vue des utilisateurs. Estimer la valeur est un problème très difficile, à tel point que je n’ai pas encore rencontré de projets où tous les éléments du backlog de produit avaient une valeur numérique associée.

On peut simplifier la difficulté en utilisant des valeurs relatives. C’est un peu ce qui est fait implicitement quand on ordonne les éléments du backlog de produit. Cette simplification est suffisante pour obtenir un planning de release crédible dans les cas simples.