Méthodes agiles. www.businessinteractif.com CONSEIL & DÉVELOPPEMENT DE SOLUTIONS E-BUSINESS. Jean-Louis Bénard jlb@businessinteractif.



Documents pareils
Les méthodes Agiles Introduction. Intervenant : Tremeur Balbous tremeur@agilegardener.com 04/09/2008

Les méthodes itératives. Hugues MEUNIER

Gestion de projet Agile. STS IRIS Module «Gérer et organiser un projet informatique»

GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET

25/12/2012

Méthodes Agiles et gestion de projets

Conduite de projets SI. Les méthodes «Agiles» N QUAL/1995/3660e ORESYS

Règles d engagement. Présentation Diapositives Bibliographie Questions Les vertus de la marche

Méthodes de développement

Cours Gestion de projet

Présentation UBO 12/2008 Présentation des méthodes agiles

Topologie du web - Valentin Bourgoin - Méthodes agiles & SCRUM

Jean-Pierre Vickoff

Scrum Une méthode agile pour vos projets

Introduction au génie logiciel

Scrum + Drupal = Julien Dubois

XP : plus qu'agile. Extreme Programming v2 et Développement Responsable. Thierry Cros

CHAPITRE 3 : LES METHODES AGILES?

Méthode Agile de 3 ème génération J-P Vickoff

Développement itératif, évolutif et agile

Génie logiciel (Un aperçu)

Soyez agile. Dans l industrie du logiciel, la. De plus chaque projet informatique

Introduction Les processus traditionnels extreme Programming Conclusion. extreme Programming. vers plus d agilité. F. Miller francois.miller@inpg.

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

Certification Scrum Master

Guide de Préparation. EXIN Agile Scrum. Foundation

Agile 360 Product Owner Scrum Master

Processus de Développement Logiciel

Développement ebusiness

Agile Maroc 24 Novembre Méthodes agiles. Thierry Cros. Agile Maroc 24 novembre 2010

Les méthodes agiles UM Les méthodes agiles S. Mathon

But de cette introduction à la gestion de projets :

Jean-Pierre Vickoff J-P Vickoff

Gestion Projet. Cours 3. Le cycle de vie

UML est-il soluble dans les méthodes agiles?

Les méthodes Agile. Implication du client Développement itératif et incrémental

Introduc)on à l Agile

Séance 1 Méthodologies du génie logiciel

Yassine ZAKARIA SÉMINAIRE : MÉTHODES AGILES

backlog du produit Product Owner

Les Méthodes Agiles. description et rapport à la Qualité. Benjamin Joguet Rémi Perrot Guillaume Tourgis

Alignement avec les métiers par le test fonctionnel et d acceptation en projets agiles

Processus de Développement Logiciel

Le Product Owner Clé de voute d un projet agile réussi

Agilitéet qualité logicielle: une mutation enmarche

Introduction à l extreme Programming et au développement agile

Scrum et l'agilité des équipes de développement

GL Processus de développement Cycles de vie

PagesJaunes.fr Mise en place de Scrum de scrum. Fabien Grellier Agile Tour Octobre

Yannick Prié Département Informatique Faculté des Sciences et Technologies Université Claude Bernard Lyon

INF2015 Développement de logiciels dans un environnement Agile Examen final hiver 2015

Les méthodes agiles en développement informatique : Fondements théoriques et retours d expérience

Eclipse Process Framework et Telelogic Harmony/ITSW

Plan. 1 Cycles de développement. 2 Méthodes agiles, principes généraux. 3 Comment se passe un Sprint?

Cours Ephec Niv. 2 : Technique et gestion de projet. Par Monsieur Bertieaux Année Académique Quelles sont les 4 valeurs Agiles?

Analyse,, Conception des Systèmes Informatiques

Méthodologies Orientées-Objet!

LA MÉTHODE AGILE VS LE CYCLE EN V UNE RÉVOLUTION DANS LA GESTION DE PROJET. Franck BEULÉ

Le management de projet

Besoins utilisateurs. Quelle démarche pour passer des besoins au code? Code. chapitre1 UNIFIED MODELING LANGUAGE. package LogiqueMetier.

Les Bonnes PRATIQUES DU TEST LOGICIEL

Qualité et Test des Logiciels. Le génie logiciel. Moez Krichen.

XP : ce célèbre inconnu

Génie Logiciel. Notes de l an passé-k. Planning Projets. Evolution des approches (1/4) Evolution des approches (2/4) Evolution des approches (3/4)

Formation agile. Formation agile Created on 24 janv Edited on 29 févr Page 1 sur 16

EXIN Agile Scrum Master

Le rôle du coach Agile et son apport pour le projet

Conditions gagnantes pour démarrer sa transition Agile

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Les méthodes Agiles. Introduc)on aux méthodes Agiles Exemple : Scrum

