Approche agile & gestion de projet : Tout ce qu’il faut savoir sur les méthodes agiles

Publié le 23 avril 2020

Dans la série « approche et méthodes agiles », je demande l’introduction générale aux méthodes agiles. Comment s’y prendre pour mettre en place des méthodes agiles dans son équipe ? Comment adopter le bon état d’esprit ? Surtout, comment la faire accepter à ses clients ? On vous livre tous nos conseils dans cette série d’articles sur les méthodes agiles !

 

Au programme de ce dossier spécial agilité : 

  1. D’où viennent les méthodes agiles ?
  2. Qu’est-ce qu’une méthode agile (principes fondateurs et valeurs) ?
  3. Quel est le bon état d’esprit pour adopter les méthodes agiles ?
  4. Les avantages et les inconvénients des méthodes agiles
  5. La solution pour faire accepter l’approche agile à vos clients (surtout français)

 

Notre prochain article de la série (en cours de réalisation, patience) : 

Les méthodes agiles les plus utilisées (et pour quels projets)

 


D’où viennent les méthodes agiles ?

Les méthodes agiles ne datent pas d’hier ! Ça fait depuis longtemps que l’approche existe, mais ce n’est que récemment qu’elle a été remise au goût du jour. 

Par qui ? Des développeurs lassés des méthodes traditionnelles !

Et qui du coup ont créé le Manifeste agile

C’était en 2001 ! Depuis, la gestion de projet a bien changé : plus d’agilité (évidemment) et plus orientée gestion produit que projet.

Le contenu du projet, plutôt que son contenant, si l’on peut dire.  

 

Le manifeste agile : c’était déjà en 2001 !

 

 

Pourquoi a-t-on inventé les méthodes agiles ? 

Le problème avec les méthodes traditionnelles de gestion de projet (comme les cycles de développement en V ou en cascade) : c’est leur rigidité.

Elles n’intègrent pas les évolutions des attentes du client. 

Ça vous arrive vous aussi de changer d’avis ? Eh bien, dans un projet, c’est pareil. C’est peut-être pire, quand il y a plusieurs personnes à la barre ! 

D’où l’intérêt d’avoir des méthodes plus souples. Elles permettent de gérer les projets et de les adapter aux nouvelles demandes. 

Le problème avec les méthodes traditionnelles, c’est de séquencer la production en phases prédéfinies, fixes et délimitées dans le temps : 

  • D’abord une phase de conception assez longue pour tout spécifier (le périmètre de l’application, de quoi on a besoin en entrée, ce qu’on va produire en sortie),
  • Ensuite, on programme pendant un certain temps (assez longtemps généralement) et dans son coin,
  • Puis, c’est la livraison !

Sauf qu’à la livraison, on se rend compte que le projet ne correspond pas à ce que les clients attendaient ! C’est ballot, non ?   

 

En fait, l’esprit humain a besoin de plus de souplesse.

 

 

C’est d’autant plus vrai pour un projet complexe.

On ne peut pas anticiper tous les aspects du projet en avance. Mais ça se fait plutôt au fur et à mesure. 

D’où l’idée de découper le processus en lots : multiplier les rendus intermédiaires à chaque étape clé. Sans pour autant en abuser, sinon c’est une perte de temps au niveau des allers-retours client. 

Et d’intégrer le client au maximum dans la phase de conception.

C’est pour ça que chez Hippocampe, on pratique un vrai 4 mains avec nos clients. Question de coller au plus près de leurs attentes.

Tadam : on tombe sur le principe de base des méthodes agiles ! 

 

Qu’est-ce qu’une méthode agile ? 

Ça veut dire quoi agilité au juste ? C’est être capable de réagir et de s’adapter rapidement aux changements de son environnement interne et externe. 

Bon après, il faut quand même se dire une chose : trop d’agilité, tue l’agilité. Si l’on passe son temps à changer la direction et les fonctionnalités d’un projet en cours de route, on n’avancera jamais. 

D’où l’importance de bien prendre le temps au début du projet pour définir son périmètre et ses objectifs dans les grandes lignes. 

Donc l’idée concrètement, c’est de définir les principales fonctionnalités attendues du projet.

Puis on les détaille au fur et à mesure de l’avancement. On peut même en rajouter de nouvelles, selon les retours utilisateurs. 

 

l’utilisateur doit être au cœur de l’approche agile !

 

 

