La méthode SCRUM, vous connaissez ?

En février nous vous avons présenté nos 3 stagiaires qui travaillent sur un nouveau produit, voici quelques news ?

L’équipe projet, managée par Jules RAGOT, utilise la méthode SCRUM dans le cadre du développement de la nouvelle appli Web de gestion et de services numériques du bâtiment, en lien avec un BOS.

La méthodologie agile SCRUM est une méthodologie itérative. L’objectif est de fournir une application stable à tout moment du développement, et d’ajouter des fonctionnalités au cours de différentes phases de développement que l’on appelle « Sprint ». Un Sprint est donc une période de temps de 1 à 4 semaines durant laquelle les développeurs vont ajouter des fonctionnalités au projet en cours. Chaque Sprint est rythmé par un certain nombre de réunions ayant un rôle spécifique.

Nous vous livrons quelques clés pour mieux comprendre cette méthode :

La méthode Scrum tire son nom du monde du rugby : scrum = mêlée

Le principe de base étant d’être toujours prêt à réorienter le projet au fil de son avancement. C’est une approche dynamique et participative de la conduite du projet.

Les 3 principaux piliers des méthodes Agile sont :

  • la transparence : tous les membres de l’équipe doivent avoir connaissance des informations relatives au produit à développer ;
  • l’inspection : des évaluations régulières sont indispensables pour réadapter le projet si nécessaire ;
  • l’adaptation : la mise en œuvre de nouvelles mesures est nécessaire lorsqu’une inspection démontre des écarts sur les résultats mesurés.

Cette méthode est rythmée par des « points de passage » appelés « cérémonies » :

  • le sprint planning : cette réunion, qui se déroule au début de chaque Sprint, a pour objectif de définir les objectifs du Sprint, découper les tâches, estimer le temps de réalisation et la difficulté des tâches. Le Product Owner (personne en relation avec le client, Jules Ragot dans notre cas) présente les objectifs prévus pour le sprint. Après quoi, les différents membres discutent des objectifs et essayent de découper les objectifs en tâches simples à réaliser. Si une tâche est trop complexe, elle peut être redécoupée en plusieurs sous-tâches. Ensuite, l’équipe se met d’accord pour estimer le temps que prendra chaque tâche et pour définir les critères de validation de chaque tâche. Cette phase peut être effectuée par le biais d’un Poker Planning afin de rendre la chose plus ludique et permettre à chaque personne à donner son avis sur les différentes tâches (nous vous reparlerons ultérieurement de cette étape ?).
  • le daily meeting : L’objectif de cette réunion quotidienne est de tenir tous les membres de l’équipe au courant de l’avancement du projet, aider les personnes bloquées sur une tâche et définir les objectifs prioritaires pour les jours à venir. Concrètement, chaque membre de l’équipe va prendre la parole et répondre aux 3 questions suivantes : “Qu’est- ce que j’ai fait depuis le dernier stand-up?”, “Qu’est-ce que je fais actuellement ?”, “Qu’est-ce que je compte faire après ?”.
  • la Sprint review : cette réunion se déroule à la fin de chaque Sprint, avec le client. L’objectif est de présenter le livrable du Sprint au client, lui faire une démonstration de l’application afin de présenter les nouvelles fonctionnalités.
  • la rétrospective du sprint : Cette réunion se déroule après chaque Sprint Review dans un but d’amélioration continue. Les membres de l’équipe vont discuter ouvertement du Sprint passé afin de déterminer les points forts/faibles ainsi que les points d’amélioration. Il existe beaucoup de modèles de Sprint Retrospective permettant d’animer la réunion différemment, comme par exemple le Sail Boat (le bateau)

Pour optimiser ce fonctionnement, l’équipe a besoin d’outils particuliers :

  • un tableau blanc dans l’espace de travail de l’équipe : pour créer un grand tableau avec des colonnes, représentant les différents statuts des activités.
  • des post-it : sachant qu’un post-it = une activité sur le mur, à écrire de façon synthétique et visible de loin.
  • de gros stylos 
  • Gitlab, un outil facilitant la gestion du versionnage du code ainsi que l’organisation des tâches des développeurs.

Cette méthode de management présente l’avantage d’aboutir rapidement à une première version de produit utilisable sur le terrain. Validés au fur et à mesure par le client, les sprints suivants permettent d’enrichir ce premier socle. Cette méthode sert de fil conducteur à notre équipe projet, cela leur apporte rigueur et organisation pour définir des objectifs à court et long terme.

Nous reviendrons vers vous prochainement pour d’autres infos sur ce projet ?