1/15. Jean Bernard CRAMPES Daniel VIELLE

Maîtrise d ouvrage agile

Modèle de changement d organisation. Leanpizza.net présente. Petit Guide Rapide du jeu de cartes Modèle de Changement d Organisation

SCRUM chez BWIN : implémentation d une méthode agile dans Focalpoint Spasija Taseva et Corinne Bacle

Ne renvoyez pas vos architectes! Utilisez-les avec agilité

REX Scrum Master du terrain

Scrum Le guide pratique de la méthode agile la plus populaire 3 e édition Claude Aubry 320 pages Dunod, 2013

Vision Produit. Un sacré attracteur pour une équipe auto-organisée. Thierry Cros

Extreme Programming. Le projet social. Angèle Batanero Thierry Cros. Agile Tour 2010 : XP, le projet social

Formation Scrum. 2 jours

Gestion de projet. Vers les méthodes agiles. V é r o n i q u e M e s s a g e r R o t a P r é f a c e d e J e a n T a b a k a

Retour d expérience implémentation Scrum / XP

Testeur Agile Niveau Fondation Bertrand Cornanguer, Vice-chair Agile tester WG

Les Méthodes Agiles. Plan. Lecture. Objectifs du cours

Conduite de projets informatiques Développement, analyse et pilotage (2ième édition)

Scrum et itk : adaptation de la méthode au développement d OAD. D après Henrik Kniberg Scrum et XP depuis les tranchées

Gestion de Projet Agile

Dossier Méthodes SOMMAIRE & 2 MENSUEL PUBLIÉ PAR SOC-INFOS

Formation : Modélisation avec UML 2.0 et Mise en pratique

TP3 Intégration de pratiques agiles. 1. User Stories (1) Scénario d intégration agile. En direct-live du château

Contact: Yossi Gal, Téléphone:

Architecture pragmatique pour la gestion du cycle de vie des applications (ALM)

Programmation Agile Mise en oeuvre via Scrum et l'extreme Programming (XP)

GESTION DE PROJET : LA METHODE AGILE

ISTQB Agile Tester en quelques mots ISTQB Marketing Working Group

SCRUM BUT, LE LIVRE BLANC. De la problématique de mener un projet AGILE dans une organisation classique

CINEMATIQUE DE FICHIERS

Christophe Leroy Marc Lainez. L Agilité est-elle soluble dans la culture francophone?

Transcription:

Méthodes agiles www.businessinteractif.com Jean-Louis Bénard jlb@businessinteractif.fr CONSEIL & DÉVELOPPEMENT DE SOLUTIONS E-BUSINESS 0 20 mai 2002

Sommaire Méthodes agiles : une réponse à un malaise? Caractéristiques des méthodes agiles Panorama RAD, UP extreme Programming Dynamic Software Development Method Adaptive Software Development Crystal Clear SCRUM Feature Driven development Synthèse Retours d expérience 1

Méthodes agiles : une réponse à un malaise? Quelques chiffres Selon le standish group (1998) 25% des projets respectent les délais et les budgets 45% dépassent le budget ou sont en retard 28% sont abandonnés ou voient leur périmètre largement restreint Combien correspondent à des besoins utilisateurs réels? 30% des projet e-crm e sont abandonnés (Gartner Group) En cause : l opportunité des projets, la conformité aux besoins, les technologies mais aussi les méthodes 2

Méthodes agiles : une réponse à un malaise? Le contexte économique difficile met une pression forte Rapports parfois difficiles entre la maîtrise d ouvrage et la maîtrise d œuvre Confusion entre des besoins estimés et des besoins réels Les guerres contractuelles font oublier l objectif initial Chacun s abrite derrière les modalités d un forfait qui fige dans le marbre des spécifications incomplètes Exemples 3

Méthodes agiles : une réponse à un malaise? Les méthodes portent souvent le chapeau Merise = has-been RAD = pour le client-serveur (donc has been) Unified Process = UML = trop lourd = has-been Attention : les méthodes ne sont pas forcément mauvaises mais souvent mal utilisées!!! Formation négligée Peu adaptées au contexte L utilisation d une méthode outillée et de documentations ne garantit pas le succès 4 Le super-agl bi-directionnel avec rétro-conception intégré : le mythe

Méthodes agiles : une réponse à un malaise? Facteurs clé d échec : Le manque de communication à tout niveau Une mauvaise compréhension des besoins L insuffisance de l architecture L absence de maturité des outils utilisés La mauvaise formation des personnes Le cadre contractuel inadapté L insuffisance des tests L absence d une démarche Thing Big Start Small Les effets Tunnel 5

Méthodes agiles : une réponse à un malaise? L un des principaux facteurs d échec est l absence de gestion du risque Quelque soit la méthode utilisée les risques doivent être identifiés et surveillés en permanence 6

