Les méthodes agiles. Les méthodes agiles sont apparues dans les années 1990 (Extreme Programming, Rapid Application Development, Scrum ) :



Documents pareils
25/12/2012

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

Méthodes Agiles et gestion de projets

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

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

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

Les mécanismes d'assurance et de contrôle de la qualité dans un

backlog du produit Product Owner

Méthodes de développement

Yassine ZAKARIA SÉMINAIRE : MÉTHODES AGILES

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

GESTION DE PROJET : LA METHODE AGILE

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

Scrum Une méthode agile pour vos projets

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

Développement itératif, évolutif et agile

Certification Scrum Master

Scrum + Drupal = Julien Dubois

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

Avant propos. Parcours de lecture : combien de sprints vous faut il?

1/15. Jean Bernard CRAMPES Daniel VIELLE

Gestion de Projet Agile

Les méthodes itératives. Hugues MEUNIER

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

Agile 360 Product Owner Scrum Master

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

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

CHAPITRE 3 : LES METHODES AGILES?

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

Estimer et mesurer la performance des projets agiles avec les points de fonction

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

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

EXIN Agile Scrum Master

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

Le Product Backlog, qu est ce c est?

User stories et Backlog de produit

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

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

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

Scrum. Description. Traduit en langue française par Bruno Sbille et Fabrice Aimetti - Avril Trad FR v1.1

Table des matières. Préface... Avant-propos...

Guide de Préparation. EXIN Agile Scrum. Foundation

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

Retour d expérience implémentation Scrum / XP

Fondateur d Agile Impulse nicolashennion@agileimpulse.com. Support disponible sur agileimpulse.com/formation/scrumssii2j.

Scrum. ... pour des projets informatiques agiles. Pascal Lando Certified Scrum product owner

Méthodologies SCRUM Présentation et mise en oeuvre

Maîtrise d ouvrage agile

Germe Grenoble 4 22/06/2012. Intervenant: Bruno Sbille

Formation Scrum. 2 jours

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

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

Jean-Pierre Vickoff

INTRODUCTION À LA GESTION DE PROJET AGILE (BACKLOG, TABLEAUX DE BORD, BURNDOWN, PLANIFICATION D ITERATIONS)

Liste des Formations

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

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

Formation pour Product Owner

Contact: Yossi Gal, Téléphone:

Le management de projet

ISTQB Agile Tester en quelques mots ISTQB Marketing Working Group

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

CATALOGUE)FORMATION)2015)

Cahier des charges : gestion de projets agiles. Programmation d Algorithmes Distribués (PAD)

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

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

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

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

XEBIA DÉVELOPPEMENT OFFSHORE DISTRIBUÉ EN MÉTHODES AGILES. CAS CLIENT : CoachClub

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

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

Identification du module

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

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

MODALITES DE SUIVI DU PROJET ANNUEL DU MASTER 2 SOLUTIONS INFORMATIQUES LIBRES

Journée COMPIL «Agilité et recherche»

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

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

Scrum/XP adapté au BI/DW

Développement ebusiness

L'agilité appliquée à nous-mêmes. Philippe Krief, PhD Development Manager IBM France Lab

Isabelle Nicolas

Guide Léger de la Théorie et de la Pratique de Scrum Version 2.0. Version française. Pete Deemer GoodAgile. Gabrielle Benefield Evolve.

Année : Team-War Jaafar AMRANI-MESBAHI Fabien GARCIA Abdelali NAIT BELKACEM Rahma NAKARA Philippe NGUYEN

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

Processus d Informatisation

AGILE IPHONE DEVELOPMENT

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

XP : ce célèbre inconnu

Contrats agiles: mythe ou réalité?

CINEMATIQUE DE FICHIERS

REX Scrum Master du terrain

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

Cours Gestion de projet

Gestion Projet. Cours 3. Le cycle de vie

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

Mise en place d'une solution libre de gestion d'entreprise. Maurice MORETTI Directeur associé

Méthodologies Orientées-Objet!

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

Transcription:

SCRUM

Les méthodes agiles Les méthodes agiles sont apparues dans les années 1990 (Extreme Programming, Rapid Application Development, Scrum ) : capacité à réagir au changement plutôt que de suivre un plan collaboration accrue avec le client plutôt que de suivre les termes d'un contrat livraison d'un logiciel fonctionnel est à privilégier plutôt que de rédiger une documentation complète les personnes et leurs interactions priment sur l utilisation d outils ou le suivi des processus. Benoît Charroux Scrum Oct 10-2

