Méthode agile : définition, avantages, limites et bonnes pratiques

Une chose est sûre, la gestion de la complexité est devenue incontournable aujourd’hui ! Même si tout le monde préférerait évidemment s’en passer, la réalité de notre monde est telle qu’y réussir n’est plus aussi simple qu’avant : tout va très vite désormais, de nouveaux concurrents apparaissent constamment, de nouvelles normes et réglementations aussi, la digitalisation s’accélère dans tous les secteurs et les partenariats se multiplient pour mieux survivre dans une économie mondialisée… Les entreprises ont compris que leur environnement changerait constamment sans qu’elles puissent le maîtriser et qu’elles devaient avancer en permanence sans pouvoir tout anticiper, ni prévoir et surtout, sans attendre plusieurs mois pour avoir des résultats.

La nécessité de s’adapter en permanence est donc devenue vitale puisque tout va changer ! Il faut l’intégrer et les méthodes agiles sont parfaitement adaptées à cet enjeu qui exige de penser différemment. Mais faire de l’agile pour faire de l’agile, ce serait ridicule ! On ne peut tourner le dos à des positions dogmatiques pour en créer une nouvelle, et l’agile est avant tout une philosophie que l’on doit s’approprier si l’on veut pouvoir la déployer avec succès auprès des équipes. Voyons donc comment…

Méthodologies et Framework agiles : un peu d’histoire et de définitions…

Toutes les méthodes agiles prennent leurs racines dans le « Manifeste agile » créé en 2001 par dix-sept spécialistes du développement logiciel qui estimaient que les cycles de développement traditionnels ne correspondaient plus aux contraintes et aux exigences des organisations en évolution rapide. Leur objectif était de maintenir au cœur du projet le besoin utilisateur tout en créant une dynamique d’interactions ultra-positives avec le client final pour avoir une plus grande créativité et flexibilité. Concrètement, ils préconisaient de scinder le projet de développement en sous-parties avec des objectifs associés pour pouvoir valider progressivement l’adéquation de l’application au besoin du client final et réajuster les travaux si nécessaire selon son retour.

La méthode agile est donc née sur une volonté d’améliorer le dialogue entre les parties prenantes et notamment celles à la source du besoin. En maintenant une capacité d’adaptation permanente dans le projet pour livrer un logiciel fonctionnel plus adapté, l’objectif était aussi de supprimer l’effet tunnel que l’on connaissait parfois dans les projets où les délais explosaient dès qu’un nouveau besoin survenait car les méthodologies étaient trop rigides pour les prendre en compte efficacement. L’agile permet donc d’en finir avec les projets trop longs voire sans fin.

Vingt ans après, ce constat et ces valeurs fondamentales restent toujours autant d’actualité et les principales méthodologies et Framework agiles se sont imposés dans les entreprises et les organisations publiques. Selon le rapport sur l’état d’adoption des méthodes agiles dans les entreprises établi par CollabNet VersionOne en 2019, Scrum serait la méthode la plus utilisée pour les projets mono-équipe et SAFe gagnerait du terrain dans les projets agiles multi-équipes (voir l’article sur developpez.com)…

La méthode Scrum

Le Framework Scrum est de loin le plus répandu. Scrum vise à découper le projet en cycles ou étapes de développement appelés « sprints » et dont la durée se compte la plupart du temps en jours. Chaque sprint prévoie ainsi de traiter un périmètre de tâches ou de besoins qui constituent ce qu’on appelle le « backlog » et se termine par une démonstration de ce qui a été réalisé. Très utilisée dans les projets de développement logiciel mono-équipe, la méthode Scrum est aujourd’hui davantage challengée par d’autres méthodes dans le pilotage de projets complexes multi-périmètres et multi-équipes.

La méthode Kanban

