La réunion de planification du sprint

Pour bien démarrer un sprint, une réunion pour définir son périmètre fonctionnel, faire sa planification et aussi un peu de conception.

Dans la liste des réunions Scrum, je prends la première d'un sprint[1], la réunion de planification. Le but de la réunion est de planifier le sprint qui commence, après avoir fixé son périmètre.

Participants

Toute l'équipe Scrum participe à la réunion. L'équipe considérée est l'équipe étendue avec le ScrumMaster et le Directeur de produit dont la présence est indispensable au moins pour la première partie de la réunion. Tous les intervenants impliqués directement dans les résultats du produit devraient également participer à la réunion, à titre d'observateurs.

Produit en entrée

Le backlog de produit

Etapes

  • Définir le but du sprint

Au début du projet, lors des premiers sprints de la première release d'un produit, le but est bien souvent de montrer la faisabilité de l'architecture envisagée. Ensuite, une fois que l'architecture est stabilisée, le but d'un sprint est proposé par le Directeur Produit et discuté avec l'équipe. Il porte le plus souvent sur un thème fonctionnel.

  • Définition du périmètre du sprint

Il s'agit de définir le périmètre de ce sprint, c'est à dire les éléments du backlog de produit qui vont être réalisés. Cela est fait en sélectionnant l'élément en haut de la liste ordonnée constituant le backlog de produit puis le suivant jusqu'à ce que le total corresponde à la vélocité de l'équipe. Si un Planning de la release a été effectué, cette étape consiste essentiellement à valider collectivement le sous-ensemble du backlog prévu pour ce sprint.

  • Identification les tâches à partir des éléments sélectionnés

La deuxième partie de la réunion a pour objectif de définir comment l’équipe va s’arranger pour réaliser le résultat attendu du sprint. Pour cela, chaque élément de backlog de produit sélectionné est décomposé en tâches. Cela permet à toute l’équipe de discuter et d’éclaircir des points de solution par rapport à cet item, en demandant si nécessaire au propriétaire de produit des précisions sur le comportement du produit. Normalement l'ensemble des activités du cycle de vie sont déroulées lors d'un sprint et doivent être identifiées lors de cette réunion :

  1. Les exigences sélectionnées sont spécifiées en détail (sous forme de spécification de tests d'acceptation de préférence),
  2. L'architecture est remaniée si nécessaire,
  3. Les classes (ou composants logiciels) sont conçues, implémentées et testées (tests unitaires),
  4. Les différents composants sont intégrés et testés (tests d'intégration),
  5. Le produit est packagé,
  6. Les tests d'acceptation sont passés.

Toutes les activités liées au développement d'un élément du backlog sélectionné doivent être prises en compte, y compris les réunions de travail (sauf les réunions quotidiennes Scrum), les lectures de documents ou de code. Les tâches de gestion de projet ne sont pas considérées. L'importance donnée à ces activités dépend de la place du sprint dans la release. Le travail prévu dans un sprint précédent mais qui n'a pu être réalisé à cause de la réduction des objectifs devient prioritaire pour le sprint suivant.

  • Estimation des tâches

Les tâches sont estimées en heures. Il est conseillé d'avoir des tâches suffisamment fines pour qu'une estimation reste inférieure à 16 heures. L'estimation est faite collectivement, par l'équipe. Au cours de la discussion pour arriver à une estimation, les aspects techniques sont abordés.

  • Attribution des tâches

Une fois que les activités du sprint ont été définies, les membres de l'équipe vont se les affecter. Les activités peuvent être réalisées par une ou plusieurs personnes. Il est préférable de ne faire cela que pour que chacun ait du travail pour les premiers jours du sprint et de différer l'affectation des autres tâches, qui seront prises pendant le sprint en fonction des disponibilités des membres de l'équipe.

  • Obtenir l'engagement de l'équipe

Il est souhaitable que l'équipe s'engage collectivement sur le backlog du sprint, c'est à dire sur les éléments du backlog qu'elle estime pouvoir réaliser dans le sprint et sur le plan contenant la liste des tâches.

Produit en sortie

Un autre backlog, le backlog de sprint ou plan d'itération sous une forme facilement visible ou accessible

Considérations importantes

La réunion de planification de sprint est un travail réalisé en groupe. Elle est limitée dans le temps. Pour un sprint d'un mois, la réunion est limitée à 4 heures, avec une durée moyenne de 2 heures. Ces chiffres sont à ajuster en fonction de la durée du sprint : limiter à n heures, n étant le nombre de semaines dans le sprint.

Erreurs à éviter

Sur l'état du backlog de produit au début de la réunion :

  • Le backlog de produit n'est pas ordonné par priorité (pas de planning de release)
  • Il ne contient pas tout ce qu'il y a à faire, qui est découvert en réunion
  • Les estimations ne sont pas faites

La tenue d'une revue de backlog quelques jours avant la fin du sprint précédent permet d'éviter ces erreurs.

Pendant la réunion :

  • Le directeur de produit ne sait pas répondre aux questions posées
  • L'équipe prend à faire trop d'éléments du backlog
  • Les éléments ne sont décomposés assez finement en tâches
  • La réunion n'aborde pas les aspects conception
  • L'équipe ne s'engage pas réellement sur le contenu du sprint

A la fin de la réunion

  • Chaque personne de l'équipe ne sait pas clairement ce qu'elle va faire en sortant de la réunion

Notes

[1] pour les personnes qui ne sont pas familières avec le vocabulaire de Scrum, faites un tour par le glossaire