Gestion de projet hybride : un terrain d'entente entre agile et cascade

Publié: 2022-03-11

La guerre froide entre Waterfall et Agile est-elle en train de dégeler ? Au fond, la différence entre les deux méthodologies de gestion de projet est la prévisibilité par rapport à l'adaptabilité. Waterfall s'efforce d'être prévisible : considérez le projet comme terminé uniquement lorsque toutes les fonctionnalités prédéterminées sont terminées et entièrement mises en œuvre. Agile s'efforce d'être adaptable : fournissez un produit minimum viable (MVP) et publiez de nouvelles fonctionnalités de manière itérative pour recueillir les commentaires des utilisateurs qui guideront le chemin des améliorations.

Qu'est-ce que l'hybride Agile-Waterfall ?

Depuis son introduction officielle il y a plus de 20 ans, Agile n'a cessé de gagner en popularité. Répandue tout au long du développement de logiciels, la pratique s'est glissée dans des domaines où les méthodologies en cascade sont restées dominantes. Une approche hybride formalise l'expérimentation de l'utilisation d'Agile dans une structure Waterfall plus large.

"Le véritable hybride est une combinaison de travail prédictif et incertain", déclare Jim Stewart, chef de projet Toptal dans la région de Boston, Scrum master, coach Agile et instructeur. Dans un modèle hybride, les techniques Waterfall sont utilisées pour les parties prédictives bien comprises du projet, tandis que les techniques Agiles sont utilisées pour les parties itératives, plus incertaines.

De cette façon, une entreprise peut créer un logiciel de manière Agile mais le déployer selon un processus en cascade. Une société financière peut développer un produit comportant plusieurs composants importants qui doivent être audités et ne peuvent donc pas être commercialisés tant qu'ils ne sont pas terminés et approuvés. Dans le même temps, des éléments plus petits de cette fonctionnalité plus large, ainsi que d'autres aspects de l'interface utilisateur, peuvent être itérés par l'équipe de développement via une série de sprints.

Lorsqu'il s'agit de mettre en place le bon système hybride pour votre projet, la flexibilité est essentielle. "Je ne crois pas en quelque chose de unique", déclare Miroslav Anicin, chef de projet basé à Belgrade, en Serbie, qui fait partie de l'équipe de sélection de la gestion de projet de Toptal et contribue à ce blog. « Vous ne pouvez pas aller quelque part et appliquer des méthodologies à la lettre. Vous devez savoir exactement comment adapter ces approches en fonction de différents facteurs tels que la maturité de l'équipe, la culture d'entreprise, les cultures des sujets, le type de projet, la taille de l'équipe et la taille du produit.

La gestion de projet hybride utilise des méthodologies Agiles au sein d'une structure Waterfall plus large pour permettre une innovation plus rapide de certaines parties parallèlement à des calendriers fixes pour d'autres.

Pourquoi utiliser un système hybride ?

Vous pensez peut-être : pourquoi ne pas devenir entièrement Agile, car cela s'est avéré plus adaptatif, innovant et efficace ? À l'inverse, pourquoi ne pas simplement continuer à travailler chez Waterfall si c'est ce à quoi une organisation est habituée ?

Parfois, il existe des obstacles au passage à l'Agile pur, en particulier dans les secteurs hautement réglementés où les produits sont soumis à des approbations d'organisations extérieures qui nécessitent une documentation et des calendriers rigoureux. Pour Juan Vilmaux, un chef de projet basé à Cordoba, en Argentine, qui fait également partie de l'équipe de sélection de gestion de projet de Toptal, Waterfall est utile dans les projets où le risque est un facteur principal, comme dans les domaines où les entreprises sont confrontées à des audits. (Étant donné que l'analyse des risques doit être effectuée avant la planification du projet dans ces industries, modifier quelque chose dans cette analyse nécessiterait un nouveau plan.) "Je travaillais pour une entreprise qui menait des essais cliniques, et les audits sont fous là-bas", dit-il. « Vous devez donc passer par plusieurs processus qui sont définis par des autorités externes comme la FDA. Si vous travaillez en Agile, vous ajustez constamment votre périmètre ou votre backlog, en le redéfinissant par ordre de priorité, et cela peut interférer avec ces audits. »

