Si vous vous demandez encore comment Microsoft est capable de publier toutes les 3 semaines de nouvelles versions de chacun de ses projets, ou Google mettre à jour ses applications toutes les 1 à 2 semaines, ne cherchez plus… La solution tient en trois mots : méthode Agile scrum.
Ce sont d’ailleurs ces exemples (et les nombreux autres) d’application de la gestion de projet Agile qui expliquent qu’elle fasse tant d’adeptes. Pensée comme l’exact inverse de la méthode de développement de logiciel traditionnelle (ou Waterfall) qui peut courir sur plusieurs mois sans que le projet ne tombe jamais entre les mains de son utilisateur final, la méthode Agile consiste au contraire à aller vite. Et à itérer le produit jusqu’à ce qu’il réponde parfaitement aux besoins de l’user.
Résultat, une étude du Project Management Institute a montré que 65 % des organisations agiles terminaient leurs projets à temps, contre seulement 40 % pour les entreprises non agiles.
Avec des perspectives de développement plus rapide et de produits répondant mieux aux attentes de vos clients, il pourrait sembler logique que votre entreprise souhaite en être… Mais ce serait sans compter les défis que représente cette méthodologie…
Qu’est-ce que la méthode Agile scrum ?
Pour comprendre ce qu’est la méthode Agile scrum (ou plus largement comprendre les différentes méthodologies Agile), il faudrait se plonger dans le manifeste publié en 2001 par 17 spécialistes du développement de logiciels.
Les valeurs Agile, telles qu’elles ont été définies à l’époque, venaient principalement chambouler la méthode qui prévalait alors depuis plusieurs décennies, à savoir la méthode Waterfall. L’idée était alors de replacer les individus et les interactions au centre de chaque projet (plutôt que de prioriser les processus et les outils). Mais aussi et surtout de répondre et de s’adapter au changement, plutôt que de suivre un plan élaboré en début de projet et de s’y tenir coûte que coûte.
En cela, la méthode Agile scrum tire bien son nom de l’adjectif agile (sans majuscule), qui peut être défini comme « la capacité de penser et de tirer des conclusions rapidement; ou acuité intellectuelle. » Adaptée à la gestion de projet, cette méthodologie consiste à reconfigurer rapidement sa stratégie, sa structure, ses processus, son équipe et sa technologie pour créer de la valeur, et protéger la valeur.
Les différentes méthodologies agiles
En pratique, la méthode Agile peut s’appliquer de différentes façons selon les besoins de votre équipe. Parmi ces différents cadres, les plus utilisés sont la méthode Agile Scrum, la Programmation Extrême (ou XP), le développement de logiciels Lean, ou la méthode Kanban.
Scrum, par exemple, est un cadre normatif particulièrement adapté dans la gestion de projets itératifs et incrémentaux. Il consiste à établir une liste de priorités (ou Product Backlog), qui sera réévaluée et hiérarchisée par toute l’équipe après des sprints de 2 à 4 semaines. La méthode Agile Scrum est l’une des plus utilisées, car elle est relativement simple à suivre et à faire évoluer. Elle permet de plus d’identifier rapidement les problèmes, et favorise la collaboration au sein de l’équipe.
Extreme Programming (XP), met quant à elle plutôt l’accent sur la vitesse et la livraison continue. Elle est recommandée pour les petites équipes de développeurs ayant déjà une solide expérience de la méthodologie Agile. Le développement Lean est plus flexible, et se fonde plutôt sur des principes généraux destinés à garantir la valeur réelle du produit final.
Kanban (un terme japonais qui désigne les cartes) mise plutôt sur la visualisation des travaux à effectuer sur le logiciel. A la grande différence de la méthode Agile scrum, il est possible d’ajouter de nouveaux éléments au cours d’un sprint, si les capacités de l’équipe le permettent. C’est donc un cadre plus flexible et adapté aux projets dans lesquels les exigences peuvent changer fréquemment.
Quels sont ses avantages pour la gestion de projet ?
La méthode Agile scrum est un outil de gestion de projet puissant. Sa plus grande force est de répondre de manière plus efficace aux nombreux écueils des méthodologies précédentes (tels que les coûts, le respect des délais, etc.). En réorganisant et en repensant les activités impliquées dans le développement de logiciels, Agile permet surtout d’atteindre ses objectifs d’une manière plus fluide, et plus axée sur l’entreprise.
- Une meilleure qualité. En décomposant le projet en plus petites unités, la méthode Agile permet à votre équipe de se concentrer sur un développement, des tests et une collaboration nettement plus qualitatifs. De plus, en produisant des builds fréquents et en effectuant des tests et des révisions au cours de chaque itération, il est plus facile de détecter et corriger rapidement les défauts, et d’identifier les écarts d’attentes.
- Focus sur la valeur commerciale. Enimpliquant les parties prenantes de l’entreprise dans le processus de développement, la méthode Agile scrum permet de développer des fonctionnalités qui apportent plus de valeur commerciale à votre organisation.
- Focus sur les utilisateurs. Cette méthodologie se base sur les users stories pour définir les fonctionnalités du produit. Elle offre également la possibilité de tester le logiciel en version bêta après chaque sprint. Et donc d’obtenir de précieux commentaires de la part des utilisateurs finaux.
- Une plus grande transparence. Les clients sont impliqués tout au long du projet, et peuvent participer à la hiérarchisation des fonctionnalités, ou encore à la planification des itérations ;
- Une livraison en temps et en heure. Grâce aux sprints (qui ont une durée fixe de 1 à 4 semaines), la méthodologie Agile offre un plus haut degré de prévisibilité ;
- Des coûts et un calendrier prévisibles . De la même manière, le coût d’un projet est plus facile à évaluer, notamment grâce aux estimations fournies avant chaque sprint ;
- Une plus grande capacité de changement . Contrairement à la méthode Waterfall, le modèle Agile s’adapte parfaitement au changement. Bien que l’équipe soit concentrée sur un sous-ensemble fixe de fonctionnalités à chaque itération, il est possible d’affiner ou de redéfinir les priorités à tout moment. Puis de les intégrer au prochain sprint.
Les défis à relever lorsque l’on implémente la méthode Agile scrum
Bien que la gestion de projet Agile présente de nombreux avantages, elle peut être assez complexe à mettre en œuvre au départ. Le tout est que votre équipe soit consciente des nombreux défis qu’elle peut présenter, et prête à faire évoluer ses processus en conséquence.
Dans l’étude State of Agile de 2017, les trois principaux obstacles à l’adoption de la méthode Agile scrum sont les suivants :
- Changer la façon dont votre équipe travaille. Les habitudes ont la vie dure, y compris au travail. Il sera en effet difficile de changer votre culture d’entreprise, en particulier si cette dernière est profondément enracinée. Les êtres humains résistent naturellement aux changements. Et il est donc naturel que vos équipes aient des difficultés à s’adapter (notamment parce qu’une nouvelle méthode implique que la précédente n’était pas la bonne). Pour pallier cet obstacle, il est donc essentiel de bien communiquer sur les raisons d’une telle transition, et sur les avantages que vous pouvez, collectivement, en tirer.
- L’absence de personnel qualifié au sein de l’entreprise. Selon toute vraisemblance, la plupart des personnes impliquées dans la gestion de projet seront novices en matière de cadres et d’outils Agile. Ils ne comprendront pas forcément le principe des users stories (pour ne citer que cet exemple) et hésiteront à se défaire de leurs anciens outils. Il sera donc souvent utile de faire appel à un coach Agile pour faciliter la transition ;
- Le manque d’équipes interfonctionnelles dédiées. Si le manifeste Agile fait énormément référence aux membres techniques de l’équipe, les développeurs (ou codeurs), ne sont pas les seuls métiers nécessaires pour que cette méthodologie fonctionne. Au contraire, les rôles interfonctionnels (qui aident l’équipe à livrer le produit) sont centraux. Ces derniers peuvent être dédiés à la cartographie de la chaîne de valeur, par exemple, ou à l’organisation des différentes itérations. Pour de nombreuses entreprises, il sera donc nécessaire de trouver ses ressources (en interne si possible, ou en externe dans le cas contraire), avant de passer à une méthode Agile de la gestion de projet.
Prêt à profiter du potentiel que la méthodologie Agile peut apporter à votre entreprise ? Découvrez comment Agily peut vous accompagner dans son implémentation, et vous aider à en relever les défis !