Méthode Agile

Méthode Agile

La gestion de projet est au centre de nos organisations depuis longtemps et de nombreuses méthodes ont vues le jour au fil du temps. Dans ce nouvel article, je vais vous présenter les bases de la méthode de projet Agile. Certains préfère parler d’état d’esprit ou d’approche Agile, néanmoins nous allons définir ici les principes de cette méthode et je vais vous donner les bases à connaitre pour la mettre en œuvre.


 

Introduction

La méthode de projet Agile a été un bouleversement dans l’approche donnée à la gestion de projet. En effet, les méthodes classiques sont assez contraignantes et donnent un cadre strict aux projets. Dans une méthode dite traditionnelle, un besoin transformé en « cahier des charges » est défini à l’initialisation du projet et après différentes étapes réalisées dans un temps donné, le besoin initial est transformé en solution. La méthode Agile s’appuie comme son nom l’indique, sur l’agilité et la capacité à s’adapter tout au long du projet en ayant la possibilité de modifier le besoin émis initialement. Elle permet d’éviter certaines erreurs classiques comme par exemple :

  1. Des projets interminables : Il est rare qu’un projet se termine à la date prévue
  2. Peu de coopération : Dans une gestion classique, la lourdeur de la gestion de projet est un frein à la coopération
  3. Documents redondants et souvent incohérents : Chacun fait sa référence au document de sa phase
  4. Incompréhension des intervenants : Besoin du client insatisfait car modifié entre-temps

Tout cela aboutit à de la frustration, de l’inefficacité, du travail inutile, des explosions de budget et surtout des projets qui n’aboutissent pas. Cette méthode très optimisée pour des projets de développement, permet donc d’aboutir plus efficacement au réel besoin et à celui émis à l’initialisation du projet. Dans cet article, je vais vous présenter la méthode Agile basée sur la méthodologie Scrum mais il en existe d’autres.

 

La méthode Scrum

La méthode agile suis un cycle tout au long du projet avec des itérations courtes (de 2 à 4 semaines) ciblant un périmètre restreint du projet. Chaque itération peut donner accès à une partie du projet utilisable par le client final permettant d’utiliser le projet avant la clôture de celui-ci. Ainsi le client qui a la main sur une partie du projet aura la possibilité d’optimiser le résultat final en modifiant ses besoins. Voici un schéma du déroulement d’un projet en méthode Agile :

 

Les rôles

Dans la méthode agile il existe différents rôles afin d’optimiser la transmission d’information et la bonne tenue des projets.

Product Owner : Il est le représentant des clients et des utilisateurs, son objectif principal est de maximiser la valeur développée.

  • Il explicite les items du carnet de produit. Il doit rédiger les spécifications et les cas de tests.
  • Il définit l’ordre de priorité des fonctionnalités et prend les décisions importantes.
  • Il s’assure que le carnet de produit est compris de tous.

Il doit rester très disponible et répondre aux questions de l’équipe pour donner son point de vue et ses directives.

Scrum Master : Il est responsable de la méthode, s’assure que tout le monde l’a bien comprise et que sa mise en application est correcte.

  • Il communique la vision et les objectifs de l’équipe.
  • Il coach l’équipe de développement.
  • Il travaille avec les autres animateurs pour coordonner plusieurs équipes.

L’équipe de développeurs : Ils sont pluridisciplinaires et c’est eux qui réalisent le produit.

  • Ils s’organisent en autonomie et choisissent la façon d’accomplir leurs travaux.
  • Il n’y a pas de hiérarchie, toutes les décisions sont prises ensemble

 

Les composants

1- Sprint :

Les sprints sont des périodes pendant lesquelles on livre une partie du produit. Le principe est de définir un but à l’initialisation du sprint qui ne pourra pas être modifié.

L’objectif et la composition de l’équipe définis à l’initialisation d’un sprint ne devront pas être modifiés. Il est possible de négocier la liste des items entre le Product Owner et l’équipe de développeurs. Les éléments non acceptés sont ré-éstimés et remis dans le carnet de produit, c’est alors un nouveau sprint qui démarre.