On crée le projet pour lui, pas pour nous. Donc, il faut être au plus proche de ses attentes et intégrer son avis tout au long du projet. 

Sachant que l’on a souvent tendance à changer d’avis, l’approche agile prend tout son sens.

En effet, elle donne au projet la souplesse nécessaire pour évoluer en fonction des changements d’avis de vos clients. 

 

 Les quatre piliers de la méthode agile 

Les méthodes agiles sont soutenues par 4 grands piliers (selon le Manifeste agile) : 

  • L’humain : mettre en avant les personnes derrière la réalisation du projet. Toute la valeur ajoutée vient de leurs interactions (richesse et qualité des échanges) plutôt que des processus complexes autour d’eux.
  • La technique : utiliser des outils techniques qui soutiennent la collaboration et les interactions. C’est-à-dire des outils qui permettent de :
    • modifier rapidement et facilement un projet,
    • rendre les informations et les ressources accessibles,
    • fluidifier la collaboration et la communication

Des outils orientés sur l’action, plutôt que des outils descriptifs (style la documentation à rallonge que personne ne lit).

  • La collaboration : ouvrir la collaboration à toutes les personnes impactées par le projet. C’est-à-dire l’équipe projet, les clients, les partenaires externes, d’autres collaborateurs de l’entreprise… L’important étant de maximiser la valeur ajoutée et de répondre directement aux besoins du client.
  • L’adaptabilité : savoir réagir au changement et rectifier ses plans en conséquence. 

 

 Donc qui dit méthode agile, dit méthode de collaboration ouverte, centrée sur l’humain, modulable et soutenue par les outils digitaux adaptés. 

 

 

Les 12 principes de la méthode agile

Toujours selon le Manifeste agile, voici la liste des 12 principes de l’approche agile :

  • Priorité numéro 1 : satisfaire votre client,
  • Intégrez les changements de besoin au cours du projet,
  • Livrez des rendus de projet régulièrement (par cycles), 
  • Faites collaborer utilisateurs (du projet) et développeurs en continu,
  • Choisissez des personnes motivées par le projet, soutenez-les et faîtes leur confiance, 
  • Privilégiez le dialogue en face à face,
  • Utilisez un logiciel opérationnel pour mesurer votre progression,
  • Maintenez un rythme constant au niveau de l’équipe projet (développeurs, client, utilisateurs, chef de projet), 
  • Visez une qualité excellente au niveau de la technique et de la conception,
  • Soyez efficace, faites au plus simple, 
  • Laissez l’équipe s’auto organiser, 
  • Adaptez régulièrement votre organisation et vos méthodes de travail pour être plus efficaces.

 

Quel est le bon état d’esprit pour adopter les méthodes agiles ? 

 Les méthodes agiles, vous l’aurez compris, c’est plus qu’une méthode : c’est une approche, un état d’esprit.

Pour vous aider à adopter le bon état d’esprit et maîtriser les méthodes agiles, on vous livre nos conseils. 

Déjà, si vous suivez les valeurs et les principes de l’approche agile, vous devriez vous en sortir. Maintenant entre comprendre et appliquer, il y a une marge.

Voilà pourquoi, on vous recommande vraiment d’appliquer ces 3 principes

 

1. Ton égo de côté tu mettras

Souvent, c’est l’égo et les intérêts personnels qui viennent entraver la collaboration sur un projet.

Quand vous êtes en mode agile, vous êtes branchés sur la fréquence “je reste ouvert aux propositions d’évolution du projet, même si je pense que mon idée est meilleure, et même si j’ai la flemme de développer de nouvelles fonctionnalités”. 

Il s’agit donc de mettre de côté son égo, ses intérêts personnels (et sa flemme), et de se remettre en question en permanence pour le bien général du projet. 

 

On pense équipe avant tout !

 

 

D’ailleurs, c’est impératif d’avoir une équipe soudée et qui aime travailler ensemble pour collaborer en mode agile.  

Une fois toute l’équipe branchée sur cette fréquence, la collaboration est beaucoup plus fluide, et le projet avance vite et mieux !

Et c’est plus agréable de travailler dans ces conditions… 

 

2. Proactif et force de proposition tu seras 

Souvent, les demandes d’évolution et de changements viennent de vos clients ou de vos utilisateurs.

Vous devez rester à l’écoute de leurs besoins.

