Aujourd’hui, choisir une méthode de gestion est primordial pour structurer un projet. Bien qu’il en existe une multitude, nous allons aborder les méthodes traditionnelles et les méthodes Agiles, qui sont les plus populaires auprès des chefs de projet.
Plusieurs parties prenantes rentrent en compte dans la réalisation d’un projet. Tout d’abord, il y a le client/décideur que l’on va nommer « maîtrise d’ouvrage » ou MOA. Il y a également la maîtrise d’œuvre (MOE) qui correspond à l’exécutant. Nous verrons comment ces deux parties interagissent et sont impliquées dans le projet en fonction de la méthode utilisée.
Bien que ces deux types de méthodes reposent sur les des principes et des valeurs opposés, elles ont un point en commun, le bon déroulement du projet.
Quelles sont les méthodes traditionnelles ?
Les méthodes traditionnelles appliquent un processus séquentiel et linéaire. Autrement dit, pour passer d’une étape à une autre, il faut valider la précédente. L’ensemble du projet est structuré par une documentation précise et validée dès le début du projet.
Dans les méthodes traditionnelles, nous allons retrouver le modèle en cascade, aussi appelé Waterfall. Cette dernière fonctionne en 6 étapes clés linéaires :
Légende : Schéma du modèle Waterfall
Dérivé de la méthode Waterfall, le cycle en V reprend le même principe de gestion séquentielle et linéaire. Ce modèle de projet tient son nom du fait qu’il est schématiquement représenté sous la forme d’un V, composé d’une phase descendante, la conception, et d’une phase ascendante, la validation. Chaque étape de conception est associée à une étape de validation et la jonction entre ces 2 phases est la réalisation.
Légende : Schéma du Cycle en V ; Source : Manager Go !
Ces différentes phases sont composées de 9 étapes au total :
Conception :
• Définition des besoins
• Spécifications
• Conception générale
• Conception détaillée
Réalisation :
• Réalisation
Validation :
• Tests unitaires
• Tests d’intégration
• Validation
• Recette
Les méthodes Agiles, qu’est-ce que c’est ?
En février 2001, 17 experts américains en développement logiciel se réunissent et mettent en commun leurs différentes méthodes. De cette collaboration, naît le « Manifeste Agile » qui détermine les principes de base (au nombre de 12) et les valeurs (au nombre de 4) des méthodes Agiles. On parle ici d’un processus itératif, qui permet de revenir plusieurs fois sur les différentes étapes d’un projet.
Légende : Exemple de fonctionnement d’un sprint en méthode Agile SCRUM ; Source : Thomas ROSSIER
Bien que le schéma ci-dessus provient de la méthode Scrum, il s’applique également aux autres méthodes Agiles (Kanban, Extreme Programming (XP), Crystal Clear, etc.). En effet, il n’existe pas de schéma général pour les méthodes Agiles, mais ces dernières reposent sur les mêmes principes.
Les méthodes Agiles offrent une meilleure visibilité et une plus grande flexibilité dans la gestion d’un projet. De ce fait, l’équipe est plus réactive aux attentes du client et modifie régulièrement le produit selon les directives du client.
Ces méthodes se reposent sur une approche itérative où le processus est divisé en courtes étapes nommées itérations (ou sprints). Chaque itération dure, en moyenne, entre 1 à 4 semaines durant lesquelles les équipes se focalisent sur la livraison du produit dans un délais impartis. Chaque étape doit être validée par le client pour pouvoir passer à la suivante.
Enfin, cette méthode privilégie les échanges avec le client afin de prendre en compte leurs retours et réaliser les ajustements demandés. Les demandes et retours du client sont davantage pris en considération puisqu’ils sont les priorités du projet.
Quelles sont les différences entre méthodes traditionnelles et méthodes Agiles ?
AVANTAGES
Les principaux avantages des méthodes traditionnelles :
• L’intégralité du projet est définie et planifiée avant le lancement du projet.
• Le budget est connu dès le départ.
Quant aux avantages des méthodes Agiles :
• L’adaptabilité et la flexibilité.
• Livraisons plus fréquentes.
• Qualité contrôlée régulièrement par le client.
• La satisfaction du client (étant donné que ses retours sont pris en compte durant le projet, le produit final correspond davantage à sa demande).
INCONVENIENTS
Les principaux inconvénients des méthodes traditionnelles :
• Il est très difficile de revenir sur l’étape précédente étant donné que chaque phase du projet est validée en amont.
• Si le client décide de modifier des fonctionnalités établies au début du projet, la prise en compte de ces modifications est compliquée, le projet peut être un succès avec un client déçu.
• Risque d’effet tunnel.
Les méthodes Agiles possèdent également des inconvénients :
• Enlisement du projet si l’on « abuse » de la flexibilité de ces méthodes
• Risque de dépassement des coûts et des délais si le client change trop souvent d’avis.
• Cela peut donc poser des problèmes de budgets, mais aussi des problèmes de gestion d’équipes, si, par exemple, les équipes projets doivent enchaîner sur un autre projet, alors que le projet en cours va prendre plus de temps.
Méthodes traditionnelles ou méthodes Agiles ?
Après avoir comparé ces deux méthodes et leurs fonctionnements, il semble que les méthodes Agiles soient plus adaptées aux projets informatiques ou de développement logiciel. En effet, leur flexibilité et leur adaptabilité apportent une meilleure gestion des risques.
Néanmoins, il faut tenir compte du contexte projet avant de choisir une méthode (taille du projet, disponibilité du client, taille de l’équipe, ...). En effet, en méthodes Agiles, la présence du client est primordiale et la communication avec ce dernier est très importante pour le bon déroulement du projet. Tandis qu’en méthodes traditionnelles, la documentation établie avec le client en début de projet permet à ce dernier d’être moins présent sur le projet.
En définitive, il faut veiller à respecter le triangle d’or : QUALITE / COÛT / DELAI, que l’on retrouve dans chaque projet, et ce, peu importe la méthode. Choisissez donc votre méthode pour la pertinence que cette dernière peut apporter à votre projet.