qu'est-ce que la méthode agile ?

L'approche agile en informatique

Avant que l’approche agile ne se répande et soit reconnue dans la gestion de projet IT, on recourrait à des méthodes plus classiques.

Pourquoi un passage à l’approche agile ?

L’hypothèse de base de la méthodologie classique est que les coûts d’un projet augmentent fortement lorsque le projet original est modifié durant la phase d’implantation. Partant de là, il est primordial de limiter les changements en élaborant un contrat « rigide » avec le client et en privilégiant la phase préparatoire de planification du projet avec un cahier des charges ultra-précis. Ainsi, au moment de la phase initiale, on estime le client capable de définir de manière complète ce qu’il souhaite dans la solution développée !

Cette méthode renvoie à plusieurs problèmes :

  • Un temps et un budget important sont consacrés à la définition d’un cahier des charges
  • De ce fait, peu de latitude est accordée à l’intégration de changement du fait de la prégnance des travaux d’analyse et de précision des besoins (les changements deviennent plus coûteux et plus longs à implémenter)

Or, d’après la grande majorité des spécialistes en informatique, établir un cahier des charges fixe est très délicat. En effet, le client ne sait souvent lui-même pas exactement ce qu’il veut et l’environnement technique est en constante mutation. D’où la difficulté de planifier et d’organiser en amont un processus de développement logiciel dans son ensemble : il y aura forcément des modifications, des changements du besoin client etc

Ainsi, les principes de gestion de projet informatique et de développement logiciel « classiques » ont été remis en question et le marché a évolué vers de la gestion de projet « agile ».

L’approche agile : une nouvelle vision

approche-agile-illustrée


Dans le contexte que nous venons d’aborder, on a pu voir les caractéristiques suivantes sur la gestion de projet informatique :

  • Instabilité et obsolescence des demandes
  • Fortes exigences des clients
  • Mutation permanente du marché technologique
  • Diversification des offres

Ces caractéristiques poussent les développeurs à rechercher davantage de réactivité, d’adaptabilité dans leur processus de développement.

D’où une transition vers davantage d’agilité dans les processus de développement. Agilité qui peut se définir de différentes manières :

  • Agilité comme intégration du changement et non comme frein ou détournement
  • Agilité comme méthode dépassant l’imprévisibilité de l’environnement grâce aux individus et à leur créativité
  • Agilité qui permet de s’emparer de la rigidité des méthodes de développement classiques pour répondre de manière plus efficace aux changements rapides et continus dans un environnement instable

Plus concrètement : à la suite d’une concertation de 17 experts du développement logiciel, un manifeste agile a été élaboré. Ce dernier défend une gestion de projet informatique plus légère et réactive que les méthodologies en vigueur. Les quatre valeurs fondatrices présentées dans le manifeste agile sont les suivantes :

« Nous découvrons comment mieux développer des logiciels par la pratique et en aidant les autres à le faire. Ces expériences nous ont amenés à valoriser :

  • Les individus et leurs interactions plus que les processus et les outils
  • Des logiciels opérationnels plus qu’une documentation exhaustive
  • La collaboration avec les clients plus que la négociation contractuelle
  • L’adaptation au changement plus que le suivi d’un plan

Nous reconnaissons la valeur des seconds éléments, mais privilégions les premiers. »

Conclusion

Le manifeste agile est donc une approche qui illustre un changement culturel profond dans un métier. Plus qu’une gestion de « projet », l’approche agile permet une gestion de « produit » ; laissant au changement et au client une place importante dans le processus de développement du logiciel. La flexibilité acquise permet davantage de réactivité et l’aboutissement d’un plus grand nombre de projet.

Pour aller plus loin :

Les dernières actus