Il s'est passé 25 ans depuis le Manifeste Agile. Et si on prenait un peu de recul ?
On a beaucoup attribué aux agilistes des choses qui avaient été decouvertes avant eux :
- Les user stories sont un pâle rappel (pratico-pratique) de l'importance de guider le developpement par les besoins utilisateurs (Brooks, Jackson, Van Lamsweerde dans les 90s)
- Le développement itératif est déjà cité comme une pratique essentielle par Brooks fin des 70s
- Le travail théorique et pratique sur les tests a eu lieu dans les années 80s et 90s (Beizer)
- L'essentiel sur l'architecture était dit dans les 80s et 90s (Parnas, Gang of 4, etc.)
- Toute la difficile question des estimations renvoie au travail de Boehm dans les 80s et 90s
- L'importance de l'équipe et du processus qu'elle accepte (ou pas) est largement documenté chez De Marco (90s).
Logique.
Rome ne s'est pas faite en un jour.
Rendons a César.
Tout ça.
Cela dit, Agile est un vrai milestone dans l'histoire du génie logiciel. Pour trois raisons selon moi :
1️⃣ la dimension temporelle du developpement, dans le temps long (qualité) ET le temps court (itérations), n'est vraiment considérée que depuis le Manifeste
2️⃣ l'incertitude est au coeur de l'agilité, même si la prise de conscience de ce qu'elle implique vraiment est encore en cours.
3️⃣ last and certainly not least, les agilistes sont les premiers à embrasser la réalité systémique du développement logiciel. Jusqu'aux boucles de rétroaction (TDD, BDD, Continuous Delivery, Rétrospectives, etc.).
Cet aspect systémique n'est que peu discuté aujourd'hui mais je vous garanti que ce sera le cas demain : un logiciel de qualité émerge d'un système d'acteurs de qualité aux pratiques de qualité. Tout cela est très imbriqué.
Les conséquences sont majeures :
- Les faiblesses de votre logiciel et les faiblesses de votre équipe, c'est kif kif bourricot
- Il n'y a pas de logiciel de qualité sans système. Sacrée limite pour les vendeurs de rêve, #IA, #NoCode, #VibeCoding.
- Comme il n'y a pas d'équipe de qualité "pas chère", il n'existe pas de logiciel de qualité "pas cher"
#Agile #SoftwareEngineering