Le point en 5 minutes

Agile : Le maître-mot du développement agile de nouvelle génération

Les pratiques de développement agile permettent aux entreprises de fédérer des équipes entières autour de processus inclusifs et porteurs de productivité. La puissance de la méthode agile repose non pas sur un seul élément, mais sur la convergence de nombreux facteurs. Parce que la qualité de votre développement logiciel conditionne la réussite ou l’échec de votre entreprise sur ses marchés, vous devez tout faire pour que le tout soit supérieur à la somme des parties. Avec le développement agile, c’est possible.


Qu’est-ce que le développement logiciel agile ?

Le développement agile désigne un ensemble de méthodes garantes de déploiements rapides, fréquents et porteurs d’une forte valeur ajoutée pour vos clients. Ce modèle préconise des itérations courtes, orchestrées par des équipes transdisciplinaires dans le cadre d’une collaboration étroite. Les méthodologies agiles offrent une alternative au développement séquentiel et aux longs cycles de versions habituellement associés au développement en cascade (« waterfall » en anglais).

Elles conviennent aux équipes et aux entreprises de toutes tailles (des start-up aux multinationales), mais aussi à la plupart des projets. Ceci dit, les entreprises qui franchissent le pas doivent bien se préparer à ce changement culturel, tout en faisant preuve d’un engagement sans faille en faveur du coaching et de la formation.


Deploy B u i l d A c c e p t P l a n Iteration 1 D e s i g n T e s t Deploy d B u i l d A c c e p t P l a n Iteration 2 D e s i g n T e s t Deploy Deploy B u i l d A c c e p t P l a n Iteration 3 D e s i g n T e s t


Enjeux du développement agile

Plus de transparence

Des équipes logicielles (testeurs, développeurs, designers, chefs de projet, etc.) aux acteurs business du projet, tout le monde s’implique et connaît la nature du travail en cours et des tâches restant à accomplir.

Plus de prévisibilité

Des priorités sont clairement établies afin de diviser le travail en courtes itérations, idéalement d’une à deux semaines chacune. Les nouvelles fonctionnalités sortent de façon planifiée, dans le cadre d’un cycle de déploiement continu.

Plus de flexibilité

Lorsque des retours d’expérience ou de nouveaux besoins métiers imposent certains changements, vous pouvez insérer instantanément des récits (stories) et redéfinir leur priorité dans le backlog.

Priorité aux besoins métiers

Le porteur du projet détermine l’ordre de développement des fonctionnalités afin d’indiquer clairement à l’équipe les priorités de l’entreprise.

Priorité aux utilisateurs

Les récits visent à répondre aux besoins concrets d’utilisateurs réels. Chaque fonctionnalité conçue et développée doit améliorer l’expérience d’utilisation.

Priorité à la qualité

La division du travail en blocs plus gérables et en versions plus fréquentes permet de cibler davantage les tests et évaluations. De même, la possibilité de repérer et corriger les défauts plus facilement et plus rapidement améliore la qualité.


IDC Market Analysis Perspective: Worldwide Application Development Software, 2016.

« La méthode agile représente désormais l’approche par défaut pour le développement de nouveaux logiciels. »

Al Hilwa
Directeur de programme, Application Development Software, IDC



Adoption du développement agile : les éléments à intégrer à votre réflexion

Bien que la tendance soit à l’abandon des méthodes en cascade traditionnelles au profit du développement agile, une transition réussie passe par une remise à plat des workflows et une prévention des risques courants. Avant de commencer, posez-vous les bonnes questions :

Votre équipe adhère-t-elle au projet ?

Le développement agile obéit à un processus hautement collaboratif. Parce qu’il gomme les hiérarchies et incite plus qu’il n’impose, son adoption doit se faire à tous les niveaux. Ralliez vos collaborateurs à la cause. Expliquez-leur les avantages pour eux et pour l’entreprise, et prouvez-leur qu’il ne s’agit pas d’un simple effet de mode. En investissant dans la méthode agile, vous favorisez l’innovation, la flexibilité et le raccourcissement de vos cycles de développement.

