24 points par GN⁺ 2024-09-27 | 17 commentaires | Partager sur WhatsApp

« Agile n’est plus vraiment Agile ; il est donc temps qu’Agile disparaisse avec Jira. »

  • Les cycles de développement logiciel s’allongent, les équipes techniques grossissent, la gestion du développement exige toujours plus d’applications, il y a de moins en moins de personnes qui codent réellement et, sur des périodes toujours plus courtes, les progrès entre les points de contrôle continus diminuent toujours davantage.
  • Où est-ce qu’Agile a commencé à dérailler ?
    • Agile est une méthodologie développée au début des années 2000 comme alternative aux processus de développement logiciel lourds et centrés sur la documentation.
    • Mais aujourd’hui, Agile se transforme en une méthode de gestion de projet complexe, semblable à celles qu’il était censé remplacer.

La bloat technologique (Tech Bloat) est le problème principal

  • La principale raison pour laquelle beaucoup abandonnent Agile, ou envisagent de le faire, est la bloat technologique.
  • La bloat technologique est l’ennemie de toutes les entreprises tech et représente aussi un risque pour les entreprises non technologiques qui ont des équipes de développement internes ou externalisées.
  • La bloat technologique est différente de la dette technique, mais elle en génère.
  • Les symptômes de la bloat technologique sont les suivants :
    • parler régulièrement aux clients sans pour autant devenir expert de leur comportement ;
    • évaluer et réévaluer en permanence les échéances et les dates de livraison ;
    • une réticence extrême à lancer le processus de développement tant que chaque détail n’a pas été documenté ;
    • une motivation à commencer par les tâches les plus faciles plutôt que par les plus risquées.

Les conséquences chaotiques de la bloat technologique

  • Augmentation de la documentation
    • La documentation qui suit non seulement ce qui a été développé et pourquoi, mais aussi « comment » cela a été développé, s’infiltre dans le processus.
    • Ce « comment » devient le cœur des mises à jour de statut, ce qui conduit à réévaluer sans cesse la manière dont l’équipe travaille.
    • Les équipes passent plus de temps à discuter des raisons pour lesquelles le travail n’est pas terminé qu’à le faire réellement.
  • Multiplication des échéances
    • Davantage de délais sont fixés à des points de contrôle plus fréquents, ce qui engendre de la microgestion à chaque étape d’un processus pourtant fondamentalement créatif.
    • Cela va à l’encontre de la production d’un logiciel de qualité, car tout doit être livré à une date donnée, quelle que soit la qualité d’exécution.
  • Le doute permanent dans le processus de réévaluation
    • Pendant les périodes de réévaluation, ce doute constant empêche de déclarer des bonnes pratiques, d’éliminer le gaspillage et de reconnaître les économies d’échelle.
  • La microgestion du processus de production
    • Lorsqu’environ 30 % d’une fonctionnalité complète est terminée, elle cesse souvent d’être prioritaire.
    • L’organisation entre alors dans une spirale mortelle consistant à produire ce qui figure sur la roadmap, sans se demander si cette roadmap définit encore la construction d’un produit réussi.
  • Résultat final
    • Le produit souffre sous le poids de demandes clients variées et contradictoires.
    • Les fonctionnalités arrivent souvent tard sur le marché et sont livrées dans l’ordre et selon la méthode les plus adaptés à l’équipe technique, et non au marché.
    • Au final, les équipes commerciales et marketing se rebiffent, car elles ne savent plus ce qu’elles vendent, et les clients ne savent plus ce qu’ils achètent.
    • L’organisation se lance alors dans un grand ménage.

Le monde a besoin de logiciels légers qui excellent sur l’essentiel, pas de davantage de fonctionnalités

  • Ce n’est pas une idée nouvelle, mais c’est une idée dont toutes les méthodologies finissent par s’éloigner.
  • Les gens finissent par se demander si la méthode Toyota est encore suffisamment « Toyota » pour Toyota, et cela devient en soi un générateur de travail supplémentaire.
  • Agile est désormais devenu un PMP avec un nom plus mignon, des réunions plus courtes et davantage de règles.
  • Le problème n’est pas l’idée d’Agile, mais son exécution et l’absence de leadership capable de la garder sous contrôle.
  • C’est un problème de management intermédiaire, focalisé sur les délais plutôt que sur l’utilité, sur les coupes plutôt que sur la croissance, et sur les économies plutôt que sur le progrès.

