Agile | Méthodologie

Sous le terme Agile, on regroupe un ensemble de méthodologies, de pratiques et de concepts dont les principes reposent sur le Manifeste Agile. Ce dernier a été rédigé en 2001 par 17 experts en développement logiciel, lesquels souhaitaient théoriser et uniformiser de nouvelles méthodes de gestion de projet, itératives et collaboratives. Aujourd’hui, elles sont mises en œuvre principalement dans les agences web et plus particulièrement au sein des services de développeurs informatiques.

Les origines

Avec l’apparition et le développement des nouvelles technologies sont apparues des méthodes de travail, de management et de gestion inédites, adaptées à un contexte désormais en perpétuelle évolution.

C’est dans les années 70-80, dans des entreprises japonaises telles que Toyota ou Fuji, qu’apparaissent les prémices des méthodes Agile. Des dizaines de variantes de ces méthodes fleurissent ; elles sont uniformisées en 2001 à travers le Manifeste Agile, appelé aussi Manifeste pour le développement Agile de logiciels. Celui-ci définit l’ensemble des valeurs et des usages propres à l’application de ces méthodes de pilotage de projet.

Les méthodes Agile sont donc l’aboutissement de nombreux travaux menés sur l’amélioration de la gestion de projet. Elles s’opposent aux méthodes traditionnelles de gestion « en cascade », dites aussi « waterfall » ou « cycle en V ».

Principes et objectifs

Lorsqu’une société développe un logiciel pour un client, ou plus généralement un produit ou un service spécifique, les équipes sont invariablement confrontées à des aléas, des imprévus qui ralentissent la production, écornent la relation client et frustrent l’ensemble des acteurs du projet.

Cette situation est le fruit des méthodes de travail classiques, lesquelles ne peuvent absorber les changements. En effet, lorsqu’on travaille « en cascade », l’ensemble du projet est planifié en amont. Plutôt que de viser un objectif lointain, les méthodes Agile proposent de séquencer le projet en autant d’itérations nécessaires.

Grâce à ces cycles courts de développement, les imprévus peuvent être gérés dans des délais raisonnables. En effet, pour chacun d’entre eux, le client est impliqué, au même titre que les développeurs. Les retours client, les nouvelles idées, les changements de fonctionnalités… sont gérés et validés progressivement, sans perte d’argent, de motivation et de temps.

Quatre valeurs participent à l’efficacité des méthodes Agile et ne doivent pas être perdues de vue par les entreprises qui les expérimentent :

  • L’équipe
  • L’application
  • La collaboration
  • L’acceptation du changement

La méthode Agile demande donc à ce que les équipes soient totalement impliquées dans une réalisation collaborative du projet et qu’elles soient réactives face aux éventuels changements et aux obstacles.

L’objectif principal de cette méthodologie est la satisfaction du client. C’est lui qui est au cœur de la démarche. Et il est indispensable de pouvoir répondre rapidement à ses exigences et volontés, tout en s’adaptant aux évolutions constantes du marché.

Comment mettre en application la méthode Agile ?

Il existe différentes méthodes Agile et autant de façons de les mettre en œuvre dans une entreprise. Pour autant, une méthodologie commune peut être dégagée. En résumé, développer un produit selon la méthode Agile revient à diviser le travail en une suite d’objectifs atteignables.

Le processus se compose de différentes étapes :

  • Le responsable de projet identifie et définit la nature du projet confié à l’entreprise.
  • Le responsable et l’équipe fixent les exigences liées au projet. On les appelle User Stories (US) pour Histoire utilisateur. Il s’agit de bien les définir et d’établir leur niveau de priorité ainsi que les personnes les plus à même de les mener à bien.
  • Le responsable et l’équipe planifient les itérations, appelées aussi Sprint, c’est-à-dire une suite de cycles courts de développement. A l’intérieur de chaque Sprint sont hiérarchisées les exigences et retours client ainsi que les tâches à accomplir.
  • Tous les membres de l’équipe participent à des réunions quotidiennes, appelées aussi « mêlées » ; les échanges durent une quinzaine de minutes et permettent de faire le point sur ce qui a été fait hier et doit être fait aujourd’hui. C’est aussi le moment d’aborder les éventuels points de blocage, les retards, les problèmes… et les solutions.
  • A la fin de chaque itération a lieu une revue de Sprint: elle sert à évaluer et livrer au client la version du produit à cet instant « T ». Il est alors temps de récolter le feedback du client, c’est-à-dire ses retours, positifs comme négatifs, et de les traiter de façon réactive.
  • Une rétrospective de sprint permet enfin de revenir sur ce qui a été fait, d’en dégager les points forts et les points faibles, de se remettre en question et de perfectionner la méthodologie de travail pour le sprint suivant.

Pour mettre en place une telle méthodologie, il est nécessaire que les membres de l’équipe de développement :

  • Acceptent le changement
  • Collaborent avec les autres services de l’entreprise qui ne sont pas concernés
  • Dialoguent régulièrement et communiquent ouvertement entre eux, dans un climat de bonne entente et d’écoute
  • Soient autonomes dans la gestion du travail et de son avancement

Différents outils sont disponibles sur le marché pour aider les entreprises à accompagner leurs équipes dans la mise en place d’une méthode Agile.