MeetupAgile

« Travailler en agile », « être agile »… Vous l’avez sûrement remarqué, c’est un terme à la mode en ce moment. Et pourtant ce n’est pas nouveau ! Mais qu’est-ce que c’est, en fait, cette méthodologie agile ?

Un projet réussi

Un projet réussi c’est un projet bien géré qui atteint son objectif, en respectant les délais et le budget.

A la fin des année 80 les experts ont fait le constat que la plupart des projets informatique n’aboutissaient pas ou ne respectaient pas les délais et les budgets alloués.

Les experts ont mis en place des méthodes de travail dites classiques comme le modèle en cascade, le modèle en V, ou encore le Processus Unifié.

Ces modèles classiques ont permis de construire les bases des méthodologies agiles, notamment le Processus Unifié qui est le premier modèle à faire intervenir les itérations.

Le manifeste Agile

En 2001, des experts se sont réunis aux USA et ont proposé des solutions pour remédier aux carences organisationnelles des projets. C’est la première fois que dans la réflexion, les experts ont mis en avant l’approche humaine (sentiment d’appartenance, responsabilisation…), l’idée est de prendre en compte les comportements humains pour fabriquer de la productivité et de l’efficience.

Cela a donné lieu à « l’agile manifesto » basé sur 12 préconisations. À partir de ce manifeste, plusieurs méthodes agiles ont vu le jour.

L’Agile, c’est un ensemble de bonnes pratiques rassemblées en un tout cohérent qui se renforcent mutuellement :

  • Développement itératif et incrémental : on travaille en cycle
  • Équipe pluridisciplinaire incluant le donneur d’ordre : on rassemble les compétences, le métier, le fonctionnel et le technique se mélangent
  • Collaboration ouverte et franche : tout le monde porte la responsabilité, même le client
  • Formalisme au service du projet : moins de documents. Il suffit parfois d’apposer des post-its pour faire office de spécifications (Agile poussé à l’extrême)

Focus sur la méthode XP (eXtreme Programming)

Cette méthode permet de développer un logiciel dans des conditions optimales en plaçant le client au cœur du processus de développement.

Une petite équipe de développeurs travaille directement avec le client, tout le monde est sur le même site. L’itération dure une à deux semaines. Les besoins d’utilisateurs sont des User Stories.

Focus sur la méthode SCRUM

C’est une méthode de plus en plus utilisée dans les grosse entreprise (banque, assurance, énergie…). Il s’agit d’une approche collaborative, basée sur le travail d’équipe et la communication. Le travail se fait en petite équipe, où tous les collaborateurs sont sur le même site.

Le Product Owner : il représente les intérêts du client ou des décideurs. Il décide des priorités (à travers le backlog)

Le Scrum Master : il aide l’équipe à atteindre ses objectifs en levant les obstacles et en enseignant les règles et les pratiques du scrum.

Team : ses membres jouent plusieurs rôles dans la mesure du possible (développeurs, testeurs, analystes métier…). Cela favorise la multi-compétence. (Pas de cloisonnement fonctionnel)

Limites et faiblesses des méthodes agiles

La taille de l’équipe : les méthodes agiles sont adaptées à des équipes de petite taille, les utiliser à plus grande échelle requiert une adaptation.

La présence du client : les méthodes fonctionnent au mieux si on peut détailler, négocier, prioriser les besoins avec le client en permanence.

Equipe colocalisée : il peut être difficile de réunir sur un même site des ressources appartenant à des entités voire des entreprises ou pays différents

Culture de l’entreprise : le top management peut voir d’un mauvais œil l’absence de planning détaillé à LT

Toujours adapter la méthode à son contexte

On est une équipe, on a toute les compétences dans l’équipe et on travaille avec le client.

Le choix de la méthode doit être un mix entre différentes méthodes et pratiques agiles, par exemple XP+Scrum. Ces méthodes sont flexibles. L’Agile c’est avant tout un état d’esprit, que tout le monde doit avoir pour être efficace.

 Par Fouad Rabii, chef de projet MOA chez Proxiad