L’avis de GN⁺

  • Agile, à l’inverse de son intention initiale, se bureaucratise et se formalise, au point de ralentir le développement logiciel.
  • La bloat technologique est un facteur de risque à surveiller non seulement dans Agile, mais dans toute organisation technique.
    • La documentation, la fixation d’échéances et la microgestion peuvent au contraire dégrader la qualité et la vitesse.
  • L’essence d’Agile repose sur l’orientation client, la collaboration et la flexibilité ; il faut donc revenir à ses principes plutôt que de s’enfermer dans les formes.
  • En développement logiciel, l’important n’est pas d’ajouter toujours plus de fonctionnalités, mais de bien implémenter les fonctions essentielles.
  • La culture d’organisation et le leadership déterminent le succès ou l’échec d’Agile ; les responsables techniques doivent donc y prêter une attention particulière.
  • Il semble temps d’explorer de nouvelles méthodologies au-delà d’Agile.

17 commentaires

 
dajoa 2024-09-30

Comme l’article original est payant, je n’ai pas pu le lire jusqu’au bout, mais je pense qu’il serait bon d’affiner un peu la formulation de la traduction.
« Comme Agile n’est plus agile, il est désormais temps qu’Agile disparaisse avec Jira. »
=> « Puisqu’Agile a cessé d’être agile, il est désormais temps qu’Agile disparaisse avec Jira. »

Il existe une distinction conceptuelle entre Agile avec une majuscule et agile avec une minuscule,
et being agile et doing agile, bien que liés, sont pensés séparément.
being agile by doing agile.

 
ahwjdekf 2024-09-28

La raison de l’adoption de l’Agile est essentielle. Est-ce qu’on l’adopte pour mieux développer ? Non : c’est plutôt « je ne supporte pas de vous voir glander ; je vais vérifier à quel point vous travaillez dur ». C’est avec cet état d’esprit qu’on l’adopte. Alors forcément, ça devient l’enfer.

 
carnoxen 2024-09-27

À ce stade, on dirait qu’il va falloir une checklist de conformité agile.

 
silbi 2024-09-27

Au-delà du débat entre Agile et waterfall, si l’environnement — les personnes, la culture, etc. — reste inchangé, imposer n’importe quelle méthodologie de développement, aussi innovante soit-elle, ne mènera qu’à une version à la coréenne du K-OOO.

 
[Ce commentaire a été masqué.]
 
regentag 2024-09-28

Du point de vue du développement, s’il n’y a (presque) aucun changement de spécifications, il est vrai que le waterfall est une méthode vraiment confortable. À condition qu’il n’y ait justement aucun changement de spécifications…

 
[Ce commentaire a été masqué.]
 
koreaisbest 2024-09-27

L’agilité version K n’est même pas réévaluée..!
Client : ce serait mieux si le bouton était ici sur cet écran
Développeur : (ça veut dire que je vais encore devoir passer la nuit dessus alors qu’il y a aussi de nouvelles tâches)
Client : il faudrait qu’il y ait un bouton sur un autre écran
Développeur : (que quelqu’un utilise le clonage sur moi) oui haha..
Client : ce n’est toujours pas prêt ? Ça aurait déjà dû être terminé selon le planning, non ?
Développeur : (au secours) oui..;;

 
kimjoin2 2024-09-27

Il semble qu’il y ait peu de cas où l’agile est utilisé de manière vraiment agile sur le long terme,
et que la plupart des organisations finissent par converger vers un travail en waterfall avec des délais courts.

 
sice81 2024-09-27

Le problème, ce n’est pas l’agile. Ce sont les gens qui le pratiquent. Quelle que soit la méthodologie qu’on apporte, au final tout dépend de la manière dont les personnes l’appliquent. Pour moi, l’agile n’est pas une méthodologie, mais plutôt un état d’esprit consistant à faire progresser le produit à intervalles réguliers. Si on passe à côté de cela et qu’on se contente de faire du planning et des rétrospectives de manière aveugle, j’ai l’impression que c’est une perte de temps.

 
kandk 2024-09-27

Je pensais que ce n’était le cas que du k-agile, mais apparemment c’était un phénomène mondial.

 
galadbran 2024-09-27

On a quand même l'impression qu'ils tapent sans cesse à côté de la plaque... Le critère devrait plutôt être de savoir si ça correspond ou non au Manifeste Agile...

 
beoks 2024-09-28

