Big Data, Science des données, aide à la décision en entreprise, business intelligence, data warehouse, reporting, OLAP, web analytics, data visualization, data mining, internet des objets, informatique cognitive, intelligence artificielle...

Abonnez-vous gratuitement à Decideo !


Decideo

 


Les méthodes Agiles, une autre conduite des projets informatiques


Rédigé par Thierry LECLERE, GFI Informatique le 4 Juillet 2008

La conduite ‘classique’ des projets informatiques trouve ses limites lorsque l’environnement technologique n’est pas stable, ou bien lorsque la Direction utilisatrice est dans l’incapacité de définir ses besoins de manière exhaustive dès le début du projet. Pour répondre à ces difficultés, d’autres voies ont été explorées. Et c’est en 2001 qu’un groupe de 17 personnalités de l’industrie logicielle a défini une nouvelle manière de conduire les projets. La mise au point du manifeste « agiles » signe la naissance des méthodes agiles dans le développement d’une application informatique.



Les méthodes Agiles, une autre conduite des projets informatiques
Les méthodes dites « Agiles » s’articulent autour de 4 grandes valeurs :
• Des individus et des interactions plutôt que des processus et des outils ;
• Des fonctionnalités opérationnelles plutôt que de la documentation exhaustive ;
• Une collaboration avec le client plutôt que des négociations contractuelles ;
• De l’ouverture aux changements plutôt que le suivi d’un plan rigide.
Ces méthodes visent à réduire le cycle de vie du logiciel en réalisant une version minimale, puis en intégrant les fonctionnalités par un processus itératif basé sur une écoute active du futur utilisateur du système. Les tests étant réalisés tout au long du développement, le produit ainsi délivré est de haute qualité et prend en compte les évolutions du besoin. Le client redevient pilote à part entière de son projet et obtient très vite une première version de son logiciel.

Différentes déclinaisons ont émergé : RAD (Rapid Application Development), DSDM (Dynamic System Development Method), XP (eXtrem Programming), SCRUM pour les plus connues. Mais elles ont tous en commun un ensemble de principes fondamentaux :
• Le processus est organisé en itérations courtes. Une itération embarque un ensemble de fonctionnalités opérationnelles ;
• Le processus est incrémental. Il prend en compte les évolutions au cours des itérations ;
• Une attention particulière est portée sur la qualité et les tests lors de chaque itération ;
• Une étroite collaboration s’installe entre les différents acteurs.
La mise en place d’une organisation Agiles s’accompagne aussi d’un ensemble d’indicateurs permettant de piloter le projet (avancement, coût, délais, performance, …) et aussi de ne pas négliger la gestion des risques. Le fonctionnement de l’application – ou le taux de couverture fonctionnelle – est le premier indicateur d’avancement du projet.

L’outillage (composants, patterns, framework et autres plates formes de développement et d’intégration continue …) généralement associé à une production de logiciel est un des moyens d’améliorer la collaboration et la capitalisation et de permettre à chaque membre de l’équipe d’être efficace sur le projet dès le début. La mise en œuvre et la pratique de ces outils permet d’aller vite aux fonctionnalités essentielles, de partager et obtenir plus rapidement un retour.
Dans le cadre d’une production industrialisée, la capitalisation devient un incontournable permettant de progresser rapidement – en terme de performance et de qualité de production – en s’appuyant sur un socle de base solide et partagé.
Les organisations de type Front Office / Back Office (développement en Offshore) tireront aussi avantage de ces méthodes et organisations en assurant un parfaite collaboration entre le Front Office et le Back Office, en contrôlant au plus tôt les écarts par rapport au plan de marche (au moins à chaque itération et plus souvent encore) et surtout en ayant tous les moyens d’assurer la conformité du livrable aux exigences attendues.

Le combat des méthodes Agiles a été engagé il y a maintenant plus de vingt ans mais il reste toutefois beaucoup à faire pour tenir compte de la relation contractuelle et prendre en compte les ajustements nécessaires dans l’organisation des rôles et des ressources. Au-delà de la méthode, il s’agit pour chaque organisation de personnaliser et d’instrumenter les pratiques essentielles sur un socle stable et évolutif et de rendre à la communication interpersonnelle sa place majeure au cœur du dispositif.

Thierry LECLERE est Directeur technique au sein du pôle NTIC, Centre de Services IDF GFI Informatique




Commentaires

1.Posté par mrabet le 06/07/2008 10:57
Bravo pour cet article; je suis aussi un "adepte" de cette approche et je suis heureux de constater que la reflexion continue de s'enrichir.
Vous êtes sur la bonne voie! Une difficulté à ne pas sous estimer est la reticence des SSII à s'engager avec un client sur ce type d'approche, il faut donc proposer un mode de contractualisation "standard" et adapté, à mi chemin entre forfait et régie...

2.Posté par patrick le 07/07/2008 10:33
L'intégration de la solution développée "agilement" doit aussi pouvoir s'intégrer dans les plans de production rigoureux, afin d'en garantir la pérennité. "Des individus et des interactions plutôt que des processus et des outils" ? OK pour les individus et les interactions mais mon expérience personnelle (je défends cette approche depuis 10 ans) m'incite à ne pas sous-estimer l'importance de privilégier les moyens techniques maîtrisés dans l'entreprise, et d'anticiper l'intégration dans les processus industriels. Dans une architecture de data warehouse centralisé, les espaces de liberté de type "données" (pouvoir créer des tables de "travail") est également un élément clé, à négocier souvent âprement avec les "défenseurs des traditions". Tout ceci parce que développer une solution agile qui tient 12 mois est à la portée de presque tout le monde compte tenu de la maturité du sujet. Garantir la survie de la solution au-delà de cette période est déjà plus difficile. Enfin dernier point : "des individus et des interactions", cela signifie également de la confiance entre MOE et MOA pour arbitrer en équipe les priorités, en évitant les conflits dans le respect d'un objectif collectif, celui de développer le plus vite, le moins cher et surtout, le mieux possible.

3.Posté par jc-Qualitystreet le 10/07/2008 14:17
C'est une bonne synthèse.
Les méthodes agiles prennent effectivement de l'ampleur en France; j'en profite pour rappeler les bénéfices majeurs qu'elle peuvent vous apporter sur un projet: visibilité, vélocité, adaptabilité et réactivité (dimensions clés du Time to market), réduction des risques et au final qualité du produit.
Feedback, rythme et collaboration en sont les fondements, et l'intèrèt au quotidien.

Sinon vous avez dans cet article une définition, plutôt claire et précise proposée par V. Rota:
http://www.qualitystreet.fr/?2007/11/20/78-methodes-agiles-un-belle-definition

Nouveau commentaire :
Facebook Twitter

Vous pouvez commenter ou apporter un complément d’information à tous les articles de ce site. Les commentaires sont libres et ouverts à tous. Néanmoins, nous nous réservons le droit de supprimer, sans explication ni préavis, tout commentaire qui ne serait pas conforme à nos règles internes de fonctionnement, c'est-à-dire tout commentaire diffamatoire ou sans rapport avec le sujet de l’article. Par ailleurs, les commentaires anonymes sont systématiquement supprimés s’ils sont trop négatifs ou trop positifs. Ayez des opinions, partagez les avec les autres, mais assumez les ! Merci d’avance. Merci de noter également que les commentaires ne sont pas automatiquement envoyés aux rédacteurs de chaque article. Si vous souhaitez poser une question au rédacteur d'un article, contactez-le directement, n'utilisez pas les commentaires.