Pour mener un projet à bien et atteindre ses objectifs, une gestion rigoureuse est indispensable. Les méthodologies comme Agile et Scrum sont largement adoptées, notamment dans les projets IT, pour leur flexibilité et leur efficacité. Cet article explore en profondeur la méthode Agile, en détaillant ses principes, ses spécificités, et son application dans divers contextes.
Introduction à la Méthode Agile
La méthode Agile est un ensemble de méthodologies de gestion de projet créé par un groupe d'experts en développement logiciel aux États-Unis en 2001. Elle a pour principe objectif de rendre la gestion de projets plus performante et souple. Pour ce faire, la méthode Agile repose essentiellement sur la communication et l'humain. Elle implique le client dans le processus de développement du produit, ce qui aide à garantir sa satisfaction au terme du projet.
Il est crucial de comprendre que le terme "méthode" est trop réducteur. Il s'agit plutôt d'un paradigme agile, d'un état d'esprit agile, d'une philosophie agile, d'une culture Agile ou encore d'une approche agile. On parle cependant de "méthodes agiles" pour définir les méthodes qui relèvent de ce courant.
Les Fondements de l'Approche Agile
L'Agilité : Une Alternative aux Méthodes Traditionnelles
Le terme "agile" définit une approche de gestion de projet qui prend le contre-pied des approches traditionnelles prédictives et séquentielles de type cycle en V ou waterfall (en cascade). La notion même de "gestion de projet" est remise en question au profit de "gestion de produit". De façon à raisonner davantage "produit" que "projet". Après tout, l'objectif d'un projet consiste bien à donner naissance à un produit.
Une approche dite "traditionnelle" attend généralement du client une expression détaillée et validée du besoin en entrée de réalisation, laissant peu de place au changement. La réalisation dure le temps qu'il faut et le rendez vous est repris avec le client pour la recette. Cet effet tunnel peut être très néfaste et conflictuel, on constate souvent un déphasage entre le besoin initial et l'application réalisée. On se rapporte alors aux spécifications validées et au contrat. Certains projets se terminent dans la douleur (surtout dans le cadre d'un contrat au forfait classique) au risque de compromettre la relation client. De plus, il n'est pas rare que certaines fonctionnalités demandées se révèlent finalement inutiles à l'usage alors que d'autres, découvertes en cours de route, auraient pu donner plus de valeur au produit.
Lire aussi: Tout savoir sur le déclenchement de l'accouchement
Constat des Approches Traditionnelles
Une enquête de 1994 du « Standish Group » fait le constat suivant : « 31 % des projets informatiques sont arrêtés en cours de route, 52 % n'aboutissent qu'au prix d'un important dépassement des délais et du budget tout en offrant moins de fonctionnalités qu'il n'en était demandé ; seuls 16 % des projets peuvent être considérés comme des succès. ».
Cette même enquête renouvelée en 2008 indique un taux de réussite de 35%, ce qui est plutôt positif mais demeure très faible. Le problème reste entier. Parmi les motifs d'échecs, arrivent en tête :
- Manque d'implication des utilisateurs finaux : 12,8 %.
- Changements de spécifications en cours de projet : 11,8 %.
L'Adaptabilité au Cœur de l'Agilité
L'approche Agile propose au contraire de réduire considérablement voire complètement cet effet tunnel en donnant davantage de visibilité, en impliquant le client du début à la fin du projet et en adoptant un processus itératif et incrémental. Elle considère que le besoin ne peut être figé et propose au contraire de s'adapter aux changements de ce dernier. Mais pas sans un minimum de règles.
Fonctionnement des Méthodes Agiles
Les méthodes agiles partent du principe que spécifier et planifier dans les détails l'intégralité d'un produit avant de le développer (approche prédictive) est contre productif. Cela revient à planifier dans les détails un trajet "Paris - Narbonne" en voiture par les petites routes. Spécifiant chaque villes et villages traversés, l'heure de passage associée, chaque rue empruntée dans les agglomérations, litres d'essence consommés, kilomètres parcourus, etc. Les imprévus ne manqueront pas d'arriver : embouteillages, déviations, travaux, sens de circulation inversés, voire la panne, etc. Rendant votre planification et vos spécifications très vite obsolètes. Combien de temps aurez vous passé à planifier cet itinéraire, comment réagirez vous face à vos frustrations de ne pas pouvoir appliquer votre plan à la lettre ?
L'idée consiste à se fixer un premier objectif à courts termes (une grande ville par exemple) et se lancer sur la route sans tarder. Une fois ce premier objectif atteint, on marque une courte pause et on adapte son itinéraire en fonction de la situation du moment. Et ainsi de suite jusqu'à atteindre la destination finale. On parle donc d'une approche empirique.
Lire aussi: La technique de Cohen en césarienne
Dans le cadre d'un projet de développement logiciel, le client élabore sa vision du produit à réaliser et liste les fonctionnalités ou exigences de ce dernier. Il soumet cette liste à l'équipe de développement, communique directement avec elle (plutôt que par papier) qui estime le coût de chaque élément de la liste. On peut ainsi se faire une idée approximative du budget global.
L'équipe sélectionne ensuite une portion des exigences à réaliser dans une portion de temps courte appelée itération. Chaque itération inclut des travaux de conception, de spécification fonctionnelle et technique quand c'est nécessaire, de développement et de test. A la fin de chacune de ces itérations, le produit partiel mais utilisable est montré au client. Ce dernier peut alors se rendre compte par lui même très tôt du travail réalisé, de l'alignement sur le besoin. L'utilisateur final quant à lui peut se projeter dans l'usage du produit et émettre des feedbacks précieux pour les futures itérations. La visibilité ainsi offerte est clef. Cette transparence peut également apporter davantage de confiance et de collaboration dans la relation client/fournisseur. Les risques quant à eux sont levés très tôt.
Si le client a priorisé avec soin son besoin, il peut saisir l'opportunité d'accélérer le "time to market" si il estime que le produit en l'état (partiel) peut aller en production. Économisant ainsi son budget et récoltant un premier retour sur investissement. Il a aussi la possibilité de changer en cours de route la priorité des fonctionnalités qui n'ont pas encore été développées (prévues pour les itérations futures). Afin de retarder une fonctionnalité dont le besoin n'est pas mûr, ajouter une nouvelle fonctionnalité cruciale en échange du retrait d'une autre (respectant ainsi budget et délais), etc.
Cette souplesse ainsi offerte est donc un véritable atout pour le client.
Historique et Évolution des Méthodes Agiles
Les Racines de l'Agilité
Sans rentrer dans les détails, la première chose à savoir est que l'approche Agile n'est pas un effet de mode né de la dernière pluie. En effet la première approche de gestion de projet de développement itératif date de 1986. La première mise en œuvre de la méthode Scrum (la méthode Agile la plus utilisée, documentée et éprouvée aujourd'hui) date de 1993.
Lire aussi: Alternatives à l'accouchement
Le Manifeste Agile : Un Tournant Culturel
La seconde concerne un événement majeur rassemblant, en 2001, dix sept figures éminentes du développement logiciel pour débattre du thème unificateur de leurs méthodes respectives. De cet événement est né le Manifeste Agile rassemblant à la lueur des expériences de chacun les critères pour définir une nouvelle façon de développer des logiciels. Le terme "Agile" pour qualifier ce type de méthode est également né à cette occasion.
Aujourd'hui ces méthodes ont fait leurs preuves. Tout le monde (dans le monde de l'informatique) ou presque a au moins entendu parler d'une méthode Agile (Scrum, eXtreme Programming, RAD, Chrystal Clear,…). L'outillage associé est maintenant disponible sur le marché y compris dans le secteur Open Source. Les formations, certifications, conférences, livres, blogs se sont multipliés.
Reconnaissance et Adoption Croissante
Nous pouvons également noter la prise de position en faveur de l'approche Agile de la part des organismes faisant "autorité" en matière de gestion de projet informatique :
- Le SEI à l'origine de CMMI en 2008. Voir le rapport "CMMI or Agile: Why Not Embrace Both!".
- Le PMI quant à lui créé en 2011 ses propres certifications Agile.
- En 2012, le Gartner invite à abandonner le Cycle en V.
Le Manifeste Agile : Un Changement Culturel
Le manifeste Agile contient l'essence et la philosophie de l'approche en question. Il illustre à lui seul le changement culturel profond qui est en jeu.
Manifeste Agile
Nous découvrons comment mieux développer des logiciels par la pratique et en aidant les autres à le faire. Ces expériences nous ont amenés à valoriser :
- Les individus et leurs interactions plus que les processus et les outils
- Des logiciels opérationnels plus qu’une documentation exhaustive
- La collaboration avec les clients plus que la négociation contractuel
- L’adaptation au changement plus que le suivi d’un plan
Nous reconnaissons la valeur des seconds éléments, mais privilégions les premiers.
Principes Sous-jacents au Manifeste Agile
Nous suivons ces principes :
- Notre plus haute priorité est de satisfaire le client en livrant rapidement et régulièrement des fonctionnalités à grande valeur ajoutée.
- Accueillir positivement les changements de besoins, même tard dans le projet. Les processus Agiles exploitent le changement pour donner un avantage compétitif au client.
- Livrer fréquemment un logiciel opérationnel avec des cycles de quelques semaines à quelques mois et une préférence pour les plus courts.
- Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet.
- Réaliser les projets avec des personnes motivées. Fournissez-leur l’environnement et le soutien dont ils ont besoin et faites-leur confiance pour atteindre les objectifs fixés.
- La méthode la plus simple et la plus efficace pour transmettre de l’information à l'équipe de développement et à l’intérieur de celle-ci est le dialogue en face à face.
- Un logiciel opérationnel est la principale mesure d’avancement.
- Les processus agiles encouragent un rythme de développement soutenable. Ensemble, les commanditaires, les développeurs et les utilisateurs devraient être capables de maintenir indéfiniment un rythme constant.
- Une attention continue à l'excellence technique et à une bonne conception renforce l’agilité.
- La simplicité - c’est-à-dire l’art de minimiser la quantité de travail inutile - est essentielle.
- Les meilleures architectures, spécifications et conceptions émergent d'équipes auto-organisées.
- À intervalles réguliers, l'équipe réfléchit aux moyens de devenir plus efficace, puis règle et modifie son comportement en conséquence.
Le Framework Scrum : Une Application Concrète de l'Agilité
Scrum est de très loin le framework le plus utilisée parmi les méthodes agiles existantes. Il est donc très éprouvé, documenté et supporté. Livres, blogs, formations, vidéos, associations, conférences traitant de Scrum ne manquent pas et bon nombre de ces ressources sont accessibles gratuitement. On pourrait pratiquement parler d'un standard Agile. Un autre atout important : Scrum est simple à comprendre. Sa maîtrise est en revanche difficile.
Scrum est considéré comme un cadre de travail ou « framework ». Ce cadre est constitué d'une définition des rôles, de réunions et d'artefacts.
Les Rôles dans Scrum
Scrum définit 3 rôles :
- Le « Product Owner » qui porte la vision du produit à réaliser (représentant généralement le client).
- Le « Scrum Master » garant de l'application de la méthodologie Scrum.
- Les Développeurs qui réalisent le produit.
Les Réunions Scrum
La vie d'un projet Scrum est rythmée par un ensemble de réunions clairement définies et strictement limitées dans le temps (timeboxing):
- Planification du Sprint (Sprint = itération) : au cours de cette réunion, l'équipe de développement sélectionne les éléments prioritaires du « Product Backlog » (liste ordonnancée des exigences fonctionnelles et non fonctionnelles du projet) qu'elle pense pouvoir réaliser au cours du sprint (en accord avec le « Product Owner »).
- Revue de Sprint : au cours de cette réunion qui a lieu à la fin du sprint, l'équipe de développement présente les fonctionnalités terminées au cours du sprint et recueille les feedbacks du Product Owner et des utilisateurs finaux. C'est également le moment d'anticiper le périmètre des prochains sprints et d'ajuster au besoin la planification de release (nombre de sprints restants).
- Rétrospective de Sprint : la rétrospective qui a généralement lieu après la revue de sprint est l'occasion de s'améliorer (productivité, qualité, efficacité, conditions de travail, etc) à la lueur du "vécu" sur le sprint écoulé.
Les Marqueurs de l’Agilité en Management de Projets
En matière de gestion de projets, l’Agilité est une démarche qui se matérialise fondamentalement par le choix et le déploiement d’une méthode de travail spécifique. Il existe plusieurs méthodes comme le Scrum (projets de développement informatiques, le Lean (projet d’amélioration des processus) ou le Timeboxing (projets d’amélioration des pratiques). Ces méthodes s’appuient sur des marqueurs très précis, parfaitement décrits et documentés à ce jour :
- Un périmètre orienté par le client et basé sur la description d’usages plutôt que de besoins (Uses cases)
- Une description normée de l’usage (User story), généralement exprimée sur le format : ‘en tant que …’, ‘je veux que …’, ‘afin de …’
- Une animation spécifique réalisée autour du client, de sa présence soutenue, de moyens dédiés et d’un animateur clairement identifié (Scrum master pour le Scrum management ou Animateur green ou black belt pour le lean management)
- Une évaluation des priorités, collectivement établie et qui peut s’appuyer sur des ‘outils’ spécifiques (Planning poker, T-shirt sizing, par exemples)
- Un suivi facilité qui se réalise à travers des outils de management visuels (Kanban notamment)
- Des indicateurs spécifiques (Vélocité et Burndown par exemples)
Agilistes ou Agilo-sceptiques ?
On le sait les démarches de gestion opposent quasi-systématiquement les ‘promoteurs’ aux ‘réfractaires’ ! Je vous présente d’ailleurs les ‘fans absolus de l’Agilité’ nommés les Agilistes, et les ‘réfractaires' dits les Agilo-septiques (généralement septiques et promoteurs d’autres approches comme la gestion de projets dite ‘waterfall’, en cascade).
Où Mettre le Curseur de l’Agilité ?
Les marqueurs de l’Agilité ne sont pas contestables. Ils ont d’ailleurs toujours été édictés en gestion de projets, mais la gestion de projets ‘classique’ s’en est éloignée. Les référentiels comme le PMBok (Project Management Body of Knowledges) du PMI (Project Management Institute), promeuvent depuis toujours ces marqueurs comme des facteurs de succès.
L’Agilité a réussi à les simplifier et les ‘marketer’, c’est un fait ! C’est un succès, mais il ne faut pas pour autant opposer les deux approches. Ce n’est pas parce que la formalisation d’un ‘cycle en V’ est plus longue à comprendre et à décrire qu’elle est moins efficace qu’un ‘Sprint Agile’ ! Comme souvent, c’est la capacité de votre ‘Management’, à positionner le curseur entre les deux approches et sa capacité à clarifier les interfaces entre l’Agilité et la gestion de projets ‘classique’ qui fera la différence : bref, une gestion de projets ‘Hybride’ !
- Des projets plus courts, mieux maîtrisés
- Un pilotage par le ROI (retour sur investissement)
- Une implication du client plus soutenue
- Des livrables très clairement identifiés plutôt que des ambitions
- Plus de place aux échanges et collaborations qu’au formalisme
- Chaque fois que cela est possible un management plus visuel et efficace
Quel Logiciel de Gestion de Projets Choisir ?
Vous avez déjà intégré l’Agilité dans votre management ou vous souhaitez le faire ? Alors vous avez déjà et/ou vous êtes probablement sur le point de choisir un outil de gestion des projets. En effet, on recense +/- 400 outils de ce type sur le marché ! Le schéma ci-dessous vous permet de les classer en 4 grandes catégories.
- LES ‘COLLABORATIFS’ sont Agiles, par principe, mais ils ne vous permettront pas d’avoir une démarche de gestion du portefeuille des projets. La tâche et la collaboration sont au centre de ces outils qui ne permettent pas de maîtriser l’approche globale. De plus ils peinent aujourd’hui à trouver leur place eu égard la prégnance de Microsoft Teams par exemple qui les concurrence largement.
- LES ‘INFORMATIQUES’ sont Agiles, par nature et vocation, mais ils ne vous seront d’aucun intérêt si vous souhaitez piloter des projets à partir des métiers et/ou en les impliquant concrètement dans leur rôle de leader du projet ‘global’, au-delà de ses impacts dans le système d’informations. Le ‘Ticket’ est au centre de ces outils qui ne répondent pas à la maîtrise de l’enjeu de transversalité et qui valorisent plutôt une culture des moyens que des objectifs.
- LES ‘INTEGRES’ ne peuvent pas être considérés comme ‘Agiles’. Ils offrent une couverture fonctionnelle plus proche du pilotage des processus, des ERP ou des CRM. Dans ces outils, le management des projets est un ‘processus’ arrimé aux finances, aux ressources et aux fonctions de production. Ne serait-ce que pour les déployer, on s’écarte des marqueurs de l’Agilité : Plusieurs mois et plusieurs dizaines de milliers d’euros / Lourde conduite du changement dans la gestion des projets !
- LES ‘GOUVERNANCES’ sont focalisées sur le pilotage du Portefeuille de projets. Ils offrent à minima des outils de pilotage Agile, et certains vont même jusqu’à faire cohabiter différentes méthodes de gestion. Le projet est au centre de ces outils qui permettent de gérer chacun des projets et de consolider les données des projets dans des outils de pilotage de l’activité et de prise de décisions.
Avantages Clés de la Méthode Agile
- Contrôle Qualité Permanent: La qualité est la responsabilité de tous. Le travail livré au client à la fin de chaque sprint doit être fini à 100% et opérationnel.
- Démarche Orientée Client et Produit: En s’adaptant continuellement au changement, on s’assure de développer un produit qui colle au plus près aux attentes et exigences des clients et utilisateurs finaux. C’est ce qu’on appelle la démarche orientée client, ou orientée produit.
- Collaboration et Communication Fréquente avec le Client: L’équipe projet agile est en relation constante avec le client, les utilisateurs finaux et l’ensemble des parties prenantes du projet.
Les Méthodologies Agiles : Un Aperçu
Lorsqu’on parle de méthode agile, il est en fait plus correct de parler des méthodes agiles. Ainsi, la méthode agile est bien plus qu’une méthode. C’est plutôt une philosophie, un paradigme, une toute nouvelle culture à adopter.
- Scrum: Scrum est une méthodologie de gestion de projet structurée, se basant sur l’empirisme, et relativement simple à comprendre, ce qui explique pourquoi elle est la plus adoptée.
- Kanban: La méthodologie Kanban s’inspire du système mis en place chez Toyota et du Lean management. Elle est parfois appelée la « méthode des post-it ».
- Scrumban: Comme son nom l’indique, la méthodologie Scrumban est un mix entre les méthodologies Scrum et Kanban.
- XP, ou Extreme Programming: La méthodologie XP, ou Extreme Programming, est une méthodologie agile de développement de logiciels informatiques.
Idées Reçues sur l'Agilité
- Agile = Anarchique > FAUX: Il y a un cadre à respecter lorsqu’on travaille en mode agile. Mais il est moins rigide et plus souple que celui des approches de gestion de projet traditionnelles.
- L’agilité, c’est pour les petits projets: Les équipes agiles sont volontairement à effectif réduit, afin de faciliter la collaboration et l’adaptation face aux changements. Mais elle se prête aussi bien à de petits projets qu’à de gros projets complexes.
Le Rôle du Chef de Projet Agile
Un chef de projet agile est une personne chargée de diriger une équipe de développement de logiciels en utilisant une approche agile. L’objectif du chef de projet agile est de favoriser la collaboration entre les membres de l’équipe et les parties prenantes du projet, de promouvoir une communication efficace et de maintenir une certaine flexibilité afin de répondre aux changements qui peuvent survenir en cours de développement.
Le chef de projet agile doit être capable de comprendre les principes et les valeurs de l’agilité, ainsi que les différentes méthodes agiles utilisées dans le développement de logiciels, comme Scrum ou Kanban. En travaillant avec son équipe, le chef de projet agile doit s’assurer que le projet avance de manière itérative, en suivant les principes de l’agilité, et en veillant à ce que les objectifs du projet soient atteints dans les délais impartis.
Compétences Clés d’un Chef de Projet Agile
- La connaissance des méthodes Agiles telles que Scrum et Kanban
- La capacité à travailler en équipe
- La communication efficace et la résolution de problèmes.
- Avoir une formation en gestion de projet Agile
- Une certification professionnelle telle que la certification PMI-ACP (Project Management Institute - Agile Certified Practitioner)
Pourquoi l'Agilité est Essentielle Aujourd'hui
De nos jours, la méthode agile est avant tout un état d'esprit adopté par les entreprises pour mieux cerner et satisfaire le rythme des changements des besoins clients. Cette approche devient de plus en plus incontournable dans le monde d’aujourd’hui.
Passer en mode Agile est l’assurance de satisfaire les besoins de plus en plus changeants du client. L'état d'esprit Agile permet une meilleure communication au sein d’une équipe intégrée client + développement ainsi qu'un plus grand engagement de ses membres.
L'Importance de la Gestion de Projet Agile dans le Contexte Actuel
Les projets sont de plus en plus importants à l'avenir. En effet, les organisations et les entreprises continuent à faire face à des défis et des opportunités complexes qui nécessitent une gestion de projet efficace. C'est dans ce contexte que le concept de "VUCA", qui représente la volatilité, l'incertitude, la complexité et l'ambiguïté, prend tout son sens. Ce concept, qui a été utilisé pour la première fois en 1987, s'appuyant sur les théories de leadership de Warren Bennis et Burt Nanus, permet aux leaders de développer des compétences d'adaptabilité, d'agilité et d'amélioration continue pour mieux gérer les changements rapides, prendre des décisions éclairées dans des situations incertaines, comprendre et gérer la complexité des systèmes interdépendants, et s'adapter à des situations ambiguës avec flexibilité et créativité.
tags: #méthode #agile #pmi #définition