La manifeste agile 1/2 Écrit en 2001 par 17 personnes : http://agilemanifesto.org «Notre première priorité est de satisfaire le client en livrant tôt et régulièrement des logiciels utiles». «Livrer fréquemment une application fonctionnelle, toutes les deux semaines à deux mois, avec une tendance pour la période la plus courte». «Un logiciel fonctionnel est la meilleure unité de mesure de la progression du projet». «Les gens de l'art et les développeurs doivent collaborer quotidiennement au projet». «Une attention continue à l'excellence technique et à la qualité de la conception améliore l'agilité». «Le changement est bienvenu, même tardivement dans le développement. Les processus agiles exploitent le changement comme avantage compétitif pour le client». Benoît Charroux Scrum Oct 10-3

La manifeste agile 2/2 «Bâtissez 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 face à face». «Les processus agiles promeuvent un rythme de développement soutenable. Commanditaires, développeurs et utilisateurs devraient pouvoir maintenir le rythme indéfiniment». «La simplicité - l'art de maximiser la quantité de travail à ne pas faire - est essentielle». «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». Benoît Charroux Scrum Oct 10-4

Les cycles de développement Sources : wikipedia Cycle en V : le logiciel est entièrement spécifié avant d être réalisé. Inconvénient : l expérience montre qu il est très difficile de tout spécifier avant de coder. Itératif : on ne spécifie que ce qui va être développé dans la prochaine itération. Inconvénient : il faut parfois retoucher le code existant => refactoring du code. Benoît Charroux Scrum Oct 10-5

Les cycles de développement Itératif et incrémental : on réalise une série de prototypes. Benoît Charroux Scrum Oct 10-6

Scrum Scrum signifie mêlée au rugby. Méthode agile itérative et incrémentale apparue dans les années 1990. Les points forts de Scrum : chaque itération aboutit à un sous-ensemble des fonctionnalités du produit potentiellement livrables. Le client intervient activement dans le projet pour définir l ordre des fonctionnalités à implanter, valider les prototypes, voire modifier ses exigences au cours du développement. Benoît Charroux Scrum Oct 10-7

Les rôles dans Scrum Le directeur de produit (Product Owner) est un membre de l équipe, il est le représentant des clients et utilisateurs. C'est lui qui définit l'ordre dans lequel les fonctionnalités seront développées. L'équipe ne comporte pas de rôles prédéfinis ni de hiérarchie (il n y a pas de chef de projet), elle est auto-gérée. Le facilitateur / animateur (ScrumMaster) est un membre de l équipe qui doit veiller à ce que les valeurs de Scrum soient appliquées. Les intervenants (Stakeholders) sont les personnes qui souhaitent avoir une vue sur le projet sans réellement s'investir dedans. Il peut s'agir par exemple d'experts techniques ou d'agents de direction. Benoît Charroux Scrum Oct 10-8 Source : wikipedia

Le product owner Il est responsable du backlog du produit. Ses rôles : Définir avec le clients et les utilisateurs le contenu du produit Fait partager sa vision du produit avec l équipe Définit l ordre dans lequel les parties du produits (releases et stories) sont réalisées. Ces qualités : Bonne connaissance du domaine métier. Maitrise des techniques des user stories ou des use cases. Capacité à prendre des décisions rapide. Sait communiquer mais prendre des décisions. Benoît Charroux Scrum Oct 10-9 Source : wikipedia

L interaction entre les acteurs Benoît Charroux Scrum Oct 10-10

Les Sprints 1 itération = 1 Sprint Benoît Charroux Scrum Oct 10-11

Les releases Attention! Une nouvelle release n est pas une nouvelle version de fonctionnalités déjà implantées. Benoît Charroux Scrum Oct 10-12

La grande question! Qu est-ce qui différencie Scrum (et les méthodes agiles en générale) des méthodes traditionnelles? Spécifications détaillées Pas encore spécifié Release 1 Sprint 1 Story 1 tâche 1 tâche n Story n Sprint n Définies au début de chaque Sprint dans la réunion de planification Benoît Charroux Scrum Oct 10-13

Phase de préparation des itérations Produit Release1 Story 11 Story 1m Release2 Story 21 Story 2m

Exemple d un backlog de produit (avec IceScrum) Benoît Charroux Scrum Oct 10-15

Première version du backlog Une user story est une représentation d un besoin formulée en phrases courtes dans le language de l utilisateur. Le backlog du produit est composé de stories : User stories. Stories techniques (non associé directement à un utilisateur). Il est parfois difficile de trouver d emblée les stories. On peut alors créer une première version du backlog composée de features. Un feature est un service fournit à un utilisateur et qui répond à un besoin (semblable à un use case d UML). Produit Feature 1 Feature 2 Benoît Charroux Scrum Oct 10-16