Vous faites cavalier seul ?

Si oui, arrêtez tout. Trouvez au sein de votre équipe des collaborateurs qui connaissent le concept de workflow agile et sont prêts à se l’approprier. Commencez par la base et faites peser toute votre influence pour répondre aux éventuelles réticences des autres équipes, du management et des partenaires. Dans l’idéal, engagez un consultant qui vous aidera à prendre un bon départ et à fixer le bon cap. Ainsi, vous réduirez les risques et accélérerez l’adoption.

Des formations et exercice d’entraînement sont-ils prévus ?

Définissez un plan de formation de votre équipe. La réduction des processus ne doit pas nuire à l’implémentation. Le développement agile constitue en ce sens un ensemble de méthodologies à assimiler et suivre rigoureusement. Plus qu’une simple formation théorique, les équipes ont besoin de pratique. Pour cela, rien de tel que des projets réels pour se faire la main et constater par elles-mêmes les avantages du développement agile.

Tout le monde est-il prêt à s’approprier de nouveaux processus et outils ?

Quels outils de gestion produits utilisez-vous actuellement ? Se prêtent-ils à une approche agile ? Êtes-vous parés pour le développement centré sur les tests, l’intégration et les déploiements continus ? Vos équipes de conception et d’expérience client sont-elles partie prenante au projet ? Plus votre structure est grande, plus vous aurez de personnes à motiver, convaincre et rassembler. Certes, l’adoption du développement agile est à la portée de tous. Mais seule une implémentation efficace permet une réelle imprégnation du changement dans toute l’entreprise.

« Fais-le ou ne le fais pas, ne te contente pas d’essayer. » —Yoda (dans « L’Empire contre-attaque »)

Tout le monde est-il enclin à adopter la nouvelle approche ?

Sans aucun doute, l’adoption du développement agile ne se fera pas sans heurts. Vous ferez des erreurs. Vos collaborateurs tenteront de résoudre les problèmes lors des points de situation. Les équipes voudront préparer et planifier à l’extrême. La dette technique s’accumulera et vous assignerez des tâches à différents individus. Au bout du compte, à partir du moment votre équipe joue pleinement le jeu, vous surmonterez les obstacles et parviendrez à aller de l’avant (en tirant toutes les leçons d’expériences passées).



Comparatif : développements agile vs. en cascade
Situation courante
Approche agile
Approche en cascade
Alors que l’équipe est en plein développement, le chef de projet décide d’ajouter une nouvelle fonctionnalité. Il l’intègre donc à une itération (ou sprint) hebdomadaire pour que le produit réponde aux dernières exigences du client et de l’entreprise. Les développeurs ont déjà terminé les étapes de conception et de développement. La nouvelle fonctionnalité devra attendre la prochaine étape de planification du projet, dans six mois.
Un bug critique est découvert pendant les tests. Le bug a été trouvé à la fin d’une itération hebdomadaire. En prévision d’éventuels problèmes mineurs, l’équipe de développement ajoute le correctif au calendrier du sprint de la semaine suivante. Le projet progresse dans les délais et le budget impartis. Trouvé en toute fin de l’étape finale du développement, le bug remet en cause la manière dont le code a été écrit tout au long du projet. La correction du bug – et du code upstream – provoquera des dépassements dans les budgets et les délais.
Les clients fournissent du feedback. Le feedback sera intégré de façon collaborative et incrémentielle avant la prochaine itération. Le feedback est pris en compte, mais ne sera pas intégré au projet avant la prochaine version.



Développement agile et eXtreme Programming

L’eXtreme Programming désigne l’une des variantes du développement agile, particulièrement adaptée aux besoins des équipes de développement. Ses spécificités : programmation en binômes, tests automatiques de tout le code, développement de nouvelles fonctionnalités uniquement au moment où elles sont requises, simplicité et clarté du code, prise en compte permanente de l’évolution des exigences des clients pour mieux appréhender les problèmes, communications fréquentes avec le client et entre programmeurs.





