Si vous avez déjà été confronté à la gestion de projets, vous avez sûrement entendu parler de la méthode Waterfall. Mais de quoi s’agit-il exactement ? Comment fonctionne l’organisation Waterfall ? Quels sont ses avantages et ses inconvénients ? Ce sont quelques-unes des questions que nous allons aborder dans la suite de cet article.
Sommaire
Méthode Waterfall : définition et origines
Aussi appelée modèle en cascade, elle tient son nom du fait qu’elle suive la logique d’une chute d’eau. Cela signifie qu’il s’agit d’une méthodologie linéaire. Comme dans une chute d’eau, une fois que l’eau a coulé, elle ne peut plus remonter.
Appliquée à la gestion de projets, cette analogie signifie que dès la fin d’une étape, l’équipe passe à l’étape suivante. Avec Waterfall, il n’y a pas, ou alors très peu, de retours en arrière. Il s’agit d’un processus de développement dans lequel le projet est découpé en phases.
Elle a été remise au « goût du jour » par l’informaticien Winston Walker Royce. Il n’en est cependant pas l’inventeur. Dans un essai, il faisait une critique du modèle linéaire, et proposait un modèle itératif et incrémental. Dans son modèle, chaque phase repose sur la phase précédente. De plus, chaque phase vérifie les résultats de la phase précédente. À noter que Royce ne mentionne pas une seule fois le terme de cascade ou Waterfall dans son essai.
Cependant, c’est à partir des phases définies par Royce qu’est basée la méthode en cascade. Contrairement au système proposé par Royce, le modèle en cascade ne prévoit qu’une seule itération.
Waterfall fait partie des méthodes de gestion de projets très structurées. Ce sont des phases linéaires et successives. Chaque phase provoquant la suivante.
Même si l’organisation Waterfall existe depuis près d’un demi-siècle, elle fait toujours partie des méthodologies les plus utilisées en entreprise. Face aux méthodes agiles, qui séduisent de plus en plus, l’organisation Waterfall continue à être plébiscitée pour sa fiabilité. Son fonctionnement très structuré, et la logique de son enchaînement, en fait une méthodologie très adaptée à la gestion de projets. Elle est d’ailleurs particulièrement utilisée dans le secteur de l’informatique, notamment le développement de logiciel.
Comment fonctionne la méthode Waterfall
Depuis son apparition, l’organisation Waterfall s’est développée. Il existe désormais plusieurs versions. Le modèle de Royce reposait sur 7 étapes :
- Exigences système
- Exigences logicielles
- Analyse
- Conception
- Implémentation
- Test
- Exploitation
Cependant, les méthodes utilisées actuellement sont plutôt constituées de 5 ou 6 phases. Généralement les phases 1,2 et 3 de la méthode de Royce sont regroupées en une seule phase appelée : analyse des besoins.
En entreprise, l’organisation Waterfall la plus utilisée repose sur les 5 étapes suivantes :
1 – Analyse : tout projet débute par une phase d’analyse. Il s’agit de savoir quels sont les besoins et de réaliser une étude de faisabilité. Cette dernière permet de créer le cahier des charges, le plan du projet, la budgétisation et si nécessaire un devis pour les clients.
Ensuite, les besoins du client doivent être définis en détail. Il faut définir une analyse réelle et un concept cible. Dans le cadre d’un logiciel, l’analyse réelle dépeint les problèmes. Le concept cible définit les fonctionnalités et les propriétés que le produit logiciel doit avoir pour répondre aux besoins.
Pour finir, cette première étape comprend également une analyse de la définition des besoins. Les problèmes sont décomposés en sous tâches. Et des stratégies de solution sont également définies.
2 – Conception : en se basant sur les stratégies, les besoins et les tâches définies précédemment, l’équipe crée un concept de résolution concret. C’est le moment de l’élaboration de l’architecture logicielle et du plan de construction détaillé du logiciel. Les développeurs se focalisent sur les interfaces, les frameworks… À la fin de cette étape, l’équipe doit avoir un document de conception comprenant le plan de construction logicielle. Mais aussi des plans de test pour chaque élément.
3 – Implémentation : c’est l’étape de réalisation de l’architecture logicielle élaborée lors de l’étape précédente. C’est donc le moment de la programmation du logiciel, de la recherche d’erreurs et des essais de modules. C’est au cours de ce stade que le projet de logiciel est adapté dans le langage de programmation désiré. Chaque composant du logiciel est développé séparément, puis contrôlé avec les essais de modules. Le résultat de cette phase est un produit logiciel. Ce dernier sera testé comme produit global lors de la prochaine étape.
4 – Test : c’est le moment de la livraison du produit sous forme de version bêta. Cela sert à déterminer si le produit répond aux besoins et exigences des clients. Notamment via des tests d’acceptation, élaborés lors de la première étape. Si les essais sont satisfaisants, le logiciel est mis en production pour son exploitation.
5 – Exploitation : Elle comprend la livraison, la maintenance ainsi que l’amélioration du produit.
À qui s’adresse la méthode Waterfall ?
Comme nous l’avons évoqué précédemment, Waterfall est une méthodologie linéaire. Chaque stade dépend du stade précédent. C’est pour cela que l’organisation en cascade est particulièrement adaptée aux projets de construction. Prenons l’exemple de la construction d’une maison. Il faut impérativement avoir fait les fondations de la maison (étape 1) avant de pouvoir commencer les murs (étape 2). Et ainsi de suite.
Waterfall est également très utilisée dans le domaine de l’informatique. Plus particulièrement le développement de logiciels. Cela s’explique notamment par le fait que chaque sortie d’une étape sert d’entrée à l’étape suivante. Cela vient aussi du fait que l’objectif final, le logiciel, est connu en détail dès le début du projet.
En effet, Waterfall est adaptée aux projets dont le résultat final est connu dès le début. Si les objectifs sont clairement identifiés, alors l’organisation en cascade est la mieux adaptée. Sa mise en place est simple, logique et très structurée. De même, cette organisation est particulièrement recommandée si la qualité est plus importante que les délais ou le coût.
Par contre, si votre entreprise a besoin d’une organisation plus souple, il est recommandé de s’orienter vers les méthodologies de gestion de projet agiles. Si vos clients ne savent pas exactement quels sont leurs besoins, alors c’est la bonne solution. En effet, une méthode agile permet des retours en arrière, elle est plus flexible.
La méthode Waterfall convient totalement aux grandes équipes, même si elles ont différentes spécialités.
Avantages et inconvénients de la méthode Waterfall
Avantages
Une structure claire : cette organisation se base sur un système d’étapes explicitement définies. Chaque étape doit être terminée avant que l’équipe puisse entamer la suivante. Tous les obstacles éventuels sont donc rapidement mis en évidence. De plus, la progression de l’organisation en cascade est également intuitive. Les chefs de projets et les membres d’équipe n’ont pas besoin de formation ou de certification pour son déploiement. Contrairement à la méthode scrum par exemple.
L’objectif final est fixé plus tôt : l’objectif doit être défini dès le début. Connaître clairement l’objectif et le délai dès le début permet aux équipes de ne pas s’éparpiller. Et de savoir exactement ce vers quoi elles tendent. À l’inverse de la méthode agile scrum le modèle en cascade permet à l’équipe de rester focalisé sur l’objectif final.
Une communication efficace des informations : la gestion de projets avec l’organisation Waterfall est très méthodique. Elle insiste beaucoup sur la mise en place d’un transfert efficace des informations à chaque phase. C’est pourquoi l’organisation en cascade nécessite la documentation des informations tout au long de la durée de vie du projet. Ceci est crucial dans ce processus, afin que tout nouveau collaborateur puisse facilement se mettre à niveau.
Inconvénients
Les changements sont compliqués : il s’agit d’une méthode linéaire, peu flexible. Si vos objectifs sont amenés à changer en cours de route, cela peut rendre une partie du travail effectué inutile. Il faut donc utiliser cette méthode lorsque vous êtes certains que les objectifs de départ ne risquent pas d’évoluer.
Les clients/utilisateurs sont exclus : le système en cascade n’a pas été pensé avec l’utilisateur ou les acheteurs au centre. L’objectif principal est d’aider les équipes à avancer efficacement à travers les différentes phases. Or, dans certains domaines, les clients aiment être impliqués dans le processus de conception. Il faut donc bien cerner les besoins de vos acheteurs avant d’opter pour cet outil.
Les tests ne se font qu’à la fin : contrairement à d’autres outils, notamment agiles, les essais ne se font que dans la deuxième moitié du processus. Or, à ce stade, le projet est déjà bien avancé. Si les essais ne sont pas concluants, il faudra reprendre le travail qui a déjà été effectué. Ce qui peut engendrer une perte considérable de temps et de ressources. Et représenter un problème pour maintenir les délais.
Méthode Waterfall VS méthode agile
Pour rappel, une méthode agile se base sur un développement itératif. C’est-à-dire sur une répétition de cycle. Le développement de produit et les essais sont récurrents. Ce type de méthode, comme son nom l’indique, est flexible. Elle s’adapte très bien aux changements qui peuvent survenir au cours d’un projet.
Une méthode agile, comme scrum par exemple, permet une meilleure communication entre tous les acteurs du projet. Aussi bien les clients, que les développeurs ou encore toutes les autres parties prenantes du projet.
Avec ces outils, un projet est divisé en plusieurs sprints. Un sprint correspond à un cycle court de développement. Des objectifs sont fixés pour chaque sprint. À la fin de chaque cycle, l’équipe fait le bilan et réalise des tests. Puis elle passe au sprint suivant. Cela permet notamment de régler chaque problème qui se présente au fur et à mesure.
Le client, ou futur utilisateur, est au centre des systèmes agiles. Il peut donc changer ses besoins en cours de route. C’est pour cela qu’à la fin de chaque sprint, le bilan est fait et les objectifs du prochain sprint sont définis.
Le choix de votre solution de gestion de projets dépend notamment de plusieurs critères :
- Les exigences sont-elles stables ou changeantes ? Si elles sont stables, opter pour l’organisation en cascade. Pour les exigences changeantes la solution est un outil agile, comme scrum par exemple.
- Les membres des équipes sont-ils tous au même endroit ? Si les membres peuvent se réunir souvent, alors opter pour la méthode agile.
- Votre client veut-il être impliqué dans le projet ? Si oui, il faut choisir les outils agiles.
- Votre budget et votre planning sont rigides ou souples ? Si vous répondez « rigide » alors la méthode en cascade est adaptée. S’ils sont souples, alors c’est la méthode agile.
- Le projet nécessite-t-il beaucoup de documentation ? Si oui, optez pour Waterfall.
FAQ
Une méthode traditionnelle de gestion de projet se base sur un cycle séquentiel. Cela signifie qu’elle se déroule selon un processus d’étapes fixes :
• Initiation
• Planification
• Exécution
• Suivi
• Clôture
Il s’agit donc principalement de processus linéaires. Avec une organisation stricte du travail et par étapes. Une méthode traditionnelle ne permet généralement aucune rétroactivité. Outre la méthodologie Waterfall, il existe aussi le cycle en V ou encore la méthode PERT (ou TEEP).
Dans le cycle en V, chaque stade du développement est associé à une phase de validation.
La méthode PERT (ou TEEP pour Technique d’Évaluation et d’Examination des Programmes). Il s’agit d’un outil visuel d’organisation. Sous forme graphique, il est possible de représenter l’ordonnancement des étapes d’un projet.
La méthodologie Waterfall est particulièrement adaptée lorsque les objectifs finaux sont fixes et connus dès le début.
Si les différentes phases d’un projet sont clairement délimitées, alors la méthodologie Waterfall est la solution de travail idéale. Si vous êtes certain que les exigences du client ne vont pas changer alors c’est le bon outil. Si votre projet à un cadre bien défini alors la méthodologie Waterfall est adaptée.
Dans le cas de projets avec des objectifs non définis, ou susceptibles d’évoluer au cours du projet. Alors choisissez une solution de travail agile, comme scrum par exemple.
Non, la méthode MOSCOW et la méthode Waterfall ne sont pas des alternatives l’une à l’autre, mais plutôt des approches distinctes utilisées en gestion de projets. La méthode MOSCOW est une technique de priorisation des fonctionnalités, tandis que la méthode Waterfall est un modèle de développement de logiciels basé sur une séquence linéaire d’étapes. Chacune a ses propres objectifs et applications spécifiques dans la gestion de projets.