User Story versus Use Case Scrum n oblige pas à utiliser les user stories mais elles sont fréquement utilisées. Exemple d une user story appliquée à une station service : «En tant que pompiste je veux armer une pompe afin de permettre à un client de se servir de l'essence». Les user stories peuvent être complétées avec des conditions de satisfaction. Pour l'armement de la pompe, de telles conditions pourraient être : Vérifier que la pompe est armée et est prête à l emploi Vérifier que si le pompiste n arme pas la pompe, celle-ci est inutilisable Vérifier que seule la pompe correspondant au type d essence sélectionnée par le client est armée Benoît Charroux Scrum Oct 10-17

User Story versus Use Case Avec UML l armement de la pompe est représenté par un use case : Benoît Charroux Scrum Oct 10-18

User Story versus Use Case Avec UML les cas de tests sont représentés avec des diagrammes de séquences : Benoît Charroux Scrum Oct 10-19

User Story versus Use Case Conclusion : user stories ou use cases peuvent être utilisés pour représenter le contenu des sprints. Release 1 Sprint 1 Story 1 Story n Sprint n Benoît Charroux Scrum Oct 10-20

La grande question? Comment mettre des priorités sur le backlog du produit qui va apporter rapidement des fonctionnalités utiles au client tout en minimisant le refactoring du code? Benoît Charroux Scrum Oct 10-21

Comment constituer le backlog du produit? + Fonctionnalités Composants = Benoît Charroux Scrum Oct 10-22

Comment trouver les composants? => Fonctionnalités 1. Spécifier les use cases avec des diagrammes de séquence. 2. En déduire les interfaces de composants. 3. Définir des composants qui implantent ces interfaces. 4. Assembler les composants. Composants => Benoît Charroux Scrum Oct 10-23

La constitution du backlog du produit Classer les interfaces et leurs implantations pour apporter rapidement des fonctionnalités utiles aux utilisateurs. Exemple : Stories 1. Implantation de DispositifDePompage 2. Implantation de l'interface TerminalPompe du composant TerminalPompeImpl 3. Implantation de l'interface TerminalPompeDistant du composant TerminalPompeImpl Étape intermédiaire 1 : à ce stade les terminaux des pompes sont entièrement développés, et celui du pompiste peut commencer. 4. Implantation de l'interface TerminalPompeDistant du composant TerminalPompeImpl 5.... Benoît Charroux Scrum Oct 10-24

Définir et planifier les releases (1/2) Regrouper les stories dans les releases : 1. Implantation de DispositifDePompage 2. Implantation de l'interface TerminalPompe du composant TerminalPompeImpl 3. Implantation de l'interface TerminalPompeDistant du composant TerminalPompeImpl Étape intermédiaire 1 : à ce stade les terminaux des pompes sont entièrement développés, et celui du pompiste peut commencer. 4. Implantation de l'interface TerminalPompeDistant du composant TerminalPompeImpl 5.... Projet Release1 Story 11 Story 1m Release2 Story 21 Story 2m Benoît Charroux Scrum Oct 10-25

Définir et planifier les releases (2/2) 1. Estimer grossièrement, en points, toutes les stories du backlog 2. Définir le critère de fin de chaque release 3. Définir la durée des sprints 4. Estimer la capacité de l équipe 5. Planifier le release => plan de release Revoir le plan de release à la fin de chaque sprint 1 point (valeur relative sans unité). Les points sont attribués par rapport à une story connue qu on estime valoir X points. Ordre de grandeur couramment pratiqué : 2 semaines / sprint 5 sprints / release Benoît Charroux Scrum Oct 10-26

Indicateurs de suivi La vélocité est la mesure de la partie du backlog réalisée par l équipe pendant un sprint. Elle se mesure à la fin d un sprint. La capacité de l équipe, basée sur la vélocité, est une prévision est une prévision de ce que l équipe est capable de faire pendant un sprint. Un burndown chart est une représentation graphique du reste à faire dans une période (une release, un sprint ). Benoît Charroux Scrum Oct 10-27

Indicateurs de suivi Taille (en points) de la partie de la release qui reste à faire 100 50 mesure estimation 1 2 3 sprint Exemple d estimation pour un backlog de 100 points avec une équipe ayant une capacité de 25 points : 4 sprints sont nécessaire 16 semaines sont nécessaire si un sprint dure 4 semaines. Benoît Charroux Scrum Oct 10-28

La réunion de planification du prochain sprint Release 1 Sprint 1 Story 1 tâche 1 tâche n Story n Sprint n

Exemple de backlog du sprint Les stories avec leurs estimations Les attributions des tâches Estimation des tâches à faire (To Do) Mesure des tâches (Done) Burndown chart du sprint tâches Benoît Charroux Scrum Oct 10-30

Comment identifier les tâches à effectuer? Découper l application en couches (bonne pratique) puis en tâches. Estimer le temps de développement de chaque tâches. Intérêt : La conception de l architecture émerge lors de la planification du sprint. Benoît Charroux Scrum Oct 10-31