Maintenant, il s’agit aussi de ne pas perdre de temps et d’être efficace. Logiquement, vous êtes suffisamment expert dans votre domaine pour vous rendre compte :

  •       des fonctionnalités qui pourraient poser problème, avant de les développer,
  •       des fonctionnalités inutiles,
  •       des fonctionnalités plus pertinentes à proposer. 

Vous devez donc être proactifs. 

Ça veut dire concrètement : faire des tests auprès des utilisateurs du projet. Leur poser toutes les questions objectives pour obtenir des informations utiles. 

Vous aurez les réponses pour réaliser ou amender ce que vous aviez imaginé en tant qu’expert.

L’idée est de gagner du temps en vous épargnant le travail et les développements inutiles. 

 

 Vous devez donc être force de proposition et apporter des conseils professionnels à vos clients, dès le début du projet

 

 

3. Poser des limites avec ton client tu devras 

Un projet agile dans la tête du client ça veut dire :

“Oh chouette ! Donc c’est open bar pour les demandes d’évolution de mon projet ! Et puis, vous êtes sympa, ça ne devrait pas prendre trop de temps de rajouter 2-3 fonctionnalités. Vous pouvez faire un petit geste, non ?”. 

Ben non justement. 

Ce n’est pas parce que l’on fonctionne en mode agile que l’on est aussi agile sur le budget ou le temps de développement. 

Donc votre mission consiste à faire comprendre à votre client que vous vous inscrivez dans une démarche agile.

Vous devez lui expliquer les principes de l’approche agile et votre fonctionnement (selon la méthode agile que vous choisissez). 

S’il n’a pas compris, n’hésitez pas à lui partager notre article 😉 

 

Surtout, n’oubliez pas de vous mettre d’accord sur les limites du projet écrites noir sur blanc.


C’est sécurisant pour vous et pour le client

 

 

Et on vous parle bien des limites des deux côtés : client et agence !

Par exemple, votre client peut avoir des limites budgétaires. De votre côté, vous pouvez avoir des limites en termes de planning de production. 

L’idée est de trouver un compromis entre vos contraintes et celles de votre client pour que le projet se déroule dans des conditions justes pour les deux parties. 

Après, l’approche agile n’est pas toujours évidente à appliquer avec tous les clients, surtout en France. On vous explique pourquoi un peu plus loin. 

 

Les avantages et les inconvénients des méthodes agiles 

 

Les avantages de l’approche agile…

Pour résumer, l’approche agile vous offre 3 grands avantages

  • Une plus grande satisfaction côté client : comme vous collaborez étroitement avec lui, vous êtes sûr de lui livrer un projet répondant exactement à ses besoins.
    Et puis, l’approche agile c’est clairement un avantage pour lui niveau compétitivité et ROI projet, vu qu’il peut évoluer avec les attentes de ses utilisateurs.

 

  • Une plus grande satisfaction côté équipe : comme vos collaborateurs ont plus de responsabilités et d’autonomie dans ce type d’approche, c’est plus motivant et gratifiant pour eux. A condition de bien gérer l’équipe évidemment.

 

  • Une plus grande flexibilité dans votre planning de production : vous pouvez donc potentiellement faire rentrer plus de projets.
    Attention à ne pas avoir les yeux plus gros que votre capacité de production ! Assurez-vous que vous aurez les ressources humaines, techniques et le temps suffisant à disposition. 

 

Et une pointe d’inconvénients, assortie de sa mousse de conseils

