L'histoire et le contexte qui ont donné naissance au développement logiciel agile.
Avant l'agilité, la plupart des logiciels étaient construits selon la méthode « en cascade » : recueillir toutes les exigences à l'avance, tout concevoir, tout construire, puis tester à la fin. Cela fonctionnait pour les ponts et les bâtiments, mais les logiciels sont différents.
Le problème? Au moment de la livraison, les exigences avaient changé. Les utilisateurs ne savaient pas ce qu'ils voulaient avant de le voir. Et trouver des bogues à la fin signifiait des retouches coûteuses.
Les statistiques étaient brutales :
La découverte fondamentale
Le développement logiciel ressemble davantage à la recherche scientifique qu'à la construction. On apprend en cours de route, et le plan doit s'adapter aux nouvelles connaissances.
En 2001, dix-sept développeurs de logiciels se sont rencontrés dans une station de ski en Utah. Ils venaient d'horizons différents — Extreme Programming, Scrum, Crystal et autres — mais partageaient une frustration commune face aux processus lourds.
Ce qu'ils ont créé n'était pas un nouveau processus. C'était un ensemble de valeurs et de principes qui pouvaient guider n'importe quel processus. Le Manifeste Agile était intentionnellement bref : quatre valeurs et douze principes.
La découverte clé : adopter le changement comme avantage concurrentiel, ne pas le combattre.
L'agilité repose sur l'empirisme — l'idée que la connaissance provient de l'expérience et de la prise de décisions basées sur ce qui est observé.
Trois piliers soutiennent l'empirisme :
Transparence — Tout le monde peut voir ce qui se passe réellement. Pas de statut caché, pas de surprises.
Inspection — Examiner régulièrement le travail et la façon dont l'équipe travaille ensemble.
Adaptation — Quand quelque chose ne fonctionne pas, changez-le. N'attendez pas la permission.
C'est fondamentalement différent de la gestion de projet traditionnelle, qui suppose que vous pouvez tout planifier à l'avance si vous essayez assez fort.