Même Uncle Bob, qui a participé au Manifeste Agile, a compris ce problème très tôt et a publié en 2019 le livre Clean Agile pour corriger les dérives de l’agile, mais ce genre de problème persiste encore. Personnellement, je pense que c’est parce que l’agile n’a pas de lignes directrices standardisées et s’appuie sur l’expression vague de « culture ». J’aimerais qu’on propose des lignes directrices standard plus concrètes.

 
savvykang 2024-09-27

L’auteur semble penser qu’il faudrait probablement abandonner n’importe quelle méthodologie dès qu’elle devient bureaucratique.

 
castedice 2024-09-27

Je suis d’accord. J’ai l’impression qu’il y a de plus en plus de cas où l’on pratique un Agile mal compris, puis où l’on affirme qu’Agile est erroné.
D’un autre côté, je me dis aussi que, même si cela fait déjà pas mal de temps que c’est apparu, il semble inévitable qu’il soit difficile d’accumuler de bonnes pratiques.

 
brainer 2024-09-27

Après tous ces détours, on revient au point de départ ?

 
GN⁺ 2024-09-27
Commentaires sur Hacker News
  • Les problèmes d’Agile

    • En tant que directeur de l’ingénierie dans une entreprise, il constatait qu’une équipe indépendante de Scrummasters se contentait d’animer le stand-up du matin, sans qu’on sache ce qu’elle faisait le reste du temps
    • Il a réduit le rôle de l’équipe de Scrummasters et permis aux équipes de fonctionner de manière autonome, jusqu’à en faire l’équipe centrale de l’entreprise
    • L’équipe de Scrummasters a été réduite de moitié
  • Les principes du manifeste Agile

    • Privilégier les individus et les interactions plutôt que les processus et les outils
    • Privilégier un logiciel fonctionnel plutôt qu’une documentation exhaustive
    • Privilégier la collaboration avec le client plutôt que la négociation contractuelle
    • Privilégier l’adaptation au changement plutôt que le suivi d’un plan
  • Le cœur d’Agile

    • L’objectif d’Agile n’est pas d’accélérer la vitesse de développement
    • L’important est d’éviter les fonctionnalités inutiles et de réduire le gaspillage
    • De petites itérations permettent d’éviter le big design upfront et les fonctionnalités à faible ROI
    • JIRA n’est qu’un système de suivi des tickets, pas la cause des problèmes de livraison
  • La flexibilité d’Agile

    • Agile n’est pas une méthodologie figée et doit être appliqué avec souplesse selon l’équipe et l’organisation
    • Les parties prenantes pouvant varier selon les projets, il faut savoir s’adapter avec flexibilité
  • Avis sur JIRA

    • JIRA est utile pour lire les tickets et les projets, commenter et vérifier si le travail est terminé
    • Si la plupart des gens détestent JIRA, c’est surtout parce que les organisations utilisent les sprints et les points comme outils de contrôle
    • JIRA convient comme simple outil de suivi des tâches et des bugs
    • Agile et JIRA sont deux choses distinctes, et beaucoup de critiques visent en réalité le processus Agile lui-même
  • Les origines d’Agile

    • Agile est né dans le conseil en développement web comme un processus défensif pour gérer de mauvais clients
    • Il était important de documenter chaque décision, d’éviter les calendriers figés et de produire des livrables de travail très détaillés
    • Ce n’est pas une bonne manière de fabriquer du logiciel, mais c’est une méthode cohérente
    • Cela séduit les grandes entreprises non techniques, où l’avantage concurrentiel vient d’autres facteurs que la technologie et où il suffit que le logiciel fonctionne suffisamment bien
  • La situation actuelle d’Agile

    • Agile n’est pas en train de mourir, il a déjà gagné
    • Le développement itératif est devenu la base du développement logiciel
  • Les problèmes de JIRA

    • JIRA n’est pas Agile, c’est un logiciel chargé de fonctionnalités inutiles
    • Si l’on n’a besoin que des tableaux et des notifications, c’est qu’on l’utilise mal
  • L’application d’Agile

    • Il s’efforce d’appliquer les principes Agile à des centaines de projets
    • Il est difficile de faire fonctionner Agile sur des projets avec périmètre, budget et calendrier fixes
    • Si l’on définit les objectifs du projet et la manière de les mesurer, on peut ajuster le périmètre en fonction des fonctionnalités prioritaires
    • Certains projets utilisent une méthodologie Agile, tandis que d’autres parties avancent en waterfall, dans une approche hybride