Article

Méthode Agile – La méthode Agile Scrum, des hommes et des rôles

juin 2012 | Temps de lecture : 3 min

Les méthodes de gestion de projet Agile brisent la linéarité et la prédictibilité des méthodes traditionnelles (cycles en V ou W) en proposant un modèle de développement itératif simple et complet. Nous avons jeté notre dévolu sur la méthode Agile Scrum, que nous souhaitons vous expliquer et vous illustrer en plusieurs articles. Cette série d’articles vise à rendre accessible à tous cette méthode, en facilitant la compréhension des différents enjeux sur la base de retours d’expérience (positifs et négatifs) du cabinet.

 Méthode Agile – La méthode Agile Scrum, des hommes et des rôles

Bienvenue dans l’univers Scrum !

 

Scrum Master, Sprint, Backlog… Si le langage utilisé par la méthode Scrum ne vous est pas encore familier, à la fin de cet article il n’aura plus aucun secret pour vous !Commençons par le nom de la méthode elle-même : Scrum ! Issu du champ lexical du rugby, Scrum signifie mêlée. En effet, plusieurs analogies peuvent être faites avec ce sport :

 

  • Les acteurs d’un projet Agile seront soudés en vue d’atteindre le résultat souhaité ; tout comme les rugbymen lors d’une mêlée
  • Un projet est constitué de plusieurs itérations ; tout comme un match qui est composé de plusieurs mêlées

 

S’il est laissé beaucoup de place à l’autonomie et au respect du travail de réalisation, un projet Agile reste néanmoins un projet qui doit être régi par des principes d’organisation clairs. L’équipe doit être intégrée dans un organigramme partagé et les rôles et responsabilités de chacun doivent être établis.

 

 

Chacun sa place…

 

La méthode Scrum définit trois rôles distincts : Product Owner, Scrum Master et équipe opérationnelle. Chacun des acteurs s’occupe uniquement de son domaine d’actions sans empiéter sur celui des autres. L’établissement de cette relation de confiance permet de fédérer tout un chacun vers l’accomplissement d’un but unique et commun : l’aboutissement du projet qui est confié à l’équipe.

 

Le Product Owner est le représentant des clients et utilisateurs. C'est lui qui définit l'ordre dans lequel les fonctionnalités seront développées et qui prend les décisions importantes concernant l'orientation du projet. Ses missions sont diverses :

 

  • Lister les exigences client puis les prioriser
  • Planifier le contenu des itérations
  • Fournir les spécifications détaillées à l’équipe

 

Un Product Owner est fortement sollicité par les développeurs, il devra donc être compétent (connaissance des besoins fonctionnels, anticipation des événements, etc.), disponible et légitime afin de prendre les bonnes décisions rapidement.

 

 

Le Scrum Master est le garant de la méthodologie Scrum auprès de l’équipe fonctionnelle. Facilitateur, animateur, isolateur… Autant de rôles qu’il doit tenir pour s’assurer que le travail progresse correctement. Sa mission peut être définie comme suit :

 

  • Faire appliquer par l’équipe les valeurs et pratiques Scrum
  • Remédier aux imprévus
  • S’assurer que l’équipe est fonctionnelle et productive
  • Faciliter la coopération inter-acteurs
  • Protéger l’équipe des interférences extérieures

 

Un Scrum Master n’est en aucun cas un chef d’équipe. Il est le garant de la bonne atteinte des objectifs par l’équipe et du bon respect des jalons.

 

 

