Cadencer les mises en production et en démultiplier le rythme

Avec toujours plus de management visuel, bien entendu !

This article is also available in English.


Le Jeu de l’oie du Process de MEP, présenté dans le précédent article

Je fanfaronnais dans le précédent article que nous avions réussi à augmenter drastiquement notre fréquence de mise en production, pour actuellement toucher du doigt le Continuous Delivery. Et bien, je ne vous ai pas tout dit !

Le Jeu de l’oie du Process de MEP ne raconte pas toute l’histoire. Ce premier board est accompagné d’un autre, le board de planning des MEP. Et c’est le sujet du jour !

Deux photos du board de planning des MEP. On peut noter sur la seconde photo des petites fiches listant les devices sur lesquels effectuer la non-régression.

Utilisation en revue d’itération

Entrée des sujets dont le développement est terminé

J’ai déjà parlé de ce board lors d’un précédent article sur nos revues d’itération. En résumé, lorsqu’une US est terminée, et si elle nécessite une mise en production, alors on l’ajoute au board de planning des MEP.

On identifie clairement sur le board de planning des MEP à quelle équipe correspond chaque sujet. Ce board va en effet servir à synchroniser plusieurs équipes, mais chaque équipe reste responsable de sortir en production ses propres sujets. Dans notre cas de figure, nous utilisons plusieurs couleurs de post-it, une couleur par équipe impliquée.

Sortie des sujets en production

À l’inverse, on enlève les sujets qui sont sortis en production pendant l’itération.

Nous notons au dos des post-its de MEP le nombre d’itérations qu’a passé le sujet sur le board de planning des MEP. C’est à dire le nombre d’itérations écoulées entre la fin du développement et la mise en production effective.

Ainsi, après avoir retiré les post-its des sujets passés en prod nous ajoutons un bâton au dos des post-its restants.

Ajout de batons au dos des sujets pour mesurer le temps passé entre la fin de développement et la mise en production effective : légende explicative + exemple

Enfin, nous consignons ces informations dans une feuille de calcul pour pouvoir les exploiter plus tard :

  • Nombre de MEP durant l’itération
  • Temps nécessaire pour passer en production un sujet ‘done’
Exemple d’exploitation des statistiques récoltées sur les MEP effectuées à chaque itération

Utilisation en planification d’itération

Création du planning provisionnel des MEP de l’itération

Ce board de planning des MEP est crucial dans la planification d’itération.

Ainsi, le Sprint Planning va démarrer par une phase supplémentaire, commune entre les différentes Scrum Teams qui partagent les mêmes ressources de mise en production :

  • Ajout des sujets à sortir immédiatement : certains sujets ne sont pas encore développés mais sont urgents et devront être sortis en production avant la fin de l’itération. Ces sujets sont alors ajoutés en avance de phase au board de planning des MEP, pour pouvoir les inclure dans le planning provisionnel.
  • Prioritisation des sujets à sortir et création du planning provisionnel des MEP de l’itération : on ré-ordonnance les tickets du board de planning des MEP et on assigne une date provisoire aux MEP des sujets qu’on essaiera de sortir pendant l’itération.

Au travers de ce planning provisionnel des MEP, on affine également la stratégie de mise en production. On veut par exemple profiter des temps morts (week-ends, rituels Scrum) pour attendre les vérifications par les entités externes, alors qu’au contraire on veut garder les moments où l’équipe est active pour sortir un maximum de sujets sans dépendance externe.

On met en place une stratégie qui va à la fois maximiser le nombre de releases et réduire le risque de dérapage.

Synchronisation avec les entités externes

Ce planning provisoire va permettre de synchroniser les équipes avec les dépendances externes. Avec ces entités dont le lien est plus ténu, moins quotidien, il est nécessaire d’être plus strict dans la synchronisation : en fournissant ces dates provisoires.

Un élément à prendre en compte par l’équipe dans son engagement