Méthodes agiles : une réponse à un malaise? Dépendance de quatre facteurs Coût Qualité Durée Périmètre fonctionnel 7

Caractéristiques des méthodes agiles : le manifeste Priorité des personnes et des interactions sur les procédures et les outils Priorité d applications opérationnelles sur une documentation exhaustive Priorité de la collaboration avec le client sur la négociation de contrat Priorité de l acceptation du changement sur la planification 8

9 Caractéristiques des méthodes agiles : le manifeste

Caractéristiques des méthodes agiles : les principes Délivrer rapidement et très fréquemment des versions opérationnelles, pour favoriser un feed-back client permanent Accueillir favorablement le changement Assurer une coopération forte entre client et développeurs Garder un haut niveau de motivation Le fonctionnement de l application est le premier indicateur du projet 10

Caractéristiques des méthodes agiles : les principes Garder un rythme soutenable Viser l excellence technique et la simplicité Se remettre en cause régulièrement 11

Méthodes agiles : panorama extreme Programming Dynamic Software Development Method Adaptive Software Development Crystal Clear SCRUM Feature Driven development [RAD, UP?] 12

UP du point de vue de l agilité Les fondamentaux d UP Pilotage par les cas d utilisation UP est centré sur l architecture UP est itérative et incrémentale UP gère les besoins et les exigences UP est fondée sur la production de composants UP pratique la modélisation visuelle UP surveille la qualité et les risques Exigences Analyse et Conception Planning Implémentation Planning initial Évaluation Tests Déploiement 13

UP du point de vue de l agilité Les activités dans UP Expression des besoins Analyse (expression des besoins du pt de vue développeur) Conception (définition de l architecture, incrémentale) Implémentation Tests Les phases du cycle de vie Etude d opportunité (faisabilité, analyse des risques, vision globale des exigences 10% des uses cases cartographiés) Elaboration (précision de l architecture, 80% des use cases cartographiés) Construction (fourniture d une version beta) Transition (correction de bugs, préparation de l itération suivante) 14

UP du point de vue de l agilité activités phases Etude du business Etude d opportunité Elaboration Construction Transition Expression des besoins Analyse et Conception Implémentation Tests Déploiement itérations 15

UP du point de vue de l agilité UP n est pas opposé à l agilité (privilégie les cycles courts itératifs, etc.) Mais souvent considéré comme trop lourd (en dépit des outils mis à disposition par Rational) 16

extreme Programming Pères de la méthode : Ward Cunningham et Kent Beck (1996). 4 valeurs clés : Communication rendre la communication omniprésente entre tous les intervenants Simplicité il coûte moins cher d'aller au plus simple et de rajouter des fonctionnalités par la suite plutôt que de concevoir dès le départ un système très compliqué dont on risque de n'avoir jamais l'utilité Feedback indispensable pour que le projet puisse accueillir le changement Courage concerne aussi bien les développeurs que le client 17

extreme Programming : 12 principes Feedback rapide Assumer la simplicité Changements incrémentaux Accueillir le changement à bras ouverts Un travail de qualité Apprendre à apprendre Faible investissement au départ Jouer pour gagner Des expériences concrètes Communication ouverte et honnête Responsabilités acceptées Adaptation aux conditions locales Voyager léger Mesures honnêtes Les principes sont déclinés en pratiques 18

Pratiques extreme Programming Planning game phase d'exploration : écriture des besoins sous forme de "user stories" et estimation de leur durée phase d'engagement : classement des user stories par ordre de priorité. phase de direction : mise à jour du planning Petites releases Utilisation de métaphores pour décrire l'architecture du système Conception simple : toujours développer le solution la plus simple possible Tests (unitaires et fonctionnels) 19

Pratiques extreme Programming Refactoring du code : retravailler le code pour le rendre plus lisible et plus robuste Programmation en binôme Propriété collective du code Intégration continue (plusieurs fois par jour) Pas de surcharge de travail : ne pas dépasser 40 heures de travail par semaine Client sur site : présence sur site d'une personne minimum à temps plein pendant toute la durée du projet Standards de code (normes de nommage et de programmation) 20

21 Cycle de vie d un projet XP

Rôles dans XP Développeur travaille en binôme, communique doit être autonome a une double compétence : développeur concepteur Client doit apprendre à exprimer ses besoins sous forme de user stories a à la fois le profil de l'utilisateur et une vision plus élevée sur le problème et l'environnement du business doit apprendre à écrire les cas de tests fonctionnels Testeur a pour rôle d'aider le client à choisir et à écrire ses tests fonctionnels 22

Rôles dans XP Tracker Coach aide l'équipe à mieux estimer le temps nécessaire à l'implémentation de chaque user story contrôle la conformité de l'avancement au planning recadre le projet ajuster les procédures doit intervenir de la manière la moins intrusive possible Consultant n'apporte pas de solution toute faite apporte à l'équipe les connaissances nécessaires pour qu'elle résolve elle-même les problèmes Big Boss apporte à l'équipe courage et confiance 23

