Pour piloter efficacement les projets informatiques au moyen des pratiques agiles, il est important d’en comprendre la philosophie. L’agilité dépasse la notion de méthodologie pour se concevoir comme une véritable culture projet à part entière. Un projet n’est agile que s’il repose sur les 12 principes du « Manifeste Agile », eux seuls garantissant pleinement l’agilité de la méthode employée (méthode agile Scrum ou autre). Comment piloter efficacement les projets informatiques bancaires ?

 

1) Les 4 valeurs des pratiques agiles

 

Le « Manifeste agile », bible de l’agilité rédigée en 2001 par 17 experts du développement logiciel, repose sur quatre valeurs fondamentales auxquels les projets doivent accorder une importance particulière.  

 

Les individus et leurs interactions

Aux processus et aux outils mis au premier plan dans les cycles de développement dits en « cycle en V », se substitue une nouvelle valeur à replacer au centre du projet : les individus et leurs interactions. Cette valeur répond à la question « pourquoi faire ? » au sens de « dans quel but » ? : l’intention prime sur   le processus. Sans pour autant que celui-ci soit minimisé.

Les individus (équipe de développement, client, Product Owner, Scrum Master, etc.) engagent des interactions entre eux avec trois objectifs principaux : challenger les idées, générer le mouvement et engager les individus dans la cause. Les interactions plus fluides permettent de fédérer les membres de l’équipe autour du projet commun.

 

Des logiciels opérationnels

« Les logiciels opérationnels plutôt que de la documentation exhaustive ». Cette valeur répond à la question « quoi » et invite à repenser la valeur livrée.

Alors qu’un projet suivant la méthode « cycle en V » génère une documentation précise en quantité à valider avant chaque développement (spécification technique, plans de tests, etc.), les pratiques agiles la rationalisent au strict nécessaire. La documentation doit permettre à l’équipe de réaliser son travail, ni plus, ni moins. L’important est de fournir un livrable « qui fonctionne », et démontrer ainsi la réussite du développement.

 

La collaboration entre les développeurs et les clients

La relation client-développeur est placée au centre d’un projet agile plutôt que la négociation contractuelle. La question « comment » invite à repenser le contact client. Alors que les méthodes « cycle en v » ou « en cascade » invitent les acteurs d’un projet informatique à négocier les aspects contractuels dans les moindres détails avant le démarrage de la prestation, les méthodes agiles proposent un angle différent : celui de la collaboration.

La négociation cadre la relation en élaborant les détails du projet (échéances, planning, livraison, etc.) y compris les pénalités associées. La collaboration en revanche engage le client, non plus simplement avant et après le processus de réalisation, mais tout au long de celui-ci. Il y a une idée sous-jacente de « co-construction » et d’engagement mutuel. Cette collaboration se manifeste par la tenue de cérémonies telle que la Sprint Review des projets en méthode agile Scrum qui est une démonstration du travail réalisé durant le sprint écoulé.  

 

L’adaptation au changement

Répondre au changement est plus important que de suivre un plan précis. Cette dernière valeur interroge sur le sens du projet, « vers quoi allons-nous ». Là où les projets suivant une méthode « traditionnelle » voient le changement comme une perturbation du plan à éviter autant que possible, entraînant généralement un coût supplémentaire, les projets agiles le considèrent au contraire comme le moteur d’une démarche d’amélioration continue.

Ce changement est facilité par des itérations courtes. Ainsi le droit à l’erreur est consacré au prix d’une réactivité exemplaire. Développer, se tromper, réagir, améliorer selon la devise : « Fail but fail fast ».

Attention, le plan ne disparait pas, un projet agile pose des objectifs et un plan de développement mais celui-ci ne se veut pas contractuel. La planification détaillée ne dépasse pas le cadre de l’itération. Cela se manifeste dans la méthodologie Scrum par une cérémonie appelée « Sprint planning » qui vise à organiser l’itération à venir mais non le projet dans son ensemble. La force des pratiques agiles réside dans le fait de mener les projets de façon structurée tout en proposant une véritable souplesse. 

 

2) Les bienfaits de l'agilité dans votre processus de réalisation

 

Ces 4 valeurs fondamentales s’appuient sur 12 principes organisationnels qui doivent servir de  guidelines tout au long du projet.

 

La satisfaction et le feedback régulier par les clients

