MCNEXT expert microsoft      

Votre portail de communication et de collaboration dans office 365

L'agilité : une nouvelle conception du projet 

Lors des débuts de l’informatique, les entreprises se sont naturellement tournées vers un mode projet qui a fait ses preuves. L’utilisation de méthodes prédictives, utilisant des processus en cascade. Que ce soit dans le secteur industriel ou dans le secteur informatique, cette démarche montre aujourd’hui ses limites, car elle n’est pas adaptée à l’évolutivité et à la complexité des marchés, des besoins et des techniques.

Ce constat a débouché sur l’apparition de nouveaux dogmes sur la gestion de projet, comme le « lean manufacturing » qui a propulsé Toyota en tête des constructeurs automobile. Dans l’informatique c’est le mouvement agile, dans la même mouvance que le « lean manufacturing », qui se démocratise et propose un changement de valeurs sur la conduite des projets, afin d’améliorer le développement des systèmes d’information.

Au milieu des années 90, plusieurs méthodologistes de l’informatique ont expérimenté des méthodes issues du « lean manufacturing » ou d’autres mouvances. Réalisant que ces différentes méthodes, basées sur des processus adaptatifs, avaient beaucoup de points communs. Ces méthodologistes se sont réunis en 2001 pour produire le manifeste agile, qui reprend l’essence de ces expérimentations. Ce manifeste comportant quatre valeurs et douze principes, est considéré comme l’élément fondateur de la mouvance Agile.

Voir le manifeste agile

Qu'est ce que l'Agile ?

Dans le contexte projet, être agile c’est être capable de s’adapter au changement. Que ce soit des changements de besoins, de priorités, de technologies, ou d’équipe projet.

L'agilité passe par l'adoption de valeurs :

Le respect de ces valeurs repose sur quelques principes :

  • La première priorité est de satisfaire le client en livrant tôt et régulièrement des logiciels qui leur apportent de la valeur.
  • Le changement est accepté, même tardivement dans le développement. Les processus agiles exploitent le changement comme avantage compétitif pour le client.
  • Livrer fréquemment une application fonctionnelle, idéalement toutes les 2 à 4 semaines.
  • Les équipes du métier et les développeurs doivent collaborer quotidiennement au projet.
  • Construisez le projet autour de personnes motivées. Donnez leur l'environnement et le soutien dont elles ont besoin, et croyez en leur capacité à faire le travail.
  • La méthode la plus efficace pour transmettre l'information est une conversation en tête à tête.
  • Un logiciel fonctionnel est la meilleure unité de mesure de l’avancement du projet.
  • Les processus agiles recommandent un rythme de développement durable. Commanditaires, développeurs et utilisateurs doivent pouvoir maintenir le rythme sur le long terme.
  • Une attention continue à l'excellence technique et à la qualité de la conception améliorent l'agilité.
  • La simplicité est essentielle, i.e. l'art de maximiser la quantité de travail à ne pas faire.
  • Les meilleures architectures, spécifications et conceptions sont issues d'équipes qui s'auto-organisent.
  • À intervalle régulier, l'équipe réfléchit aux moyens de devenir plus efficace, puis accorde et ajuste son comportement dans ce sens.

La mise en œuvre de ces valeurs a été formalisée à travers de nombreuses méthodes, au rang desquelles on trouve :

  • Scrum
  • eXtreme Programming (XP)
  • DSDM
  • Crystal Clear


En quoi un processus agile est-il différent ?

  • Itératif et incrémental car le système est conçu et construit par petits morceaux successifs. Chaque itération étant vue comme un point de synchronisation et de feedback entre les acteurs du projet. Chaque incrément doit produire un système stable et fonctionnel.
  • Planifié sur des fonctionnalités, priorisées par importance métier, plutôt que sur des blocs fonctionnels ou sur des tâches.
  • Parallèle et concurrent car les fonctionnalités développées lors d’un incrément peuvent appartenir à plusieurs domaines fonctionnels ou techniques.
  • Géré de façon transparente car chaque itération débouche sur une communication auprès de tous les acteurs sur la situation du projet.
  • Auto ajustable car le client peut moduler ses exigences, en connaissance de cause.
  • Met l’accent sur la communication car tous les acteurs collaborent en continu sur le projet.
  • Managé par facilitation car les équipes gèrent la conception et les plannings de façon collective. Le management est informé fréquemment et régulièrement, s’assure que les contraintes de l’entreprise sont respectées et fournit le support nécessaire

Vous souhaitez en savoir plus ou mettre en place une démarche agile sur votre projet .Net ?

Contactez ici la direction du Pôle Développement DotNET.