Inventée dans les années 50 chez Toyota pour produire en juste-à-temps, la méthode Kanban est apparue bien avant le Manifeste agile. Considérant les processus de manière évolutive, elle est très simple d’utilisation et repose sur un management visuel du projet en temps réel. Chaque flux de production ou chaque tâche dans un projet est indiqué sur un post-it qui va se déplacer parmi quatre colonnes : à l’étude, à faire, en cours et fait. Chaque membre de l’équipe sait ainsi précisément ce sur quoi il doit travailler et voit en permanence l’état d’avancement du projet. La méthode Kanban met ainsi la dimension collaborative au cœur de la réussite du projet grâce à une communication simple et transparente, accessible en temps réel.

La méthode SAFe

Dès que les projets se complexifient dans des environnements multi-entités ou multi-entreprises réunissant de nombreuses personnes, la méthode SAFe pour Scaled Agile Framework peut être intéressante car elle repose sur trois notions : l’équipe, le programme et le portefeuille. Chaque équipe peut ainsi travailler sur des projets différents qui seront ensuite mis en commun dans le cadre de portefeuilles et de programmes. Inventée en 2011 sur la base des méthodes agiles qui existaient déjà comme Scrum et Kanban, SAFe connait actuellement un beau succès dans les grandes organisations où elle permet de faciliter le pilotage de programmes de transformation numérique à plus grande échelle.

L’agile : une philosophie pour définir une nouvelle manière de travailler

A l’inverse d’autres méthodologies projet, l’agile est avant tout une philosophie dont on doit être convaincu pour qu’elle fonctionne. Par rapport au cycle en V qui suppose de tout prévoir en amont, l’agile apporte une façon de travailler différente, on avance avec ce qu’on sait mais on sait s’adapter en permanence. Les équipes et notamment les managers doivent ainsi accepter qu’ils ne peuvent pas tout maîtriser pour créer de manière itérative et répondre aux enjeux de flexibilité et d’adaptation.

En revanche, si l’agile permet de se re-router, il est crucial de bien garder la vision et la cible à atteindre définie au départ, sinon le risque d’échouer serait élevé. De plus, ce cheminement non linéaire et cette capacité de remise en cause peuvent rentrer en conflit dans certaines organisations dont la culture repose sur des processus devenus trop lourds. Il est alors essentiel de s’appuyer sur les valeurs d’écoute, de dialogue et de bienveillance qui sont également au cœur de la méthode agile pour accompagner le changement auprès des équipes.

C’est pour cela que l’on ne peut pas faire de l’agile pour faire de l’agile ! Les équipes doivent être appuyées par des sponsors pour évoluer, apprendre à se remettre en cause et bénéficier d’un droit à l’erreur avec la bienveillance de leur management.

Méthode agile : dans quel cas faut-il l’utiliser ?

Dans le contexte actuel, il est de plus en plus rare que le besoin ne soit pas à challenger en cours de route. Là où les approches avec un cycle en V reposent sur des certitudes par rapport à ce qu’il y avait à développer, la méthode agile va plutôt poser des éléments clés sur lesquels s’appuyer tout en se laissant une grande souplesse d’adaptation :

  • La vision produit restera le cap constant vers lequel toute l’équipe va tendre et ne bougera pas durant le développement.
  • Les parcours utilisateurs vont quant à eux se perfectionner au fur et à mesure des cycles de développement et de la maturation du besoin client.

Se laisser des possibilités en cours de développement pour intégrer de nouvelles choses ou réorienter des priorités suite à des arbitrages est vraiment la clé, cela permet d’adapter l’UX et l’UI au fur et à mesure, voire même la profondeur fonctionnelle. On comprend donc que si le besoin est très clair et quasi figé dès le départ, donc peu susceptible d’évoluer, alors l’agile ne créera pas de valeur.

Il faut que le projet soit conséquent pour que le jeu en vaille chandelle. En effet, mettre en place une méthode agile ne s’improvise pas et implique toute une organisation, voire une évolution des processus et de la culture d’entreprise comme nous l’expliquions. Si le projet est court et rapide, cela peut vite devenir disproportionné. En revanche, si les projets intègrent des démarches d’amélioration continue ou s’inscrivent dans le cadre de programmes de transformation numérique multi-domaines, les avantages seront nombreux tant sur l’efficience globale de toute l’organisation que sur la simplification du travail des utilisateurs. Alors n’hésitez pas à vous lancer si ce n’est pas encore fait !