David Machiels, un chef de projet Toptal basé à Bruxelles, en Belgique, dit que vous devez faire attention au moment des publications dans les emplois qui exigent des protections de la vie privée. Il a dirigé une équipe hybride sur le développement d'une plateforme de gestion des identités dans Microsoft Azure Active Directory pour un groupe bancaire européen. Il a utilisé Agile sur certaines étapes de développement, mais comme les banques doivent protéger les données confidentielles et répugnent à mettre ces informations dans le cloud, son équipe a provisionné le système sur un serveur local. "Tout d'abord, vous avez besoin que cette implémentation sur site soit effectuée", dit-il. « Vous avez également besoin que la mise en œuvre du cloud soit effectuée. Ensuite, vous pouvez commencer à faire le lien entre les deux. Il y a beaucoup d'étapes que vous devez faire dans un certain ordre.

La plupart des chefs de projet auxquels nous avons parlé pour cet article ont travaillé sur des projets hybrides pour des clients du secteur financier en raison de la combinaison inhérente de réglementations strictes et de la nécessité de sécuriser les données. Grant Schuleman, chef de projet Toptal basé à Johannesburg, en Afrique du Sud, a travaillé dans les services financiers, la banque et les bourses. Il dit avoir fourni un moteur de négociation d'actions et un moteur de négociation de produits dérivés "où il y avait beaucoup d'intégration liée aux données de base et à de nombreuses exigences réglementaires".

Devoir adhérer à une série d'étapes définies se prête à une approche en cascade, mais vous pouvez améliorer ce processus en incorporant Agile. Les épopées volumineuses peuvent être divisées en user stories pour un développement plus flexible, mais les épopées terminées peuvent ensuite être publiées sur une période plus longue. "Parfois, vous avez ce que j'appelle une livraison Big Bang", explique Schuleman. L'équipe se déploie progressivement dans un environnement de test d'acceptation utilisateur (UAT), et une fois que toutes les fonctionnalités sont approuvées dans UAT, vous les mettez en production en un seul déploiement à grande échelle. "Et cela pourrait prendre un an, selon l'ampleur du projet", dit-il.

Dans son programme le plus important, Schuleman comptait 120 personnes travaillant sur 10 projets, certains travaillant dans Waterfall, d'autres Scrum et d'autres hybrides. Il a également organisé un "Scrum of Scrums" toutes les deux semaines pour s'assurer que toutes les petites équipes étaient alignées pour la prochaine série de sprints et travaillaient à des rythmes complémentaires.

Travaillant sur un calendrier de déploiement Waterfall, l'équipe peut toujours travailler de manière Agile en publiant des itérations dans un environnement de test d'acceptation des utilisateurs, où elles peuvent être collectées pour une version plus importante ultérieurement.

La partie la plus difficile de devenir hybride

La mise en œuvre d'un système hybride Agile-Waterfall peut être une entreprise très dépendante de la situation. En tant que guide de ce processus, le chef de projet doit trouver la bonne combinaison de méthodologies adaptées au produit, à l'équipe et aux personnes qui vont les utiliser. "Si vous essayez d'appliquer certaines de ces méthodologies telles quelles, sans aucune adaptation", déclare Anicin, "ce sera un échec à 100 %.

Schuleman a tenté d'intégrer des processus Agile dans une mise à jour d'une application héritée, mais a dû revenir à Waterfall pur au milieu du projet. L'expérience a échoué car elle n'a pas été adoptée par les développeurs, qui étaient tous habitués à travailler dans Waterfall et ne comprenaient pas pourquoi le travail était divisé en épopées qui étaient ensuite divisées en histoires d'utilisateurs. Ils verraient une user story dans un sprint, dit Schuleman, mais ne pouvaient pas comprendre pourquoi "il y a 10 autres user stories également liées à cette application qui ne sont pas encore dans le périmètre". Ils voulaient travailler sur tout à la fois.

Alors, quel est le facteur le plus important dans le succès d'un système hybride ? Les personnes. Certaines personnes sont ouvertes au changement et enthousiastes à l'idée d'essayer de nouvelles choses ; certains ne le sont pas. Lorsqu'ils ne le sont pas, leur résistance se résume souvent à un manque de compréhension. Les membres de l'équipe et la direction « ne comprennent pas nécessairement la gestion de projet au-delà d'un niveau superficiel », dit Stewart. "Ils utilisent Waterfall et ils savent qu'il existe un mot à la mode Agile." Puisqu'ils ne connaissent pas bien le nouveau processus, ils pourraient vouloir faire ce qu'ils ont fait dans le passé.

