Louées pour leur souplesse, les pratiques agiles prennent le pas sur la gestion de projet traditionnelle de « cycle en V ». Au « 100% projet » de la méthode cycle en V, on oppose désormais le « 100% produit » des pratiques agiles qui offriraient à la fois plus d’adaptabilité et une meilleure gestion des risques. Les pratiques agiles doivent-elles être, pour autant, systématiquement appliquées à tout projet informatique ?  Faisons un point sur les différences entre la méthode cycle en V et les pratiques agiles.

 

1) Pratiques agiles et méthode cycle en V : définitions et intérêts 

 

Qu’est-ce que la méthode « cycle en V » ?

Le cycle en V est la méthode de gestion de projet « traditionnelle ». Elle est apparue dans le secteur de l’industrie avant d’être appliquée aux projets informatiques dans les années 80. Le cycle en V consiste à découper le projet en 9 « phases » qui se suivent : analyse des besoins, rédaction et validation des spécifications fonctionnelles, étapes de conception architecturale puis fonctionnelle, réalisation, tests unitaires, tests d’intégration, test de validation puis recette fonctionnelle (aussi appelée test d’acceptation).

Pourquoi en « V » ? Car le modèle associe chaque phase de développement du projet avec une phase de validation. De plus, sa représentation sous forme de schéma rappelle la lettre « V ». 

Son principal avantage est de garantir un degré élevé de transparence par la mise en œuvre de processus clairement définis et compréhensibles. Le revers de la médaille de la planification est la rigidité relative induite. Les modifications en cours de développement sont difficiles à mettre en place, le projet se déroulant de manière linéaire. 

 

Qu’appelle-t-on « pratiques agiles » ?

Les méthodes dites agiles sont nées de l’idée qu’il était contre-productif de planifier en détail un projet et qu’il était essentiel d’améliorer la communication entre les différents acteurs du projet.

Le développement du produit se fait dans le cadre d’un framework (un cadre) replaçant la demande client au cœur de l’action. Il devient aisé d’apporter une modification en cours de développement pour s’adapter aux demandes et améliorer le produit. Les pratiques agiles reposent sur l’adaptabilité, la coopération avec le client, l’application plutôt que la documentation et les interactions entre membres de l’équipe. 

La pratique agile la plus mise en œuvre aujourd’hui est la méthode SCRUM, mais nous pouvons également citer l’Extrem programming (XP), l’Adaptative Software Development (ASD) ou la méthode Kanban.

 

 2) Quelles différences entre les deux méthodes ? 

 

La première différence concerne le cycle de vie du projet : il est séquentiel en cycle en V et itératif avec les pratiques agiles.

En cycle en V, la livraison du produit s’effectue une fois toutes les fonctionnalités développées, c’est un produit final, correspondant peu au produit imaginé. En gestion agile, les besoins sont priorisés, puis développés et testés sans attendre le développement complet de la fonctionnalité. Les livraisons sont plus rapides et plus fréquentes. Le contrôle qualité est donc effectué plus régulièrement et évite l’effet tunnel du cycle en V.

Une autre différence essentielle concerne la demande client. Dans un projet « cycle en V » il est compliqué de revenir sur des spécifications validées, cela sera considéré comme une évolution du besoin initial et facturé en conséquence (coût et délai supplémentaires). En gestion agile, il est possible d’ajouter des fonctionnalités d’une itération à l’autre de manière souple.  

Le cycle en V repose sur une planification détaillée permettant de connaître les tenants et aboutissants du projet. La préparation en amont permet de limiter les adaptations en cours de route. Les pratiques agiles en prennent le contre-pied en permettant des adaptations et des ajustements pour prendre en compte de nouvelles demandes client. 

Enfin, la documentation est réduite au strict nécessaire dans le cadre d’un projet agile quand il s’agit d’une base essentielle pour la méthode cycle en V.

 

3) Face à un environnement instable et complexe : misez sur l'agilité

 

Le cycle en V et les pratiques agiles s’appliquent dans des contextes bien différents.

Certains projets simples, bien définis et qui peuvent être planifiés en détail en amont de la réalisation pourront être menés en méthode cycle en V. Cette méthode permet de mieux cadrer un projet dont les contours sont suffisamment précis.

En revanche, plus un projet est complexe, plus il sera cohérent de le mener en appliquant les techniques agiles. Afin de s’adapter à un environnement instable, complexe et évolutif, les entreprises ont plutôt intérêt à pouvoir faire évoluer leur projet. En effet, un projet informatique peut avoir besoin d’évoluer non seulement en fonction des politiques de l’entreprise mais aussi de contraintes environnementales comme la concurrence, la réglementation, l’état du marché ou les nouveaux outils mis à disposition. Ces pratiques agiles apportent de la flexibilité et une meilleure gestion des risques pour les projets sur lesquels la visibilité est réduite.    

 

Ces deux méthodes ne sont pas à opposer. En effet, certains sujets se traitent mieux en cycle en V, d’autres par l’agilité. L’essentiel est de viser la pertinence de la méthode choisie et non de faire la promotion de l’une ou de l’autre.

Déposer un commentaire

Inscrivez-vous à notre newsletter