Méthode agile : au-dessus de 0%, c'est 100%

Qu'on se le dise !

Je n'ai jamais personnellement rencontré d'entreprise qui applique à 100% une méthodologie pour une programmation agile. Et à chaque fois que j'en parle autour de moi, mes interlocuteurs font le même constat. Il peut s'agir d'organiser les réunions, de découper les développements par blocs de valeur, d'organiser les équipes comportant un petit nombre de personnes, …

Chaque cas est unique et revêt des caractéristiques, une approche et une implication différente. Mais j'ai toujours entendu «nous appliquons/ils appliquent un peu de méthodologie agile» comme si ce n'était pas suffisant.

En fait, peu ou prou, appliquer une méthodologie agile est toujours à 100% d'agilité à partir du moment où on l'applique, même un peu.

Qu'est-ce que l'agilité ?

Il n'existe pas de méthode agile. L'agilité est un raccourci pour la «méthodologie pour des développements agiles». Cette méthodologie repose sur les principes suivants 2 blocs.

Quoi faire ?

  • Comprendre où l'on est;

  • Faire un petit pas vers l'objectif;

  • Ajuster sa compréhension à partir de ce qu'on a appris;

  • Recommencer.

Comment le faire ?

Lorsqu'on fait face à plusieurs alternatives qui délivrent grosso modo la même valeur, prendre le chemin qui rendra les futurs changements plus faciles.

Le client pour seul expert

La méthodologie «agile» est devenue une industrie et, comme dans toute industrie, elle a son lot d'experts qui vendent leurs services d'expertise.

Le problème de l'expertise est qu'elle tend à biaiser le jugement que l'on a de sa propre valeur en tant qu'expert ce qui conduit souvent à un manque d'humilité et une certaine rigidité : si le client qui nous paie n'applique pas le paquet complet d'agilité alors il n'est pas agile. Ce qui signifie que pour être «agile», il faut tout appliquer. Sinon on ne l'est pas. C'est tout ou rien.

Cependant, si on regarde bien qui a le plus d'expertise, il s'agit du client et non de l'expert en méthodologie agile.

Qui est le plus à même de comprendre les enjeux liés à son travail et aux contraintes locales ? Le client.

Qui est le plus à même de comprendre les problèmes inhérents au changement d'habitudes et d'organisation ? Le client.

Qui a le plus d'expertise concernant les difficultés internes, qu'elles soient au niveau technique, humain ou administratif ? Le client.

Ce qui conduit inévitablement à : qui a le plus d'expertise pour dire quel objectif d'agilité est possible dans le contexte donné ? Le client.

En matière de méthodologie agile, le client est le seul et vrai expert. Le consultant n'est là que pour l'aider à faire son choix et le conseiller sur le cheminement, formaliser les différentes étapes. Et c'est tout !

Une mise en place par étapes… conforme à la méthodologie

Et ceci explique pourquoi la plupart des gens qui choisissent d'appliquer une méthode agile à leur contexte n'en font qu'un morceau : ils commencent parce qu'il est humainement possible de faire dans les plus brefs délais. Qu'ils n'appliquent pas la méthode jusqu'au bout n'est pas un problème en soi car la méthode est  de comprendre où l'on est, faire un petit pas en avant, d'ajuster sa connaissance et de recommencer.

Alors c'est ce qu'ils font : ils comprennent qu'une métholologie de développement agile peut leur apporter beaucoup (étape 1), puis ils mettent en pratique le morceau qui leur paraît leur apporter le plus de valeur (étape 2), ils feront le point ensuite pour ajuster leur connaissance par rapport à ce qu'ils auront appris de cette nouvelle expérience (étape 3) avant de recommencer avec un nouveau morceau de méthodologie (étape 4).

Comment pouvons-nous donc leur reprocher de ne pas appliquer la méthodologie en entier sachant que la méthodologie préconise elle-même d'y aller par étapes ? Ils ne font qu'appliquer seulement la méthode à la mise en place de la méthode. À partir du moment où ils commencent à la mettre en place, c'est qu'elle est comprise et effective.

Ils sont donc agiles.