Découper l application en couches 1. Produire le diagramme des classes métiers (1 diagramme par projet). Benoît Charroux Scrum Oct 10-32

Découper l application en couches 2. Repérer les classes métiers qui sont utilisées par un composant. Benoît Charroux Scrum Oct 10-33

Découper l application en couches 3. Définir le contenu de chaque couche à partir des interfaces des composants. Benoît Charroux Scrum Oct 10-34

Découper l application en tâches 4. Affiner le découpage en décomposant le développement en tâches. 5. Estimer le temps pour développer chaque tâches. 6. L équipe décide combien de tâches (la granularité est au niveau story) elle réalise dans le prochain sprint 7. Affection des tâches au sein de l équipe (auto-organisaton) Release 1 Sprint 1 Story 1 tâche 1 tâche n Story n Sprint n Benoît Charroux Scrum Oct 10-35

Le travail durant les sprints

Développement guidé pas les tests 1. Ecrire les tests d acceptation pour chaque story (les storytests) 2. Développer 3. Tester L utilisation de tests d acceptation ne dispense pas : De faire des tests unitaires. D avoir desvecteur sde tests avec un bonne couverture. Benoît Charroux Scrum Oct 10-37

Avec les user stories : Les stotytests les user stories sont déclinées en cas de test appelés storytests. Exemple du test associé à la condition de satisfaction «Vérifier que la pompe est armée et est prête à l emploi» : Pré-condition : un client a décroché le pistolet du diesel l'écran du pompiste indique que le pistolet du diesel a été décroché Le pompiste arme la pompe correspondante Post-condition : la pompe a été armée (la confirmation de l armement apparaît sur le terminal du pompiste) et le client peut se servir de l'essence. Avec UML : Les diagrammes de séquences servent de storytests Benoît Charroux Scrum Oct 10-38

But : La réunion quotidienne Éliminer les obstacles de l équipe, communiquer, évaluer l avancement du travail. Qui : tous les membres de l équipe (d autres personnes peuvent y assister sans intervenir). Fréquence : quotidienne. Durée : ¼ d heure maximum. Le cérémonial : Répondre aux 3 questions : Les résultats : qu as-tu fait depuis hier? que prévoies-tu de faire aujourd hui? quels sont les obstacles qui te freinent dans ton travail? Actualiser le plan du sprint (modifier la liste des tâches, les ré-affecter ). Actualiser le burndown chart de sprint. Actualiser une liste des obstacles (qui peuvent donnés lieu à des tâches). Benoît Charroux Scrum Oct 10-39

A la fin d un sprint La revue de sprint : But : montrer le produit aux personnes impliquées dans le projet. Etapes : Préparer la démonstration. Rappeler les objectifs du sprint. Effectuer la démonstration. Calculer la vélocité. Ajuster le plan de release. La retrospective de sprint : L équipe «refait le match» et cherche quelles améliorations peuvent être mises en place lors du prochain sprint. Benoît Charroux Scrum Oct 10-40

Adaptation de Scrum au projet de méthodologie de développement

Les rôles dans le projet de méthodologie Les enseignants : Technical Manager Marketing Manager Les utilisateurs Les étudiants : Le directeur de produit (Product Owner) est le représentant des clients et utilisateurs. C'est lui qui définit l'ordre dans lequel les fonctionnalités seront développées. L'équipe ne comporte pas de rôles prédéfinis ni de hiérarchie (il n y a pas de chef de projet), elle est auto-gérée. Le facilitateur / animateur (ScrumMaster) doit veiller à ce que les valeurs de Scrum soient appliquées. Benoît Charroux Scrum Oct 10-42 Source : wikipedia

Les 5 étapes du projet Définition du produits Planification de la release 3 itérations Benoît Charroux Scrum Oct 10-43

Le travail de l équipe La validation du produit. La planification des releases : Préparée par l équipe. Discutée avec les managers. La réunion de démarrage La planification du sprint : Préparée par l équipe. Discutée avec les managers. La revue de sprint Benoît Charroux Scrum Oct 10-44

Les livrables Le produit. Le backlog du produit avec en plus : Les use cases. Les composants, déploiement. Les diagrammes de séquences associés. Les classes métiers. L architecture de conception en couches. En options (des maquettes des IHM ) Les indicateurs de suivi: Burndown charts de releases et de sprints Les fiches individuelles d activité. Benoît Charroux Scrum Oct 10-45

Références Bibliographique

Les ouvrages ayant servis à l élaboration de cette présentation Scrum, Le guide pratique de la méthode agile la plus populaire, Claude Aubry, Dunod, 2010 UML 2, pratique de la modélisation, Benoît Charroux, Yann Thierry Mieg, Aomar Osmani, Pearson Education, 2010 Wikipedia Benoît Charroux Scrum Oct 10-47