Introduction
Cette publication sur la méthodologie Agile définit le vocabulaire de base pour les non-initiés, voir les indécis à qui les mots Scrum, Sprint, Product owner et autres termes du même acabit ont été soufflés un jour. L’intention est d’expliquer en quelques lignes ce qu’est la méthodologie Agile et pourquoi elle a été inventée.
Définition
Le Scrum
La mêlée. Le terme vient du rugby où deux équipes se positionnent sur une ligne, bras entrelacés, poussant vers l’équipe adverse, en tentant de prendre le contrôle du ballon. On botte ensuite celui-ci en arrière, à d’autres joueurs de son camp.
Dans la gestion de projet Agile, le scrum est constitué d’une petite équipe qui “prend le contrôle” d’une tâche lors d’une mêlée, la réalise, et la renvoie en amont, à d’autres personnes en charge du projet global.
Il faut néanmoins préciser qu’une mêlée n’est pas, à l’instar du Rugby, une foire à l’empoigne, mais une séance de très courte durée. La plupart du temps, celle-ci dure environ une vingtaine de minutes, en position debout. Elle a pour but de prendre le contrôle d’une tâche, d’en définir les contours et de planifier l’avancement de celle-ci.
Le Sprint
Le sprint n’est pas a priori, une course de rapidité, mais son nom indique aisément qu’il y a une notion de vitesse.
Dans la gestion de projet Agile, le sprint est une tâche limitée dans le temps (d’où la notion de vitesse). Il comprend quatre événements majeurs (la planification, la mêlée, la revue et la rétrospective). Le sprint, c’est la réalisation d’une tâche plus ou moins complexe dans une durée de temps n’excédant pas les quatre semaines.
Le Product Owner (PO)
Le Product Owner est l’un des personnages clés d’une équipe de gestion travaillant en mode Agile. Le Product Owner est la personne qui représente le client. Le Product Owner va devoir analyser, comprendre, organiser et planifier une tâche avec le client et documenter ses exigences dans un backlog. Le Product Owner, qui est souvent le Business Analyste, a donc une double casquette. D’un côté, il discute avec le client des tâches du projets à réaliser, et de l’autre, va le représenter dans l’équipe Agile.
Le sponsor
Dans la gestion de projet, Le sponsor n’est pas un mécène qui va faire un don d’argent contre un retour publicitaire. Un sponsor est la personne qui va payer pour effectuer une tâche. Le sponsor est la personne (ou les personnes) qui demande à une équipe Agile de lui fournir un travail. En d’autres termes, c’est le client évoqué ci-dessus. C’est la personne la plus importante dans la gestion de projet. C’est elle qui va décider si le projet va être réalisé ou pas.
Le Product Backlog
Le backlog ou product backlog, c’est le cahier (ou l’application informatique), dans lequel on va décrire toutes les fonctions à réaliser pour effectuer une tâche. Ce backlog est à la charge du Product Owner et du chef de projet (hors de l’équipe Agile). C’est dane le backlog que l’on va décrire toutes les exigences fonctionnelles et non-fonctionnelles du projet.
Le Scrum Master
Autre personne importante dans la gestion Agile est le Scrum Master. Ce dernier va avoir la lourde tâche de diriger l’équipe Agile. Il va devoir gérer les quatre tâches définies en préambule de cette publication, la planification, la mêlée quotidienne, la revue et la rétrospective.
L’équipe Agile ou Scrum
Le terme n’a pas beaucoup d’importance. C’est l’équipe qui sera en charge de la réalisation des tâches, des tests à faire en partie avec une équipe de qualité, des revues et bien entendu de livrer le produit fini.
Le fonctionnement Agile
Maintenant que le vocabulaire principale a été évoqué, il est temps de passer à l’explication du fonctionnement d’un projet en mode Agile.
Le démarrage d’un projet
La gestion Agile n’est pas, au commencement, vraiment différente d’une méthode dite classique. Il y a toujours un sponsor qui décide qu’un projet va être initié, un chef de projet qui va planifier le temps et le budget à disposition et un business analyste qui va analyser, éliciter, cadrer et décrire les fonctionnalités du projet dans un backlog. Jusqu’ici, rien de nouveau sous le soleil.
La planification d’un Sprint
Lors de la première séance de travail qui a lieu entre le Business Analyst et le Scrum Master, ceux-ci vont devoir parcourir le backlog et définir les tâches à effectuer. C’est au Scrum Master que revient la tâche d’effectuer la séance de planification qui dure environ une journée. Elle sert à définir la durée d’un Sprint, qui va se dérouler sur une période de quatre semaines maximum. Elle sert aussi à définir dans le Sprint Backlog (à ne pas confondre avec le Product Backlog), toutes les tâches qui seront réalisés pendant le Sprint. La planification va également servir à distribuer le travail à réaliser dans l’équipe Scrum.
Quelques sujets qui vont forcément être évoqués pendant cette séance :
- Quels sont les objectifs du Sprint ?
- Quels sont les éléments prioritaires du product backlog qui peuvent être réalisés en production ?
- Quel est le volume de travail qui peut être rendu par l’équipe Scrum dans le temps imparti par le Sprint ?
- Comment convertir les tâches à réaliser ?
A noter qu’il est toujours possible de modifier l’étendu des tâches à réaliser pendant un Sprint, mais en aucun cas à dépasser le temps maximum de vingt jours.
La mêlée quotidienne
La mêlée quotidienne est une séance au sein de l’équipe Scrum. Elle sert à synchroniser, à mesurer l’avancement du projet et de l’ajuster en conséquence selon le plan d’action.
Dans chaque séance de mêlée, qui ne dépasse pas une durée de vingt minutes au maximum, le Scrum Master va devoir poser trois questions à chaque participant :
- Quelles tâches ont été effectuées la veille, qui apporte une amélioration afin d’atteindre l’objectif ?
- Quelles tâches vont être effectuées aujourd’hui pour atteindre l’objectif ?
- Quels sont les obstacles qui empêchent l’avancement d’une tâche ?
Le temps de parole dans une mêlée étant très courte, ce n’est pas pendant celle-ci que l’on va débattre des solutions à mettre en place pour atteindre l’objectif. Tous ces sujets sont à discuter en dehors de la séance de mêlée.
La revue du Sprint
La revue du Sprint est effectuée en dehors de l’équipe Agile. Une revue à lieu à chaque fin de Sprint et dure environ une demi-journée. C’est le product Owner qui à la tâche d’inviter toutes les parties prenantes au projet (Sponsor, experts, utilisateurs clés, …). Le but de la revue est de présenter le travail déjà réalisé et de recueillir les retours que les parties prenantes ont pu tester ou voir. Elle permet de renforcer la collaboration entre le client et l’équipe Agile en charge du développement. Elle peut également servir à évoquer les difficultés rencontrées pendant l’avancement du projet. Enfin, on décide des grandes lignes du prochain Sprint.
La rétrospective
La rétrospective peut avoir lieu en même temps que la revue ou indépendamment. Elle se fait en présence du Product Owner, du Sponsor, du Scrum Master et du chef de projet. Elle dure environ de deux à trois heures pour un Sprint. Elle sert de départ pour un nouveau Sprint. C’est pendant la rétrospective que l’on discute des problèmes et comment on va tenter de les résoudre. C’est aussi pendant cette séance que l’on décide si le projet mérite de continuer ou d’être abandonner.
Un des événements qui rend la méthodologie Agile intéressante est ce pouvoir de décision qu’à le sponsor de continuer ou d’abandonner un projet chaque mois, à la fin d’un Sprint. A chaque rétrospective, le sponsor peut annoncer son intention d’initier un nouveau Sprint, d’abandonner le projet ou encore de le recadrer. On évite ainsi beaucoup de perte de temps, de frustrations et d’argent gaspillé.
Le mot de la fin
Voilà un résumé des principaux acteurs de la méthodologie Agile. Agile et les activités Scrum permettent non seulement d’avoir une meilleur vue d’ensemble sur le projet et de ses tâches, mais également une meilleur communication entre toutes les parties prenantes du projet. Elle laisse ainsi la chance à tout le monde de pouvoir s’exprimer et de donner son avis, du sponsor principal jusqu’à l’utilisateur final. Le scrum permet également d’abandonner un projet ou de recadrer celui-ci en cours de route, ce qui offre une souplesse inégalée et évite bien des frustrations.