L’équipe opérationnelle est auto-gérée et n’a aucune notion de hiérarchie interne : toutes les décisions sont prises ensemble et personne ne donne d'ordre à l'équipe sur sa façon de procéder. Elle est composée de 3 types d’individu :

 

  • Les développeurs - Réels experts, ils travaillent généralement en binôme afin de répartir les compétences, renforcer la qualité des travaux et partager les décisions. De plus, ils collaborent étroitement avec le Product Owner, qui reste à leur disposition pour répondre à la moindre question fonctionnelle soit lors des réunions quotidiennes soit par divers moyens de communication

 

  • Le testeur MOE – Il a pour fonction d’implémenter les tests fonctionnels puis de les automatiser pour s’assurer que la couverture fonctionnelle est conforme aux engagements et que le niveau de qualité exigé est bien respecté

 

  • Le testeur MOA – Il effectue la recette de la dernière itération complètement réalisée. Tout au long du projet il va interagir avec le Product Owner sur la validité fonctionnelle de la solution. Cette différence marquée entre les acteurs permet de définir un rôle précis pour chacun qui va garantir le bon fonctionnement et les bonnes interactions au sein du groupe projet. Dans un projet en méthode Agile, a contrario d’un projet mené en méthode classique (V ou W par exemple) on ne parlera pas de MOE ou de MOA mais on parlera de l’équipe projet. Cette différence marque l’esprit collaboratif de la méthode où, si chacun est responsable de sa partie, ce sont l’unité et la cohésion qui restent primordiales.

 

 

… avec les bons outils

 

Tout bon ouvrier devant avoir toujours les bons outils, la méthode Agile s’est dotée de trois outils (autrement appelés artefacts Scrum) qui vont être utilisés tout au long du cycle de vie du projet et vont venir en support de la méthode pour garantir la communication et un bon niveau de reporting.

 

  •  Le Product Backlog est un outil de collecte des fonctionnalités attendues ou exigées par le client. C’est un document vivant qui subit de nombreuses modifications entre chaque itération (= Sprint). L’ordre de réalisation des tâches découle de cet outil. Il est sous la responsabilité du Product Owner qui est en charge du recueil des informations et de la priorisation de celles-ci pour déterminer la feuille de route du projet. Si le Product Backlog paraît être un simple outil de recueil des fonctionnalités, il doit être rempli avec méthode afin de respecter la priorisation des fonctionnalités au regard de leur degré de complexité. Il est donc important au démarrage du projet de lister l’intégralité des fonctionnalités (ou tout du moins la majeure partie) qui devra être embarquée par le projet afin d’éviter les mauvaises surprises lors de la phase de réalisation et pour permettre à l’équipe en charge de la réalisation de chiffrer les fonctionnalités les unes par rapport aux autres.

 

  • Le Sprint Backlog reprend les macro-fonctionnalités définies dans le Product Backlog et les décompose en tâches à implémenter pour le sprint qui va démarrer. Les développeurs s’engagent alors sur le temps de travail estimé de chacune de ces tâches. Ce document sera la base de travail pour estimer le reste à faire. A ce jour, des outils de type plateforme web permettent de réaliser ces tâches et de les rendre accessibles à tous (par exemple Mingle et Jira). Néanmoins, il reste important de préciser que la méthodologie Scrum est une méthode dite de proximité et que ce portage de solution sur Internet ne doit en aucun cas favoriser un mode de réalisation délocalisé.

 

  • La Burndown Chart est un diagramme qui permet de visualiser l’avancement des sprints et du projet dans sa globalité. C’est une représentation graphique du Reste à Faire qui met en regard la variable temps par rapport à la variable charge de travail et qui permet de contrôler le bon alignement de l’engagement de l’équipe de développement en début de sprint avec les délais de réalisation impartis qui sont fixes et ne supportent aucun débordement de réalisation. Le Burndown Chart est généralement produit automatiquement par les outils permettant de réaliser les Backlog de sprint.

 

Les méthodes Agile et plus généralement la méthode Scrum sont des méthodes qui favorisent la proximité et l’engagement (représentés ici par le rugby). Cette proximité et ces particularités ont conduit à mettre en place un vocabulaire spécifique et unique et une définition précise des rôles et responsabilités de chacun afin de garantir l’unité, la bonne entente et le travail en bonne intelligence au sein du groupe projet. Les différents outils à mettre en place pour accompagner le projet tout au long de son cycle de vie ont un rôle de facilitateur et ne représentent aucune contrainte lors de leur mise en place et leur maintien. Ces différents outils permettent de finaliser la liaison entre la main d’œuvre et le client final en lui donnant de la visibilité sur l’avancement de la réalisation et sur le produit en tant que tel. Ces différents outils sont généralement remplis au cours des différentes instances qui sont propres à la méthode Agile. Cependant, point trop n’en faut !

 

Nous vous donnons donc rendez-vous lors de la prochaine publication pour aborder en détail ces différentes particularités !