Si la méthode de gestion de projet waterfall compte encore de nombreux adeptes, de plus en plus de chefs de projets basculent vers une méthode agile comme scrum. Nous allons détailler ici les avantages et les inconvénients de cette méthode de cycle en V, et vous expliquer pourquoi beaucoup recourent maintenant à une méthode agile.
Le développement traditionnel en cascade (ou cycle en V)
La méthode de gestion de projet waterfall, ou « en cascade », ou encore « cycle en V », consiste à passer par une liste d’étapes prédéfinies de façon séquentielle. L’avantage de cette méthode est que l’intégralité du projet est définie et planifie dès le départ, et par conséquent que le budget global est connu.
L’analyse des besoins du client est naturellement toujours la première étape de la méthode de gestion waterfall. Viennent ensuite la rédaction des spécifications fonctionnelles, la construction du budget et la planification des développements. Le processus de développement peut alors débuter avec la création d’une première fonctionnalité, sa validation et/ou son éventuelle correction, puis sa maintenance. Cet enchaînement d’étapes recommence alors séquentiellement, jusqu’à ce que toutes les fonctionnalités demandées par le client aient été réalisées.
Si à l’issue de la dernière livraison, des mises à jour ou des modifications sont nécessaires, le même cycle sera répété.
Quelques problèmes typiques de la méthode de gestion de projet waterfall
Pour commencer, cette méthode implique une analyse complète des besoins avec le client. Si pour des petits projets, cela peut être efficace, dès que la complexité augmente, ce qui arrive vite de nos jours, cette phase peut prendre des semaines, voire des mois. Si l’analyse des besoins prend des mois, et que la livraison du produit fini également, le risque de se retrouver face à un besoin qui a évolué entre temps est grand. L’équipe va donc se retrouver face à des demandes de modifications ou de création de fonctionnalités qui n’étaient pas prévues à l’origine, et rencontrer des difficultés à les prendre en compte parce qu’elles n’auront pas été planifiées.
L’équipe ne dispose donc d’aucune souplesse dans la réalisation du projet, puisqu’avec un déroulement séquentiel, la réalisation d’une fonctionnalité dépend des réalisations précédentes. Il est donc particulièrement complexe de prendre en compte toute demande de changement, car elle aura un impact sur les développements courants et futurs, et nécessitera de revenir sur des fonctionnalités déjà en place, avec tous les effets négatifs que cela peut engendrer.
Pourquoi s’orienter vers une méthode agile comme Scrum ?
Si la méthode de gestion de projet waterfall nous paraît si logique est naturelle, c’est que nous l’utilisons tous les jours. Elle nous permet de planifier nos congés, des voyages ou encore des loisirs, de construire un fichier Excel correspond à un besoin…
En revanche, dans la gestion d’un projet, elle devient rapidement inadaptée. Avec une méthode agile, l’approche va être différente. Comme nous l’avons vu, l’inconvénient d’une planification complète comme celle faite dans le cadre d’une gestion de projet waterfall, c’est qu’elle ne laisse aucune place à l’imprévu. Si la demande du client est modifiée, ou que les conditions de réalisation changent (départ d’une personne de l’équipe projet par exemple), toute l’organisation doit être revue et risque d’engendrer des dépassements budgétaires et des retards de livraison.
Une démarche agile comme la méthodologie scrum va permettre d’apporter de la souplesse par rapport à une gestion de projet waterfall. Le projet va lui-même être découpé en étapes (pouvant chacune représenter un petit projet) aboutissant à la réalisation d’une fonctionnalité. L’objectif fixé, au lieu d’être à long terme, va au contraire devoir être réalisé dans un délai beaucoup plus court. La suite du projet sera ainsi planifiée en fonction de la réalisation précédente.
A chaque étape, il y a une livraison testée. Si le test est concluant, on passe à la fonctionnalité suivante, sinon, on corrige. De cette façon, les développements déjà effectués seront validés à chaque étape et les nouveaux objectifs fixés en fonction des demandes et des ressources disponibles. L’approche est donc beaucoup plus souple puisqu’il est beaucoup plus facile de d’adapter aux changements, qui s’agisse des demandes du client ou de l’équipe qui évoluent.
Pour conclure sur la gestion de projet Waterfall cycle en V vs Agile
Adopter une méthode agile comme scrum plutôt qu’une gestion de projet waterfall va apporter de la souplesse, qui est notamment nécessaire pour prendre en compte la complexité croissante des applications demandées. Les tests en continu et les objectifs courts vont améliorer la qualité finale et augmenter la productivité de l’équipe. Au final, le projet prendra moins de temps, et son budget sera mieux contrôlé.
=> Découvrez Nutcache, votre logiciel de gestion de projet Agile en ligne!