Dynamic Software Development Method (DSDM) : Principes implication active des utilisateurs équipes autorisées à prendre des décisions produit rendu tangible aussi souvent que possible L'adéquation au besoin métier est le critère essentiel pour l'acceptation des fournitures Un développement itératif et incrémental permet de converger vers une solution appropriée Toute modification pendant la réalisation est réversible besoins définis à un niveau de synthèse tests intégrés pendant tout le cycle de vie esprit de coopération entre tous 24

25 DSDM : Cycle de vie

DSDM : Rôles Sponsor exécutif Visionnaire Utilisateur ambassadeur Utilisateur conseiller Chef de projet Coordinateur technique Chef d équipe Développeur Facilitateur Rapporteur 26

Adaptive Software Development Méthode crée par Jim Highsmith 6 Caractéristiques principales Focaliser sur une mission ("mission focused") Se baser sur des composants ("component-based") Itérer Découper le temps et fixer des deadlines ("timeboxing") Gérer le risque (projet risk-driven) Tolérer le changement 3 phases clé Spéculer Collaborer Apprendre 27

28 ASD : Cycle de vie

ASD : Cycle de vie Spéculation Initier le projet (mission, contraintes, collaborateurs, expression des exigences, identification risques ) Déterminer la date butoir du projet Définir le nombre d itérations et les dates associées (4 à 8 semaines par itération) Donner une mission à chaque itération Affecter les composants de base aux itérations Affecter les technologies aux itérations Développer une liste de tâches à réaliser Collaboration Délivrance des composants Communication forte et assez informelle Possibilité d appliquer des pratiques agiles (de type XP) 29

ASD : Cycle de vie Apprentissage Contrôle qualité «utilisateur / client» Contrôle qualité technique Suivi de la performance Bilan sur l état d avancement Communication forte et assez informelle Possibilité d appliquer des pratiques agiles (de type XP) 30

Crystal Méthode créée par Alistair Cockburn Importance de la Communication et du feed-back client Releases fréquentes Deux grandes phases Conception et planning Itérations Adapté à des équipes de 6 personnes maximum (pas de leadership clairement exprimé) 31

32 Crystal : Cycle de vie

Scrum Méthode créée par ADM et WMARK software (spécialisées dans le développement objet) 33

Scrum : Cycle de vie Phase initiale Planning Mise en place d un backlog (liste de tâches à effectuer) Définition de l équipe Analyse des risques - Budget Sprints 30 jours isolés de toute influence extérieure Un sprint backlog est suivi et réalisé Réunion quotidienne Scrum Réunion post-sprint de présentation des résultats Clôture documentation finale Livraison 34

Feature Driven Development Méthode créée par Jeff de Luca et Peter Coad Itérations très courtes Spécifications découpables en features, regroupables en features set Le feature est une fonctionnalité porteuse de valeur pour le client 35

Feature Driven Development Phase initiale : développer un modèle global Constitution l équipe de modélisation Etude du modèle (formation des développeurs) Etude documentaire Elaboration d une liste informelle de features Modélisation de classes en petits groupes puis consolidation Etablissement de la liste détaillée de features A partir de la base informelle, listing détaillé des features Les features trop complexes sont éclatés Les features sont triés par ordre de priorité L ensemble est validé Planification à partir des features Constitution de l équipe planning Séquencement des features Affectation des classes Affectation des features aux développeurs seniors 36

Feature Driven Development Conception à partir des features Formation de groupes pour la réalisation de chaque feature Etude des documents de référence associés au feature Construction des diagrammes de séquence Conception détaillée des classes Inspection de l ensemble Construction à partir des features Implémentation des classes / méthodes Inspection du code + tests unitaires Préparation pour l intégration 37

38 Méthodes agiles : synthèse

39 Méthodes agiles : synthèse

Méthodes agiles : synthèse Globalement proximité des différentes méthodes, notamment sur les aspects suivants : Importance des itérations Proximité du client Difficile d'évaluer l'efficacité de chacune de ces méthodes extreme Programming est actuellement la méthode qui monte en force. Pourquoi? Les méthodes agiles ne doivent pas être opposées à RAD et Unified Process Il n'existe stricto sensu ni bonne ni mauvaise méthode La réussite d'un projet dépend avant tout de l'adaptation de la méthode au contexte 40

Retours d expérience : Points clé Petites équipes et outils véloces Polyvalence des équipes Feedback client et itérations Gestion des risques Collaboration MOA et MOE Tester toujours et encore Les valeurs clés Humilité Pragmatisme Soucis de la qualité Partage Courage 41

Merci de votre attention Jean-Louis Bénard Business Interactif jlb@businessinteractif.fr 42