Dans le déroulement d’un projet en mode de gestion agile scrum, la réunion de rétrospective organisée à l’issue de chaque itération est particulièrement importante. C’est un moment privilégié durant lequel chacun peut s’exprimer et expliquer selon lui ce qui s’est bien passé et ce qui s’est moins bien passé. Grâce à ces observations, il va être possible de prendre des décisions afin de renforcer ce qui fonctionne et d’améliorer les autres processus. Il y a différentes façon d’organiser cette réunion d’amélioration continue, et l’étoile de mer en est une.

Une approche légèrement différente de la rétrospective agile

La rétrospective agile de l’étoile de mer va proposer une approche légèrement différente. Généralement, lors d’une réunion de rétrospective agile, on se pose trois questions :

  • Qu’est-ce qui a bien fonctionné ?
  • Qu’est-ce qui a moins bien fonctionné ?
  • Qu’est-ce qui peut être amélioré ?

La première question permet d’identifier les processus qu’il faudra renforcer lors du prochain sprint afin de les améliorer encore et d’en tirer le meilleur profit.

La deuxième question permet de déterminer les processus qui finalement n’apportent pas grand-chose au projet puisqu’ils ne fonctionnent pas et qui pourront être abandonnés dans les prochains sprints.

La troisième question permet de savoir quels processus nécessitent d’être améliorés afin d’avoir un apport réellement positif pour le projet, et de décider ce qu’il faut faire pour cela.

La rétrospective de l’étoile de mer agile va s’organiser autour d’axes différents.

Une étoile de mer à 5 branches

Le diagramme en étoile de mer utilisé lors de la rétrospective agile est divisé en cinq branches : « continuer à… », « moins de… », « plus de… », « commencer à… » et « arrêter de… ». A première vue, c’est déjà moins restrictif que les trois questions classiques posées lors de la réunion de rétrospective. Il est généralement dessiné sur un tableau blanc (à moins qu’un outil numérique ne soit utilisé), de façon à pouvoir ensuite y coller des post-it de couleurs différentes (souvent des bleus et des jaunes) pour noter les idées des participants.

Chaque membre de l’équipe a la possibilité de s’exprimer en plaçant un ou plusieurs billets dans chacune des branches de l’étoile de mer. Les idées exprimées utiliseront une couleur de post-it (bleue par exemple), et les actions à mettre en place lors du prochain sprint utiliseront une autre couleur (jaune par exemple).

Explorons maintenant les cinq branches de l’étoile de mer dans le détail.

 

Continuer à…

Il s’agit de toutes les choses, processus et actions que les membres de l’équipe projet ont aimés lors du dernier sprint… mais pas uniquement. Il est important de réfléchir également à tout ce qui a pu les aider à effectuer correctement leur travail, ce qui leur a facilité la vie, et qui aurait pu réellement manquer si ces processus, techniques, technologies ou personnes n’avaient pas été là.

Des exemples typiques pouvant se trouver dans cette branche sont « écrire et exécuter des tests unitaires et des tests de performances de façon systématique ». L’apport de cette méthode de développement amène un réel plus en termes de compréhension, de qualité et de maintenabilité du code source produit, et il est important de continuer à l’utiliser lors des prochains sprints.

Moins de…

On peut retrouver dans cette branche les différentes pratiques et les processus qui nécessiteraient d’être améliorés pour être réellement utiles pour le projet, mais qui ne sont tout simplement pas exploitables dans le contexte actuel. Cela ne veut pas dire qu’ils n’apportent aucune valeur ajoutée au projet. Simplement, ils en apportent moins que d’autres processus. Il peut également s’agir de situations désagréables et pénalisantes pour l’équipe projet.

Par exemple, on peut trouver ici des situations d’instabilité des environnements de développement, ou du fonctionnement des serveurs…

Plus de…

Il s’agit des pratiques, technologies et processus apportant une réelle plus-value au projet, mais qui nécessiteraient d’être approfondis par les membres de l’équipe afin d’en tirer encore plus de bénéfices.

Si la programmation par paire ou « pair programming » est mise en place sur le projet utilisant la méthode « eXtreme Programming » ou « XP », il peut être nécessaire d’aller plus loin en faisant tourner plus souvent les paires de façon à améliorer encore le transfert de connaissances entre développeurs et obtenir un bien meilleure compréhension des changements apportés dans l’application.

Arrêter de…

Cette branche est réservée à tout ce qui dans le meilleur des cas n’apporte rien ou presque au projet, ou dans le pire des cas, qui est contre-productif.

Typiquement, cela peut être un rapport d’activité à envoyer par email tous les soirs, qui prend du temps, qui n’apporte pas grand-chose, et qui pourrait aisément être remplacé par un point de quelques minutes à l’oral.

Commencer à…

Il s’agit de référencer les nouvelles expériences à mettre en place. Cette branche peut regrouper de nouvelles idées qui n’ont pas encore été testées, parce que d’autres ont moins bien fonctionné, ou tout simplement parce que c’est intéressant, formateur et que cela permet de maintenir la motivation de l’équipe.

On retrouve fréquemment dans cette branche de nouveaux outils open source à tester ou encore l’ajout d’outils de communication plus performants.

Utilisation de l’étoile de mer agile

Le principal intérêt de la construction de ce diagramme en étoile de mer, c’est qu’il va permettre d’observer réellement ce qui se passe au sein de l’équipe projet, ce qui va plutôt bien, et ce qui va moins bien. Grâce à cette étoile de mer, on couvre l’expérience acquise lors des sprints précédents, aussi bien pour ce qui a échoué que pour ce qui a réussi. Avec l’utilisation des branches, on peut aller au-delà de ce qu’auraient permis les trois traditionnelles questions posées lors d’une réunion de rétrospective.

Même s’il est plus complet qu’une rétrospective classique, cela reste un exercice simple et assez rapide à réaliser. Les choses bonnes et les moins bonnes ressortent, et permettent au final d’obtenir un résumé réaliste du sprint qui vient de se terminer.

Les branches sont examinées une par une, en commençant par « arrêter de… » et en continuant avec « moins de… », « continuer à… » et « plus de… ». Chaque participant dispose de deux à trois minutes pour exprimer ses idées. Les différentes idées sont ensuite débattues durant une dizaine de minutes afin que tout le monde ait la même compréhension de ce qui a été exposé.

La branche « commencer à… » fait l’objet d’un traitement particulier. Parmi toutes les idées proposées, une seule est sélectionnée par un vote des participants. Une stratégie est alors mise en place afin de s’assurer que l’idée sélectionnée sera correctement mise en œuvre, incluant la désignation des personnes qui en seront responsables, une date butoir et un critère d’évaluation. C’est ce critère qui permettra d’affirmer que la mise en place de la nouvelle proposition est un succès ou un échec.

L’ordre dans lequel les branches sont examinées a son importance. Il est intéressant de commencer par les aspects négatifs, et de progresser jusqu’à la fin de la rétrospective vers des points de plus en plus positifs. Il en ressort un sentiment bien meilleur que si l’on choisissait n’importe quel autre ordre.

 

Naturellement, la solution Nutcache offre toutes les fonctionnalités nécessaires à la gestion d’une rétrospective agile. N’hésitez pas à profiter d’une version gratuite durant 14 jours pour l’essayer.