Le développement agile selon Pivotal

En 25 ans d’expérience, nous avons pu constater que l’épanouissement au travail était synonyme de productivité. Chez Pivotal, le développement agile sous forme d’eXtreme Programming se décline au niveau de chaque département et guide toute notre action, du matin au soir :



Un jour chez Pivotal
Petit-déjeuner

Prenez un croissant, un jus de fruits ou un café, et procédez à des échanges informels avec les autres « Pivots ».

9:00 AM
Point de situation de l’entreprise

Informez-vous rapidement sur les principaux événements et, le cas échéant, demandez conseil à vos collègues sur un éventuel problème.

9:06 AM
Point de situation de l’équipe

Réunissez-vous avec vos collègues pour leur parler de votre travail de la veille et de votre programme de la journée.

9:15 AM
Tâches quotidiennes

Étude utilisateur, wireframes, conception de visuels, codage d’un prototype, formation de vos clients… vos tâches peuvent être extrêmement variées.

9:25 AM
Déjeuner


Tech Talks

Le déjeuner est servi : vous n’avez qu’à mettre les pieds sous la table. Profitez-en pour acquérir de nouvelles connaissances (programmation, processus, conception, nouveau projet, etc.).

12:30 PM
Pause ping-pong
3:48 PM
Rétrospective hebdomadaire de l’équipe

Tous les vendredis, votre équipe se réunit autour d’un apéritif pour discuter de ses réussites, de ses échecs et des pistes d’amélioration pour la semaine suivante.

5:00 PM
Fin de la journée

Personne ne travaille après 18 heures et les week-ends. Les vendredis, certains Pivots se retrouvent pour un moment de détente après le travail.

6:00 PM


Parce que nous adoptons une méthodologie agile, nos équipes :

Organisent des points de situation et des réunions de planification des itérations où elles débattent, priorisent et tracent les récits à l’aide de notre outil de gestion produits, Pivotal Tracker

Programment en binôme pour un code de meilleure qualité

Écrivent du code, puis le testent et le déploient via un outil d’intégration/diffusion continue, comme Concourse

Déploient tout sur les Pivotal Web Services ou Pivotal Cloud Foundry pour la validation par le client

Itèrent en continu à l’aide de nos systèmes évolutifs et éprouvés de gestion des données

Si vous jetez un œil à la journée type d’un Pivot, vous remarquerez que tous nos processus – quelle que soit leur taille – sont conçus autour de l’humain. Nos collaborateurs travaillent au sein de petites équipes auxquelles nous donnons tous les moyens d’exprimer leur potentiel pour produire des logiciels de qualité à un rythme soutenable.



Les moments Pivotal
Grâce aux technologies Pivotal, The Home Depot est parvenu à relever ses plus grands défis RH aux niveaux humain et processus pour atteindre son objectif IT de déploiements accélérés.
Pivotal a dispensé à Merrill Lynch une formation immersive de développement logiciel, répondant ainsi à ses besoins d’accélération de ses délais de lancement.
Soucieux de réduire sa dette technique, Comcast a collaboré avec Pivotal afin de se recentrer sur l’agilité, l’élasticité, la vélocité, la résilience, l’expérience client et l’expérimentation.



Pivotal Labs
Réinventez votre approche du développement logiciel


Pivotal Cloud Foundry
Profitez de déploiements en self-service entièrement automatisés


Pivotal Tracker
Le logiciel de gestion de projets des équipes leaders


Plus d’infos sur le développement agile

Afficher toutes les ressources

Pour commencer avec Agile
On Becoming Agile

Lire la suite

Try agile project management now

Essai gratuit

Meet our Agile Advocates

En savoir plus

Lire le sujet suivant
Transformation Digitale