La satisfaction client est au centre des attentions, ce qui implique de le faire intervenir au maximum durant la construction du produit. Cela ne veut pas dire que les méthodologies « en V » ou « en cascade » ne se soucient pas de la satisfaction client, mais en agile celui-ci est engagé durant tout le processus afin de délivrer un produit ou un service qui réponde à 100% au besoin utilisateur.

 

Accepter les changements de besoin 

L'équipe de réalisation se doit d’accueillir positivement et de manière réactive des demandes d’évolution impliquant un changement au sein du scope du produit. L’objectif est de permettre l’acquisition d’un réel avantage concurrentiel pour le client.

 

Livrer fréquemment de nouvelles versions opérationnelles

Réduire les cycles de réalisation et livrer des versions opérationnelles aux clients dans un laps de temps le plus court possible. Appliquer ce principe permet d’obtenir régulièrement des feedbacks utilisateur permettant d’adapter le produit. Cela rappelle la devise « Fail but fail fast ». Le Manifeste agile recommande des livraisons régulières et des itérations courtes. 

 

Travailler ensemble quotidiennement

Les pratiques agiles supportent mal  le manque de communication régulière. Aussi souvent que possible il est recommandé de coopérer : demander des explications, être disponible pour clarifier le besoin. Équipe de réalisation, Scrum master, Product Owner et clients peuvent être rassemblés dans un espace de travail autour du même projet par exemple. Les demandes client ne doivent toutefois pas perturber le travail de développement et seront généralement canalisées par le Product Owner. 

 

Individus motivés

Le projet agile fédère les individus autour d’un projet commun. Garder les membres de l’équipe motivés est primordial. L’humeur de ceux-ci est un indicateur à suivre tout au long du projet. Les équipes supportent d’ailleurs mal les changements de membres une fois qu’ils ont appris à travailler ensemble.

 

Conversation en face à face

Les pratiques agiles impliquent l’oral plutôt que l’écrit, le dialogue en face en face plutôt que le mail ou tout autre outil de communication à distance.

 

Le bon fonctionnement du logiciel

Tout ce qui est commencé mais non terminé est considéré comme à 0% d’avancement. On mesure l’avancement du produit à son opérationnalité. L’objectif de chaque itération étant de produire un service qui fonctionne.  

 

Un rythme soutenable

La durée courte des itérations ne doit pas conduire les équipes à s’épuiser. L’objectif des pratiques agiles est, au contraire, de maintenir un rythme constant et soutenable, ce qui vise à favoriser la productivité et la créativité.

 

L’excellence technique

La conception ne disparaît pas d’un projet en agile. Avant de coder une user story, les équipiers s’appliquent à en faire la conception. Cela permet de s’assurer que la user Story est bien comprise et de limiter la livraison de produits inadéquats au besoin utilisateur. Il est demandé de s’interroger sur la valeur produite à chaque itération.   

 

La simplicité est primordiale

Dans cette même optique, les pratiques agiles visent à éliminer le travail inutile et superflu pour aller à l’essentiel. On invitera volontiers les développeurs à suivre le principe KISS « Keep it simple (stupid) » afin d’éviter la sur-inflation fonctionnelle et les usines à gaz.

 

Equipes qui s’auto-organisent

Pas de hiérarchie, pas de processus rigide et un minimum de contraintes permettent aux équipes de s’organiser en totale autonomie. Cela nécessite de faire travailler ensemble des individus motivés par un objectif commun (principe 5) !  

 

Amélioration continue

Par des rituels réguliers, l’équipe agile travaille dans un objectif d'amélioration continue. Les pratiques agiles ne suivent pas un plan détaillé mais proposent un « framework », un cadre de travail. La méthodologie Scrum s’organise autour de quatre rituels qui rythment le projet. La « rétrospective » ou « Sprint review » représente particulièrement bien ce principe d’amélioration continue puisqu’il s’agit de la réunion qui se tient à la fin du sprint et durant laquelle le travail réalisé est inspecté pour adapter le backlog produit si nécessaire. Tout au long d’un projet agile, les équipes modifient leur comportement pour améliorer leur efficacité.

 

Si votre projet informatique répond à ces 12 principes, c’est que celui-ci est bien mené selon une gestion agile.  Avant d’être une méthodologie, l’agilité est un état d’esprit !

Déposer un commentaire

Inscrivez-vous à notre newsletter