Principes communs à toutes les méthodes Agile
Avec un esprit Agile commun, les signataires du manifeste Agile ont défini 4 valeurs déclinées en 12 principes. Ces 12 principes ont donné lieu à une multitude de méthodes. Certaines de ces méthodes existaient avant le manifeste Agile, d'autres ont vu le jour après.
Cependant, la grande majorité des méthodes Agile partagent des principes communs en ce qui concerne la philosophie Agile, les rôles et responsabilités, l'organisation du groupe de projet, les types de réunions, les techniques de gestion du périmètre et des changements.
Philosophie Agile
Les diverses méthodes Agile suivent toutes les mêmes principes de base :
Focalisation sur la valeur ajoutée à apporter au client.
Cycle court de délivrance de la valeur, allant de 1 à 4 semaines.
Ouverture à tous les types de changement.
Équipe multi disciplinaire capable de s'auto-organiser.
Inclusion du client ou de ses représentants dans les différentes réunions.
Respect de l'individu et acceptation de la contestation.
Transparence vis-à-vis du client.
Rôles et responsabilités dans Agile
La majeure partie des méthodes se basent sur 3 rôles et responsabilités bien distinctes : une équipe Agile, un responsable de produit et un facilitateur.
L'équipe de développement
L'équipe de développement comporte 3 à 10 personnes qui sont des spécialistes – généralistes capables de comprendre d'autres spécialités que la leur. Par exemple, un spécialiste du codage en mode objet connaîtra les grandes lignes du codage Web.
Les membres de l'équipe doivent pouvoir s'auto-organiser, être ouverts au changement et à la critique, motivés et travailler comme membre d'un groupe plutôt que comme un individu.
Cette équipe de développement respecte totalement les principes du manifeste Agile, par exemple les principes :
Numéro 5 : « 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 ».
Numéro 11 : « Les meilleures architectures, spécifications et conceptions émergent d'équipes auto-organisées ».
Mettre en place une équipe Agile implique cependant des changements dans la manière dont les organisations vont fonctionner par rapport aux méthodes traditionnelles.
Exemple :
Les organisations devront revoir leur manière de percevoir et d'évaluer leurs collaborateurs ou accepter une planification ou une budgétisation à plus court terme que dans les méthodes traditionnelles.
Le responsable produit
Le responsable produit fait l'interface entre le client final et les membres de l'équipe. Il est chargé de comprendre les exigences des clients, de gérer les priorités du périmètre du projet et d'assurer que l'équipe délivre de la valeur régulièrement.
Le responsable produit prend les décisions relatives au produit et fait les retours d'information aux parties prenantes.
Le rôle de responsable produit, répond en totalité aux valeurs 3 et 4 du manifeste Agile :
La collaboration avec les clients plus que la négociation contractuelle,
L'adaptation au changement plus que le suivi d'un plan.
Le facilitateur
Le facilitateur a pour première mission de s'assurer de la bonne application des règles et procédures Agile. Sa seconde mission consiste à enlever les points bloquants.
Exemple :
De manière concrète, c'est le facilitateur qui, par exemple, mettra en place les réunions Agile, coordonnera les formations demandées par les membres de l'équipe, ou s'assurera que l'équipe a toujours les bonnes ressources pour fournir un travail efficace.
En cela, le facilitateur permet au principe N° 5 du manifeste Agile de fonctionner.
Types de réunions Agile
Attention : Introduction
Le terme Sprint est souvent employé dans les méthodes Agile pour désigner le cycle ou l'itération. Le terme de Sprint sera donc utilisé.
Introduction
Les méthodes Agile partagent 4 types de réunions :
Les réunions de planification du sprint, les réunions journalières, les réunions de fin de sprint et les réunions d'introspection.
La réunion de planification du sprint
La réunion de planification du sprint répond bien à la quatrième valeur du manifeste Agile : « L'adaptation au changement plus que le suivi d'un plan ».
Dans cette réunion, le responsable produit, en tenant compte des contraintes de l'équipe, décidera quelles fonctionnalités et quels changements seront développés pendant le sprint. Cette réunion se fait 1 fois par sprint, en général au début, soit toutes les 1 à 4 semaines.
Les réunions journalières
Les réunions journalières répondent à plusieurs principes du manifeste Agile, en particulier au principe numéro 4 « Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet. »
Les réunions journalières sont courtes, idéalement de 10 à 20 minutes. Elles se tiennent à heure fixe, le matin de préférence avec l'équipe de développement, le responsable produit et le facilitateur.
Pour respecter la durée, ces réunions se font debout, pourquoi pas avec le café du matin.
Ces réunions ont pour but de partager ce qui a été réalisé la veille et ce qui va être réalisé le jour de la revue. Elles sont aussi le moment idéal pour partager tout point bloquant ou urticant et demander de l'aide au facilitateur.
Les points bloquants seront bien entendu réglés en dehors de la réunion journalière.
La réunion de fin de sprint ou réunion de démonstration
La réunion de fin de sprint répond parfaitement aux principes suivants du manifeste Agile :
Principe Numéro 1 : « Notre plus haute priorité est de satisfaire le client en livrant rapidement et régulièrement des fonctionnalités à grande valeur ajoutée ».
Principe Numéro 3 : « Livrez fréquemment un logiciel opérationnel avec des cycles de quelques semaines à quelques mois et une préférence pour les plus courts ».
En effet, cette réunion se tient en fin de sprint donc toutes les 1 à 4 semaines. L'équipe, le facilitateur, le responsable de produit et le client sont présents.
Le but de cette réunion est de présenter ce que l'équipe a réalisé pendant le sprint et d'obtenir l'accord du client ou de comprendre les changements à apporter.
La réunion d'introspection
La réunion d'introspection répond parfaitement au principe Numéro 12 du manifeste Agile : « À intervalles réguliers, l'équipe réfléchit aux moyens possibles pour devenir plus efficace, puis règle et modifie son comportement en conséquence ».
Cette réunion a lieu en fin de sprint. L'équipe, le facilitateur, le responsable de produit sont présents. Le client peut être invité.
Le but de cette réunion est de se poser la question sur ce qui a bien marché ou moins bien marché dans le sprint qui se termine.
Parmi ce qui a moins bien fonctionné, l'équipe choisira 3 ou 4 axes d'amélioration et mettra en place les actions correctrices correspondantes pour le sprint à venir.
Gestion du périmètre
La notion de périmètre en Agile est beaucoup plus flexible qu'avec les méthodes traditionnelles.
Dans les développements informatiques qui délivrent un produit sur de nombreuses années, le périmètre est défini sur 3 niveaux : au niveau de la feuille de route globale du produit, puis au niveau de la version du produit et enfin au niveau de chaque sprint.
Le périmètre global et le périmètre de chaque version échappent en général aux équipes de projet et sont définis par des analystes business et les décideurs de l'entreprise.
Le périmètre du sprint sera, par contre, géré par l'équipe et le responsable produit avec l'aide du facilitateur si besoin.
Exemple :
Ce processus est typiquement utilisé dans l'élaboration des systèmes d'exploitation informatique ou de logiciels pour lesquels il est prévu des évolutions sur le long terme.
Les fonctionnalités du périmètre de la version sont rassemblées dans un backlog. Ces fonctionnalités sont triées par ordre d'importance et de valeur pour le client.
Le responsable produit va créer le backlog du sprint en privilégiant les fonctionnalités ou les changements qui fournissent le plus de valeur ajoutée au client. Cette extraction tiendra compte des contraintes apportées par l'équipe de développement.