2- Mélée quotidienne :

Chaque jour, pendant 10 à 15 minutes maximum, les développeurs font un point sur les tâches en cours et sur les difficultés rencontrées en répondant à trois questions :

  • Qu’est-ce que j’ai fait hier ?
  • Qu’est-ce que je compte faire aujourd’hui ?
  • Quelles sont les difficultés que je rencontre ?

Le but de la réunion est de synchroniser l’équipe et n’est pas un reporting d’activité. Le Product Owner n’est pas présent.

3- Réunion de planification de Sprint :

Tout le monde participe à cette réunion qui se déroule en deux temps :

  • L’équipe de développement cherche à prévoir ce qui sera développé durant le prochain Sprint. Pour cela l’équipe a besoin d’avoir à disposition :
    • Le carnet de produit priorisé
    • L’incrément réalisé à la dernière itération
    • La capacité de production de l’équipe lors des dernières itérations
    • La capacité de production prévue à la prochaine itération.
  • L’équipe se focalise sur la manière dont ils atteindront le but du sprint. Ils prévoient alors ce qui sera fait pendant le sprint, construisant ainsi une estimation.

4- Revue de Sprint :

C’est une réunion de fin de cycle où tout le monde est présent pendant 4 heures maximum. L’objectif est de valider ou non le résultat, que l’on appelle incrément, qui a été produit pendant le sprint.

5- Rétrospective du Sprint :

Cette rétrospective permet d’apprendre du cycle écoulé et d’améliorer les prochains cycles. Le ScrumMaster, qui anime la réunion, et les développeurs sont présents pour faire cette réunion en discutant essayant de faire ressortir les points positifs et négatifs du dernier sprint pour optimiser le suivant.

 

Les livrables

1- Carnet de produit (Product Backlog)

C’est une approche fonctionnelle pour récolter les besoins des utilisateurs divisée en 3 parties : description, estimation et ordre.

Le Product Owner peut changer cet ordre en cours de projet et même ajouter, modifier ou supprimer des éléments dans le carnet.

2- Carnet de Sprint (Sprint Backlog)

En début de sprint, un but est décidé. Pour l’atteindre, l’équipe choisie quels éléments seront réalisés et note ces éléments dans le carnet de sprint.

Chaque équipe met à jour régulièrement le carnet de sprint. Celui-ci donne donc une vision de ce que l’équipe estime nécessaire.

3- Incrément

Ce sont des « parties » du projet qui sont délivrés et accessibles pour les utilisateurs leurs permettant de pouvoir suivre l’avancement du projet en temps réel.

4- Burndown Charts

Ce sont des graphiques d’avancement permettant de visualiser l’avancement du travail simplement. Une interprétation simple permet d’avoir une idée sur les échéances futures. Ce graphique reprend simplement la charge de travail restante en fonction du temps restant dans le sprint. L’idéal étant d’avoir une trajectoire droite comme la courbe bleu sur l’exemple ci-dessous où la courbe verte montre un déroulement d’un sprint avec une avance prise le mercredi et un retard le lundi suivant :

Burndown_chart

 

Voici donc les bases de la méthode agile façon Scrum, j’espère que cet article vous éclaire sur cette méthodologie que l’on verra de plus en plus dans nos entreprises. Fini les cadres de projet stricts et lourds à gérer, place à l’agilité !

À propos de l’auteur

Vincent Krahenbuhl administrator

Passionné d’informatique, ma motivation et ma curiosité m’ont permis de réaliser des études en alternance, tout d’abord en tant que technicien informatique au sein du groupe Edscha puis administrateur réseau au sein de FM Logistic. Fort de ces expériences dans deux entreprises internationales, j’exerce aujourd’hui le rôle d’ingénieur réseau et sécurité chez FM Logistic.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.