Manifeste Agile : les 4 valeurs et 12 principes agiles

Write a few words about the company or service

Le Manifeste Agile est le document de référence pour toutes les méthodes de gestion de projet agile et pour tous les agilistes de façon plus générale. Rédigé au début des années 2000 par 17 experts du développement informatique (dont Kent Beck, père de l'eXtreme Programming, ou encore Ken Schwaber et Jeff Sutherland, créateurs de Scrum), le Manifeste Agile effectue la synthèse des différentes méthodes utilisées afin de proposer une définition du développement agile. Il décrit les bases et les règles de l'agilité au travers de 4 valeurs et 12 principes.

Les 4 valeurs du Manifeste Agile


Les individus et leurs interactions, de préférence aux processus et aux outils


L'idée ici est de donner plus de valeur aux personnes participant au projet qu'aux processus et aux outils. La valeur ajoutée provient bien des personnes. Ce sont des êtres humains qui dirigent le projet, qui conçoivent les produits et qui développent les fonctionnalités. Il sera beaucoup plus difficile de comprendre les besoins des clients ou des équipes, de s'adapter aux demandes de changement, si les développements sont dirigés par des processus plutôt que par des personnes. Il est donc particulièrement important de mettre l'humain au centre des préoccupations, et de favoriser la communication entre les différents intervenants, de façon à réagir de la façon la plus adaptée et la plus rapide possible aux différents changements qui ne manqueront pas de survenir durant le projet.

Des solutions opérationnelles, de préférence à une documentation exhaustive


Rédiger une documentation exhaustive, efficace et pratique nécessite du temps, beaucoup de temps parfois. Les documentations liées à un produit ou à un projet sont nombreuses : cahier des charges, livret des exigences, spécifications fonctionnelles, spécifications techniques, conception d'interface utilisateur ou étude ergonomique, plan de tests, manuel utilisateur, manuel d'exploitation… Chacune nécessite du temps pour les rédiger d'une part, et du temps pour obtenir leur validation d'autre part. Bien entendu, tout ce temps n'est pas perdu, il est important qu'un produit soit correctement documenté.

Néanmoins, si l'on souhaite réellement qu'une documentation exhaustive existe avant de réaliser les développements, le projet risque fort de prendre du retard. Si la documentation est toujours présente dans un projet agile, elle est rationalisée. Elle n'a pas besoin d'être exhaustive, mais juste suffisante pour que le développeur soit en mesure de commencer à créer la fonctionnalité. La documentation est donc toujours présente, mais le plus important doit rester finalement un produit opérationnel, une application qui correspond aux besoins du client.

La collaboration avec les clients, de préférence aux négociations contractuelles


Le contrat signé par le client et le fournisseur, qui a fait l'objet d'une négociation en amont du projet, défini les engagements des différentes parties. Le contenu du produit et les modalités de livraison y sont décrits. Lorsque vient le temps de la réalisation du produit, l'accent doit être mis sur la collaboration avec le client plutôt que sur le contenu du contrat.

Si tout est décrit dans le contrat, la moindre fonctionnalité, le client comme l'équipe de développement n'ont que très peu de marge de manœuvre. La vérification du respect des demandes énoncées dans le contrat ne peut généralement se faire qu'à la fin du projet. Cela engendre un effet tunnel généralement néfaste tant pour le client que pour l'équipe projet.

Dans un projet agile, le client s'engage aux côtés de l'équipe de développement durant toute la phase de réalisation. La collaboration et les échanges sont continus. Les développeurs ont la possibilité de poser des questions directement au client afin d'obtenir des précisions, le client a la possibilité de demander des modifications au cours du projet et les différentes fonctionnalités sont validées lors de démonstrations réalisées périodiquement. De cette façon, on s'assure tout le long du projet que les fonctionnalités déjà développées correspondent bien au besoin exprimé.

La réponse au changement, de préférence au respect du plan


Dans une méthode classique, toute demande de changement par rapport à la demande initiale doit être évitée ou faire l'objet d'une nouvelle négociation pour être financée. Le plan de développement est réalisé au début du projet et doit être tenu jusqu'à la fin. L'utilisation d'itérations de courtes durées en mode agile va permettre de modifier les priorités des fonctionnalités à réaliser ou encore d'en ajouter de nouvelles lors de la prochaine itération. Dans le cas de demandes de changements de la part du client (ou de la part de l'équipe technique si une nouvelle contrainte est apparue), c'est le processus projet qui s'adapte au nouveau besoin et non l'équipe de développement.

Les 12 principes du Manifeste Agile


Satisfaire le client avant tout


Notre principale priorité est de satisfaire le client en livrant rapidement et régulièrement des solutions qui apportent de la valeur.

Le client est placé au centre du projet afin qu'il puisse participer activement à toutes les phases de réalisation du produit.

Accueillir les changements avec bienveillance


Accueillez chaleureusement les changements de besoins, même tardifs dans le développement. Les processus agiles tirent parti du changement pour renforcer l'avantage concurrentiel du client.

La gestion du changement fait partie des méthodes agiles. Le besoin du client peut évoluer au cours du projet et le maximum doit être fait pour une prise en compte dans les meilleures conditions.

Livrer fréquemment


Livrez souvent des solutions opérationnelles, à une fréquence allant de quelques semaines à quelques mois, avec une préférence pour les échelles de temps les plus courtes.

Une livraison fréquente de fonctionnalités complètes ou non permet d'obtenir des retours réguliers des utilisateurs finaux et ainsi de réorienter les développements si nécessaire.

Collaborer quotidiennement avec les utilisateurs et les développeurs


Les personnes en charge du métier ou des affaires et les personnages en charge de la réalisation doivent travailler ensemble chaque jour, tout au long du projet.

Collaborer quotidiennement avec le client est sans aucun doute la méthode la plus efficace pour s'assurer que le produit en cours de développement corresponde le plus possible à ce qui est attendu.

Motiver les personnes


Construisez les projets à partir des personnes motivées. Donnez-leur l'environnement et le soutien dont elles ont besoin et faites-leur confiance pour mener à bien le travail.

Le bien-être des membres de l'équipe projet est une priorité. Une équipe qui dispose d'un espace de travail adapté et convivial et d'outils opérationnels est bien plus productive. Mettre l'humain au centre des préoccupations est l'une des caractéristiques des méthodes agiles.

Favoriser le dialogue et la communication


La conversation en face à face est la méthode la plus efficace et la plus économique pour donner des informations à une équipe de réalisation, et pour échanger des informations à l'intérieur de l'équipe.

Dialoguer en face à face est le moyen de plus efficace de communiquer des informations, loin devant la messagerie électronique et tous les outils de collaboration collaboratifs.

Un logiciel opérationnel comme mesure de progression du projet


La disponibilité de solutions opérationnelles est la principale mesure d'avancement.

Mesurer l'avancement des développements n'est pas toujours simple, car tout le code produit ne génère pas nécessairement un affichage ou une sortie pouvant être évaluée. On ne mesure donc que ce qui est terminé. Le développement d'une fonctionnalité est donc soit à 100%, soit à 0% (même s'il est commencé), il n'y a pas de demi-mesure.

Maintenir un rythme de développement soutenable


Les processus agiles encouragent à respecter un rythme soutenable lors de la réalisation. Les commanditaires, les réalisateur et les utilisateurs devraient pouvoir maintenir indéfiniment un rythme constant.

Allonger systématiquement la durée des journées de travail ne rendra pas l'équipe de développement plus productive, bien au contraire. Si des éléments perturbateurs viennent gêner le travail, mieux vaut se concentrer sur leur suppression plutôt que de travailler plus longtemps ou obliger l'équipe à terminer plus tard. Un rythme de travail raisonnable permettra à l'équipe de le maintenir et de rester productive sur le long terme.

S'assurer de l'excellence technique de la solution


Porter continuellement attention à l'excellence technique et à la qualité de la conception renforce l'agilité.

Miser sur l'excellence technique, sur une qualité supérieure du code produit permet de limiter les anomalies potentielles ainsi que leur impact. Cela permet également d'assurer de la qualité des développements sur le long terme, quels que soient les changements pouvant se produire dans l'équipe.

Privilégier la simplicité


La simplicité – l'art de maximiser la quantité de travail qu'on ne fait pas – est essentielle.

Le développement « KISS » est à privilégier (« Keep It Simple & Stupid »). Les développements sont limités à la demande en cours de traitement et rien de plus. Le développeur doit aller au plus simple, ne rien ajouter qui ne soit pas explicitement demandé (et qui pourrait générer des anomalies supplémentaires), quitte à revenir sur le code plus tard pour l'améliorer.

S'assurer de l'auto-organisation de l'équipe


Les meilleures architectures, les meilleures spécifications de besoins, et les meilleures conceptions émergent d'équipes auto-organisées.

Qui mieux que les membres de l'équipe peuvent savoir ce qui est le mieux pour être plus efficace ? Une équipe auto-organisée sera toujours plus productive que si on lui impose des processus de gestion parfois trop lourds.

Mettre en place un processus d'amélioration continue


A intervalles réguliers, l'équipe réfléchit aux façons de devenir plus efficace, puis modifie son comportement et l'ajuste en conséquence.

L'amélioration continue est un élément essentiel dans une équipe agile. Cela permet à l'équipe de progresser dans sa façon de faire, d'améliorer les processus et son organisation de façon à être toujours plus productive.

Pour conclure sur le Manifeste Agile


Le Manifeste Agile pose les bases des différentes méthodes de gestion de projet agile. S'il est parfois contesté et que des propositions d'évolutions apparaissent régulièrement, il reste néanmoins la référence en matière d'agilité.

Le logiciel de gestion de projet en ligne Nutcache propose tous les outils qui vous permettront de respecter les valeurs et les principes du Manifeste Agile. N'hésitez pas à profiter d'une version de test gratuitement durant 14 jours.

Add your title here

This is a paragraph. Writing in paragraphs lets visitors find what they are looking for quickly and easily. Make sure the title suits the content of this text.

Add your title here

This is a paragraph. Writing in paragraphs lets visitors find what they are looking for quickly and easily. Make sure the title suits the content of this text.

Contact Us Amy Time