L’agilité : de la pratique à la culture
Nous l’avons toujours évoqué, cité, mentionné, nous avons jusqu’ici tourné autour sans jamais définir précisément ce qui relève de l’agilité. Un article ne saurait être suffisant pour rassembler toutes les notions que sous-tend l’agilité, mais tentons tout de même l’exercice.
Il s’agit ici de rendre compte que l’agilité en entreprise fait autant appel à une culture, des comportements, des attitudes, qu’à des méthodes de travail très concrètes. Mais avant de rentrer dans les méandres de la culture agile, petit retour en arrière.
A chaque époque son système de production
Durant les 30 glorieuses, l’innovation au sein des grandes entreprises était considérée comme un risque inutile : seuls les volumes créent la marge. La généralisation des solutions informatisées et la complexification des projets ont fait naître des besoins d’industrialisation des cycles de vie des projets.
Nous sommes ainsi passés d’un fonctionnement vertical avec :
- des cycles en cascade (années 70) : les différentes phases du processus de développement ont pour caractéristiques de produire des livrables définis au préalable, de se terminer à une date précise et seulement lorsque les livrables sont jugés satisfaisants lors d’une étape de validation-vérification ;
- des cycles en V (années 80) : amélioration du modèle en cascade qui permet en cas d’anomalie, de limiter un retour aux étapes précédentes. Les phases de la partie montante doivent renvoyer de l’information sur les phases en vis-à-vis lorsque des défauts sont détectés afin d’améliorer le logiciel. De plus, le cycle en V met en évidence la nécessité d’anticiper et de préparer durant les étapes descendantes les « attendus » des futures étapes montantes.
De la verticalité à l’horizontalité
Le fonctionnement vertical a vécu et ces deux méthodes ont rapidement montré leurs limites (mauvaise compréhension du besoin, estimation et planification déficiente, technologie mal maîtrisée, etc.). Avec l’arrivée de la mondialisation, le besoin en innovation devient une priorité. Aujourd’hui le consommateur se réinvente chaque jour. Les systèmes de production des entreprises se sont ainsi transformés au fil des évolutions des modes de consommations.
En février 2001, aux États-Unis, dix-sept spécialistes du développement logiciel se sont réunis pour débattre du thème unificateur de leurs méthodes respectives. De cette réunion a émergé le Manifeste agile constitué de quatre valeurs fondamentales :
1/ Les individus et leurs interactions plus que les processus et les outils.
Les méthodes agiles mettent l’intelligence collective au centre de la performance des entreprises, et l’humain au centre des préoccupations, bien avant les outils.
Organisées en petites entités pluridisciplinaires avec des rôles précis, les équipes travaillent ensemble, quotidiennement tout au long du projet et cela repose sur la confiance et la transparence. Ainsi, quand un changement de direction est décidé, tout le monde se met en mouvement. Cela permet en outre aux équipes de libérer leur esprit créatif et plus largement de coopérer en vue d’un objectif commun : la valeur métier.
Cette notion de confiance s’applique également dans la relation avec le client, présent à toutes les étapes du projet et tout simplement au cœur du cycle de développement du projet informatique.
2/ Un logiciel qui fonctionne plus qu’une documentation exhaustive.
Les équipes doivent se focaliser sur la fourniture d’une application qui répond aux besoins. La réussite d’un projet va en effet être jugée sur son bon fonctionnement et donc sur sa valeur à un instant T. La documentation qui l’accompagne est utile mais doit être mise sur un second plan et utilisée uniquement comme un moyen de communication.
3/ La collaboration avec les clients plus que la négociation contractuelle.
La satisfaction du client doit être l’objectif principal dans la réalisation du projet par les équipes. Le client définit son besoin et le priorise selon la valeur métier et l’objectif utilisateur, puis réévalue ses priorités et ses finalités à chaque itération. Ainsi, à l’inverse des méthodes classiques où le client n’intervient qu’en début de projet pour la définition du cahier des charges, il est ici fortement mis à contribution et ce, tout au long du projet.
4/ L’adaptation au changement plus que le suivi d’un plan.
C’est un changement de paradigme pour les entreprises en perpétuelle évolution. Il s’agit de passer à un pilotage par la valeur (livrer rapidement des fonctionnalités à grande valeur ajoutée) en avançant par itération. Cela permet d’accueillir positivement les changements de besoins, même tard dans le projet. Le client peut arrêter le projet en cours s’il le désir, les fonctionnalités superflues peuvent être abandonnées, de nouveaux besoins peuvent s’ajouter, etc.
Dans ces conditions, concevoir une solution, ou simplement vérifier si elle est vouée à l’échec ou au succès, est considérablement plus rapide et économique. Pour une entreprise, les risques, le temps et les ressources investies sont réduits au maximum.
Ainsi, l’agilité est avant tout une culture, un état d’esprit dont l’objectif est de maximiser la qualité du produit, la valeur de l’équipe et la collaboration avec le client.