La médaille agile comporte aussi ses quelques revers… Voici ceux qu’il faut vraiment retenir avant de se lancer :

  • Pas de vision finale sur le projet au départ : le plus gros inconvénient avec les méthodes agiles, c’est que l’on n’a pas une vision précise de ce que l’on va faire au départ.
  • Donc ça veut dire que l’on ne peut pas avoir une idée précise du temps et du coût final…
  • Et ça, pour le client et pour l’agence, c’est problématique !
  • Le client doit maîtriser son budget. Quant à l’agence, elle doit gérer ses plannings de production et ses ressources.
  • Il s’agit donc de bien prendre le temps en amont de poser les bases du projet (périmètre et limites).

 

  • Trop de changements, tuent le changement : n’oubliez pas qu’avec de trop nombreux changements, votre projet risque de faire du sur-place et de perdre en cohérence.
  • Donc priorisez les évolutions en fonction de leur pertinence, du périmètre du projet et des limites fixées avec votre client.

 

  • Projets difficiles à suivre sur le long terme : si vous avez une même équipe travaillant sur plusieurs projets et sur une longue période (6 mois par exemple), le suivi des cycles de développement devient plus compliqué.
  • Il devient surtout difficile d’avoir une vision d’ensemble sur chaque projet (sauf si vous utilisez de supers outils de gestion de projet, comme Asana).
  • Le pire, c’est pour les projets à long terme (1 an ou plus), ou les projets très complexes (sujets de fond) : ça devient vraiment plus compliqué de s’y retrouver et de bien les organiser.
  • Donc pour vous attaquer à une méthode agile, vous devez avoir une gestion optimale de vos plannings de production, de vos projets et de votre équipe.
  • Vous devez notamment connaître votre équipe et ses capacités de travail.

 

  • Difficultés en termes de maintenance : comme vous fonctionnez essentiellement sur la base d’échanges en direct, garder une trace devient plus compliqué (documentation, résultats des décisions, points sur les étapes clés…).
  • Et ça peut poser un sacré problème lorsque d’autres personnes reprennent le projet.
  • A vous de mettre en place des règles et une certaine discipline pour documenter les éléments clés, et rendre possible la maintenance par des personnes tierces. Votre client n’en sera que plus content !

 

La solution pour faire accepter l’approche agile à vos clients (surtout français) 

 En fait, l’agilité, c’est une question d’état d’esprit !

Une fois la méthode agile pure acceptée, on accepte tout ce qui en découle. Donc du côté du client, c’est accepter de remettre au pot en fonction des développements supplémentaires. 

Du côté de l’agence, c’est accepter et prévoir un planning de production flexible. Ce qui implique beaucoup de choses au niveau de la gestion des projets et des ressources. Il faut être équipé ! 

En France, vu notre culture, on doit trouver le bon dosage !  

On a tendance à vouloir s’engager pour des plans fixés et définis, mais en court de route on veut aussi “ça et puis ça, et finalement pas ça, mais ça à la place. Ah c’est hors budget ? Mais vous ne pouvez pas l’ajouter au projet ? Parce qu’on n’y avait pas pensé avant…”.  

Ben non, ça ne fonctionne pas comme ça. 

 

Donc la solution serait plutôt de trouver le bon équilibre entre une approche 100% agile et un projet fixe.

 

 

Pourquoi pas un plan prédéfini avec un budget comportant une part fixe et une variable.

Un budget fixe dans les grandes lignes du projet (le périmètre). Un engagement des deux parties à utiliser un budget variable en fonction des fonctionnalités RÉELLEMENT développées. 

Pour cette partie, vous pouvez utiliser un outil de ticketing pour rendre le suivi des évolutions plus facile. C’est le même principe que pour la maintenance de sites internet

En plus, c’est moins coûteux, parce que le coût s’adapte exactement à ce qui est développé, ni plus, ni moins. Vous avez une meilleure vision côté planning et côté budget.

 

En fait, c’est comme si vous achetiez une voiture sur-mesure. On va la construire ensemble, mais vous ne savez pas combien elle va coûter au final. Si ce n’est que l’on peut préciser une fourchette de prix. 

 

 

Après, il y a toujours une solution pour rester à périmètre budgétaire identique. Il suffit de retrancher un module non indispensable au lancement du projet !

Votre client ne souhaite pas s’engager dans une démarche agile ?

Cela ne vous empêche pas de vous organiser de manière agile en interne et de présenter des livrables au fur et à mesure.

Et quand le client veut une nouvelle fonctionnalité, on lui explique que ce n’est pas dans le périmètre du projet et que c’est un coût en plus. 

Attention à tout de même bien suivre le périmètre du projet, car on peut vite se faire déborder et dépasser le budget prévu initialement. 

Et ça, ça vaut et pour le client et pour l’agence… 

Sauf si l’on s’inscrit dans une démarche 100% agile, et là on sait que le projet, et donc le budget, seront totalement flexibles. Vous voilà paré à tous les imprévus, ou presque 😉 

 

Dans le prochain épisode de la série méthodes agiles et gestion de projet…

On vous prépare une liste des méthodes agiles les plus utilisées. Surtout, on vous expliquera pour quels types de projets elles sont les plus adaptées !