Une fois cette planification des MEP de l’itération terminée, chaque équipe peut ensuite procéder à la planification d’itération classique du Scrum Guide… en tenant compte de la charge des MEP prévues pour l’itération !

Ainsi l’équipe ajustera son engagement Scrum (ou plutôt prévision depuis les dernières versions du Scrum Guide) en fonction des MEP prévues pour l’itération.

Transposition du planning des MEP sur les boards d’itération

Et enfin on remplit les Scrum boards des équipes. En y ajoutant les US de l’itération, les tâches techniques des US… mais aussi les MEP que prend en charge l’équipe !

Les petites lignes avant les US de l’itération correspondent aux MEP planifiées pour l’itération

On remarque que les MEP sont notées en haut du board, avant les US de l’itération : priorité est toujours donnée aux MEP.

Tout développement n’a aucune valeur tant qu’il n’est pas passé en production. C’est pourquoi sortir en production un sujet ‘done’ est toujours plus important que de développer de nouveaux sujets.
Fiche utilisée pour noter les devices cibles à tester

La ligne servira également à noter de précieuses informations :

  • On reporte la date prévue de MEP
  • On modélisera avec des post-its les différents scenarii de test de non-régression à effectuer
  • On utilisera une petite fiche indiquant les devices/OS/browsers cibles à valider
  • L’équipe notera la progression de la MEP : points de blocage, choses à ne pas oublier, communication spécifique...

Utilisation en stand-up

Et enfin, les différents boards sont suivis et mis à jour continuellement au fil de l’itération. Un point spécifique fait partie du stand-up.

  • Le Jeu de l’oie du Process de MEP : mise à jour de l’état des MEP en cours en déplaçant les pions des releases sur le plateau du jeu de l’oie, vérification que rien n’est oublié
  • Le board d’itération : progression des tests de non-régression, remontée de point de blocage, synchronisation de l’équipe…
  • Le board de planning des MEP : si nécessaire, mise à jour des dates provisionnelles de mise en production et synchronisation avec les autres équipes ; ou encore ajout de hot-fixes

Un board devenu superflu

Tout comme le Jeu de l’oie du Process de MEP, le board de planning des MEP n’est plus utilisé. Avec le passage à Kanban, tous ces éléments sont directement intégrés dans la continuité du board Kanban des équipes.

Par ailleurs mettre en production est devenu tellement naturel que les équipes arrivent à se synchroniser directement entre elles, sans board commun explicite.

Les équipes ont également nettement minimisé leurs dépendances envers des entités externes, ces entités pour qui fournir un planning est important.

Le process existe toujours mais est devenu informel.

C’est une approche très Scrum

Et c’est logique qu’on arrête d’utiliser ces boards en passant à Kanban : ces boards constituent une approche décidément très Scrum.

  • Planification des MEP en Sprint Planning
  • Dates dans tous les sens

Il y a un focus très fort sur la planification, qui est un élément crucial de Scrum. Je ne suis pas en train de renier Scrum : c’est ce focus sur la planification qui a permis la très large adoption de Scrum, en fournissant une manière de travailler cohérente avec les contraintes existantes. Mais c’est justement cet accent sur la planification qui fait qu’aujourd’hui la communauté Agile a tendance à s’écarter de Scrum pour trouver de meilleures manières de travailler.

Vive le monde du pull ! (Kanban is king)

Histoire à suivre…

Cet article fait partie d’une série sur le thème des mises en production. Cet article et le précédent se concentraient sur les outils de management visuel que nous avons mis en place.

Au programme à venir :

Comme toujours, je suis friand d’avoir vos feedbacks !

Cet article vous a plu ?

Abonnez-vous à mon profil via le bouton Follow pour être notifié des autres articles !

Et n’oubliez pas de cliquer sur le cœur 💗 pour m’encourager, et de partager l’article autour de vous : ce sont ces like qui me font mettre autant de cœur à l’ouvrage.

Merci 😄