Manifeste agile
Le Manifeste pour le développement agile de logiciels (The Manifesto for Agile Software Development, titre original en anglais) est un texte rédigé par dix-sept experts du développement d'applications informatiques sous la forme de plusieurs méthodes dites agiles. Ces experts estimaient que le traditionnel cycle de développement en cascade ne correspondait plus aux contraintes et aux exigences des organisations en évolution rapide. Les méthodes agiles ne sont pas apparues avec le Manifeste en 2001 mais celui-ci détermine leurs dénominateurs communs et consacre le terme d'« agile » pour les référencer. Les valeurs et principes du Manifeste agile sont défendus par l'Agile Alliance.
Introduction
En , aux États-Unis, dix-sept spécialistes du développement logiciel se sont réunis pour débattre du thème unificateur de leurs méthodes respectives, jusqu'alors appelées sans consensus méthodes lights.
Les plus connus d'entre eux étaient Ward Cunningham l'inventeur du Wiki via WikiWikiWeb, Kent Beck, père de l'extreme programming et cofondateur de JUnit, Ken Schwaber et Jeff Sutherland, fondateurs de Scrum, Jim Highsmith, prônant l'ASD, Alistair Cockburn pour la méthode Crystal clear, Martin Fowler, et Dave Thomas ainsi qu'Arie van Bennekum pour DSDM (Dynamic System Development Method) la version anglaise du RAD (développement rapide d'applications), Robert Cecil Martin pour Clean Architecture.
Parmi les autres signataires, Andy Hunt[1], Jared Richardson (fondateur ultérieurement de la méthode GROWS) ou Ron Jeffries[2] notamment ont remis en cause ultérieurement non les principes eux-mêmes, mais leur mise en pratique et leur dévoiement notamment à des fins commerciales.
Ces dix-sept experts venant tous d'horizons différents réussirent à extraire de leurs concepts respectifs des critères pour définir une nouvelle façon de développer des logiciels.
De cette réunion devait émerger le Manifeste agile, considéré comme la définition canonique du développement agile et de ses principes sous-jacents[3].
Le Manifeste agile est constitué de quatre valeurs et de douze principes fondateurs.
Quatre valeurs[4]
Nous découvrons de meilleures approches du développement logiciel en le pratiquant et en aidant les autres à le pratiquer. Ce travail nous a amené à accorder de l'importance [5] :
- aux individus et leurs interactions plutĂ´t qu'aux processus et aux outils ;
- à un logiciel fonctionnel plutôt qu’à une documentation exhaustive ;
- à la collaboration avec les clients plutôt qu'à la négociation contractuelle ;
- à l’adaptation au changement plutôt qu'à l'exécution d’un plan.
Cela signifie que, bien qu'il y ait de la valeur dans les éléments situés à la fin, notre préférence se porte sur les éléments qui se trouvent en première partie de phrase.
Douze principes [6]
- Notre plus haute priorité est de satisfaire le client en livrant rapidement et régulièrement des fonctionnalités à grande valeur ajoutée.
- Accueillez positivement les changements de besoins, même tard dans le projet. Les processus Agiles exploitent le changement pour donner un avantage compétitif au client.
- Livrez fréquemment un logiciel fonctionnel, dans des cycles de quelques semaines à quelques mois, avec une préférence pour les plus courts.
- Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet.
- Réalisez les projets avec des personnes motivées. Fournissez-leur l’environnement et le soutien dont elles ont besoin et faites-leur confiance pour atteindre les objectifs fixés.
- La méthode la plus simple et la plus efficace pour transmettre de l’information à l'équipe de développement et à l’intérieur de celle-ci est le dialogue en face à face.
- Un logiciel fonctionnel est la principale mesure de progression d'un projet.
- Les processus agiles encouragent un rythme de développement soutenable. Ensemble, les commanditaires, les développeurs et les utilisateurs devraient être capables de maintenir indéfiniment un rythme constant.
- Une attention continue Ă l'excellence technique et Ă un bon design.
- La simplicité – c’est-à -dire l’art de minimiser la quantité de travail inutile – est essentielle.
- Les meilleures architectures, spécifications et conceptions émergent d'équipes auto-organisées.
- À intervalles réguliers, l'équipe réfléchit aux moyens possibles de devenir plus efficace. Puis elle s'adapte et modifie son fonctionnement en conséquence.
Résumé de la mise en pratique
Le développement agile, appelé aussi développement adaptatif, se caractérise donc par un style de conduite de projet itératif incrémental, centré sur l’autonomie des ressources humaines impliquées dans la spécification, la production et la validation d’une application intégrée et testée en continu (méthode agile).
C’est à partir de ces réalités pratiques, et non pas sur la base d’une théorie globale ou structurante, que l’agilité progresse vers les sphères les plus hautes de l’organisation et participe à la création de ce que l'on peut appeler une culture agile[7] de l'organisation.
Organisation
L'Agile Alliance est une organisation sans but lucratif chargée de promouvoir à l'échelle mondiale les valeurs et principes du Manifeste agile[8].
Notes et références
- (en) « The Failure of Agile », (consulté le )
- (en) « Developers Should Abandon Agile », sur https://ronjeffries.com, (consulté le )
- "The Agile Manifesto was put forward in 2001, and several method instantiations, such as XP, SCRUM, and Crystal exist.", Kieran Conboy & Brian Fitzgerald, Extreme Programming And Agile Methods - XP/Agile Universe 2004: 4th Conference On Extreme Programming And Agile Methods, Calgary, Canada, August 15-18, 2004, Proceedings, chap. Toward a Conceptual Framework of Agile Methods, Springer Verlag, New York, , (ISBN 354022839X), lien
- « Manifeste pour le développement Agile de logiciels », sur agilemanifesto.org (consulté le )
- (fr) Manifeste pour le développement Agile de logiciels
- « Principes sous-jacents au manifeste », sur agilemanifesto.org (consulté le )
- Patrice Fornalik, « La culture agile qu’est ce que c’est ? », Ekilium,‎ (lire en ligne, consulté le )
- https://www.agilealliance.org/
Voir aussi
Articles connexes
Bibliographie
- Méthode Agile, Les meilleures pratiques, Compréhension et mise en œuvre, Jean-Pierre Vickoff, QI, 2009. (ISBN 978-2912843074)
- (en) Agile Software Development Ecosystems: Problems, Practices, and Principles, Jim Highsmith, Addison-Wesley, 2002 (ISBN 0201760436). Lienhttp://agilemanifesto.org/