Pourquoi le SCRUM est génial, utilisation et retours d’expérience (partie 1)
| Conseils d'expertDepuis plusieurs années déjà le management agile monte en puissance. Avec lui, la méthode SCRUM est également plébiscitée et de nombreux postes et offres d’emplois apparaissent avec la méthode SCRUM comme compétence.
Qu’est-ce que la méthode SCRUM ? Comment fonctionne-t-elle ? Est-ce un effet de mode ou a-t-elle un réel intérêt? Est-elle adaptée uniquement pour les développements informatiques et les grands groupes ou est-elle adaptable à l’industrie et aux TPE/PME ? Beaucoup de questions légitimes qui méritent des réponses claires.
Qu’est-ce que la méthode SCRUM ?
Le SCRUM est une méthode de travail agile développée au début des années 1990 par Ken Schwaver et Jeff Sutherland. Elle définit un cadre de travail et des méthodes permettant d’aborder des problématiques complexes et mouvantes de manière efficace et créative afin de générer le plus de valeur possible.
La méthode SCRUM, qui signifie « mêlée » en anglais, est une approche plus rapide et flexible pour le développement de nouveaux produits. Elle peut être comparée avec le rugby à XV où l’équipe avance soudée et est toujours prête à réorienter le jeu/projet au fur et à mesure de sa progression sur le terrain/projet, à l’instar du ballon ovale qui passe de main en main jusqu’à la ligne d’essai.
Comment fonctionne la méthode SCRUM ?
La méthode SCRUM est une méthode agile, elle suit donc ses principes avec la participation et l’implication active du client durant l’intégralité du projet.
Elle fournit un cadre (framework en anglais) à la gestion de projet avec plusieurs éléments fondamentaux :
- des règles
- des évènements
- des artefacts
- des rôles
C’est une approche empirique (basée sur l’expérience), participative et dynamique de la conduite d’un projet. Pour reprendre l’analogie avec le rugby, la mêlée est une phase de jeu importante pour poser l’action et reprendre la phase de conquête. Dans le SCRUM c’est la même chose, l’équipe effectue une mêlée quotidienne (daily SCRUM) afin de se synchroniser et suivre l’avancement du projet
Répartition des rôles
L’équipe SCRUM possède toutes les compétences nécessaires à la réalisation du projet, elle est donc autoorganisée et peut choisir la meilleure façon d’accomplir sa tâche.
En procédant ainsi, la productivité, la flexibilité et la créativité de l’équipe sont optimisées.
L’équipe Scrum se compose de :
- un Product Owner
- un Scrum Master
- une Scrum Team, l’équipe de développement
Le Product Owner porte la vision du produit à réaliser. Il travaille en interaction avec l’équipe de développement qui suit ses instructions. Il est celui qui établit la priorité des fonctionnalités à développer ou à corriger, et il valide les fonctionnalités terminées. Il est le responsable de la gestion du product backlog (voir définition plus loin dans cet article).
Le Scrum Master est responsable de la compréhension, de l’adhésion et de la mise en œuvre de la méthode Scrum. Il veille à ce que les valeurs de la méthodologie et ses principes soient respectés. Il a un rôle de facilitateur aidant à l’amélioration de la communication au sein de l’équipe et cherchant à maximiser le savoir-faire et la productivité de celle-ci. C’est en quelque sorte le coach de l’équipe de développement.
La Scrum Team, l’équipe de développement, est chargée de transformer les besoins définis par le Product Owner en fonctionnalités utilisables. Pluridisciplinaire, elle possède en interne toutes les compétences nécessaires à réalisation du projet. La taille idéale de l’équipe de développement est comprise entre 3 et 9 personnes. La notion de hiérarchie est absente, les décisions sont prises collégialement.
En SCRUM, il n’y a pas de notion de « chef de projet ».
Les différents événements
Un projet Scrum est rythmée par un ensemble de réunions définies précisément et time-boxées (avec une limite de temps).
Le Sprint
Un Sprint est une itération. Il s’agit d’une période allant de 1 à 4 semaines maximum durant laquelle une version utilisable du produit est réalisée. Le Sprint suivant commence dès la fin du précédent. Un objectif et une liste de fonctionnalités à réaliser est défini pour chaque Sprint.
Planification d’un Sprint
La réunion de planification de Sprint permet à l’ensemble de l’équipe SCRUM de déterminer les tâches à accomplir durant le Sprint. La durée maximum de cette réunion est de 2h par semaine de Sprint soit 8h maximum pour un Sprint d’un mois. Cette réunion permet à l’équipe d’établir les éléments qu’elle traitera au cours de ce Sprint ainsi que sa façon de procéder.
Revue du Sprint
La revue du Sprint est le bilan du Sprint réalisé. Une fois le Sprint terminé, l’équipe Scrum et les parties prenantes se réunissent afin valider les accomplissements réalisés durant le Sprint. Cette réunion a une durée maximum de 4 heures.
Rétrospective du Sprint
Cette réunion est interne à l’équipe Scrum. Sa durée est de 3 heures maximum pour un Sprint d’un mois. Le but est l’amélioration continue du processus de réalisation et l’adaptation aux changements. L’équipe passe en revue le Sprint terminé afin de déterminer ce qui a bien fonctionné et les points à améliorer.
Daily Scrum
Cette réunion quotidienne de 15 minutes est très importante. Elle se fait debout, à heure et lieu fixe. Le but est de faire un point sur la progression journalière du Sprint. Elle permet à l’équipe de synchroniser ses activités et d’organiser la prochaine journée de travail.
Chaque membre de l’équipe de développement doit répondre à trois questions :
- Qu’est-ce qu’il a réalisé la journée précédente ?
- Quels ont été les difficultés de la journée précédente ?
- Qu’est-ce qu’il va faire aujourd’hui ?
Les livraisons
Contrairement à la méthode de développement classique en V, SCRUM prévoit plusieurs livraisons partielles (incrémentales et itératives), en débutant par les fonctionnalités les plus importantes du point de vue de l’utilisateur, c’est à dire le client, représenté par le Product Owner.
Les fonctionnalités non livrées à date peuvent donc être remplacées par de nouvelles, de difficultés comparables.
On parle alors de contrat à clause de modification gratuite où les nouvelles exigences éventuelles de l’utilisateur sont accueillies à bras ouverts.
Le client s’approprie le produit progressivement, facilitant ainsi les retours d’expériences vers la Scrum Team.
Les artefacts
Le product backlog
Il s’agit d’une liste hiérarchisée des exigences initiales du client concernant le produit à réaliser. Ce document évolue sans cesse durant le projet, en fonction des besoins du client. Le product owner est le responsable du product backlog.
Le Sprint backlog
Il s’agit du plan détaillé du Sprint pour la réalisation de l’objectif. Il est réalisé durant la réunion de planification du Sprint. Le Sprint backlog est régulièrement mis à jour par l’équipe afin d’avoir la vision la précise possible de la progression du Sprint pour l’équipe, le SCRUM Master et le Product Owner.
L’incrément
L’incrément un ensemble d’éléments terminés, fonctionnels et utilisables du product backlog.
Le Burndown Chart
C’est un graphique simple indiquant l’état d’avancement dans la réalisation des tâches du Sprint backlog. Le SCRUM Master actualise le Burndown Chart après chaque Daily SCRUM.
Pour résumer
SCRUM est la méthode agile. Chaque élément la constituant est immuable et doit être respecté. Si cette approche est facile à comprendre, elle est en revanche difficile à maîtriser.
Dans la deuxième partie, nous verrons à quels types de projets cette méthode est adaptée, ainsi que des retours d’expériences.
Dorian Hurault – Chef de projet optimisation des flux