Et l'hybride n'est pas pour tout le monde. Certains chefs de projet trouvent que le rapprochement de méthodologies opposées cause plus de problèmes qu'il n'en résout. "Ce n'est généralement pas une bonne approche d'opter pour l'hybride", déclare Vilmaux. « Vous augmentez vos chances d'échouer parce que vous obtenez les pires aspects des deux mondes. Vous restreignez Agile, mais la nature d'Agile est d'accepter les changements et d'être flexible. Vous commencez à perdre tout cela si vous travaillez dans un environnement Waterfall qui fonctionne mieux de manière linéaire - fixe et déterministe - et où les changements ne sont pas impossibles mais peuvent être très coûteux. En ajoutant Agile, vous commencez à pousser des choses non linéaires dans ce monde Waterfall.

Cela dit, malgré sa complexité, l'hybride bien fait peut certainement porter ses fruits. Anicin a récemment dirigé avec succès un projet hybride pour la SFI (un membre du Groupe de la Banque mondiale) en Republika Srpska, en Bosnie-Herzégovine. « En tant que projet d'IFC », dit-il, « c'était entièrement axé sur un plan, mais nous avons convenu que nous allions appliquer une approche mixte. Les exigences et les spécifications - tout - étaient très détaillées, mais nos équipes ont travaillé en Agile. »

Le bénéficiaire de ce processus a été le gouvernement de la Republika Srpska, qui a obtenu un meilleur produit à moindre coût dans un délai plus court. Il y avait « de nombreuses organisations impliquées - des organisations gouvernementales, des organisations complètement différentes », dit Anicin. "C'était dur, mais ça a marché."

Utilisation de l'hybride comme mise à niveau agile

Avec chaque industrie subissant une transformation numérique ces jours-ci, de plus en plus d'entreprises s'intéressent à Agile. "Les RH deviennent un peu Agile", déclare Stewart. "De plus, je connais une organisation policière aux Pays-Bas qui utilise des tableaux de tâches pour nettoyer l'arriéré des crimes."

Même si l'entreprise avec laquelle vous travaillez n'est pas prête à sauter le pas, une introduction progressive à Agile peut porter ses fruits au fil du temps. L'une des principales raisons à cela est qu'Agile est très efficace pour gérer l'incertitude. "Agile, dans mon esprit, est bien meilleur quand il y a des inconnues", dit Schuleman, "et 99% du temps il y a des inconnues."

Un autre avantage est la transparence inhérente à Agile. "Je préfère Agile parce que je peux voir les changements", dit-il. “Avec Waterfall, il peut y avoir beaucoup de fumée et de miroirs : 'Nous sommes complets à 20%', 'Nous sommes complets à 30%', mais ensuite vous êtes bloqué à 80% pendant encore huit mois. Il est beaucoup plus facile de cacher les problèmes. Avec Agile, vous avez des stand-ups quotidiens, et si une user story reste là plus longtemps qu'elle ne devrait l'être, il est facile de dire : « Ça ne bouge pas ; quel est le problème?'"

L'intégration d'Agile dans n'importe quel système peut économiser de l'argent et du temps, tout en offrant une valeur plus conforme aux besoins réels du client. Lorsqu'un projet échoue, Stewart demande si c'est parce qu'il aurait dû être plus Agile. "Je parie que 35 % à 40 % des projets informatiques échouent chaque année", dit-il, "une bonne partie d'entre eux qui sont en cascade devraient être Agile, et cela ne se produit tout simplement pas."

Intégrer lentement Agile via un système hybride peut offrir certains avantages, en particulier lorsque certains aspects d'une manière de penser en cascade peuvent apporter des avantages à votre équipe. Pour Anicin, l'accent d'un bon système hybride « est sur la partie découverte. Lorsque nous parlons d'approche mixte, nous fournissons un backlog de produit beaucoup plus détaillé », beaucoup plus étendu que ce qu'il créerait pour un projet purement Agile. Dans un projet hybride, il utilise ce backlog plus détaillé pour donner à son équipe une perspective détaillée plus Waterfall sur les attentes à plus long terme pour le produit fini. Anicin intègre ensuite son équipe « au produit, pas seulement au projet », dit-il. "Je m'attends à ce que toute l'équipe comprenne les détails du produit, car elle doit avoir cette propriété du produit, qui est si importante."

Votre entreprise et votre équipe ne sont peut-être pas prêtes à passer à l'Agile pur, mais à tout le moins, vous pouvez réaliser des avantages considérables en ajoutant des pratiques Agiles comme des standups quotidiens et des délais de livraison plus courts et plus fréquents. Si vous êtes rigoureux, intelligent et prudent dans sa mise en œuvre, un système hybride pourrait être exactement ce dont vous avez besoin pour mettre à niveau votre projet.