Utilisation des techniques Kanban pour maîtriser le développement incrémental. Jeff Patton AgileProductDesign.com jpatton@acm.org



Documents pareils
Yassine ZAKARIA SÉMINAIRE : MÉTHODES AGILES

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

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

25/12/2012

Support Agile avec Kanban quelques trucs et astuces par Tomas Björkholm

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

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

Scrum + Drupal = Julien Dubois

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

Choisir ses priorités: le développement incrémental de produit. Copyright Pyxis Technologies

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

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

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

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

Kanban et son utilisation à la Société GRICS

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

Feature Team Primer. par Craig Larman et Bas Vodde. Version 1.2

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

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

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

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

LE LEAN MANUFACTURING

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

ISTQB Agile Tester en quelques mots ISTQB Marketing Working Group

Formation Scrum. 2 jours

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

Les méthodes itératives. Hugues MEUNIER

Cycle d exploration «Software Asset Building» Expédition 2 du 11 juin 2013 à la SGCIB ; l Agile.

LA FONCTION QUALITE & LE LEAN MANUFACTURING 6 MARS François Liotard Directeur Développement Industriel Directeur Ressources Humaines

Consortium de recherche Value Stream Mapping Formation

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

Choisir l agilité. Choisir l agilité. à la gouvernance. Choisir l agilité. InfoPro. Mathieu Boisvert. Sylvie Trudel

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

DEVENIR ANIMATEUR CERTIFIE DE LA DEMARCHE LEAN

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

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

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

Jean-Pierre Vickoff

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

Lean Management? G. Beauvallet Projet Lean Entreprise Télécom ParisTech

Méthodes Agiles et gestion de projets

Pour responsabiliser vos employés et bien plus encore.

Process 4D Catalogue de formations 2011

Les basiques du Lean Manufacturing

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

Compte-rendu du petit-déjeuner. Vers l entreprise Agile

Agile 360 Product Owner Scrum Master

Introduction au LEAN. 17/02/2010 Page: 1

Lean et Supply Chain Management

Certification Scrum Master

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

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

CATALOGUE)FORMATION)2015)

Maîtrise d ouvrage agile

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

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.

Bertrand Cornanguer Sogeti

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

Kanban et Scrum - tirer le meilleur des deux

backlog du produit Product Owner

La 1ère plateforme d'auto-formation. d'autoen ligne au Lean Manufacturing en français.

Lean. Historique et Principes La réalité terrain La complémentarité Lean-MES. Francis MOUREY SPC consultants

Le Product Backlog, qu est ce c est?

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

Les quatre chantiers :

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

Approches Agiles pour éditeurs logiciels

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

TUTORIEL. L application SIKKENS FR pas à pas

Les cinq premiers pas pour devenir vraiment agile à XP Day Suisse 2009 par Pascal Van Cauwenberghe et Portia Tung: La Rétrospective

Secteur Techn que LEAN MANAGER

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

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

Travailler avec les télécommunications

Retour d expérience. Le rôle du Business Analyst chez Orange. Nadia Magarino & Christophe Dufour 29 avril 2015

XP : ce célèbre inconnu

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Module d introduction Comment réaliser vos propres cartes avec ArcGIS Online

Samuel Bassetto 04/2010

Développement itératif, évolutif et agile

Introduc)on à l Agile

Créer un sondage sous Magento

VOCABULAIRE LIÉ AUX ORDINATEURS ET À INTERNET

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

Développement ebusiness

Vérifier la qualité de vos applications logicielle de manière continue

Gérer les règles de prix catalogue sur Magento

Salon Progiciels 2007 Conférence «La description visuelle des flux d information» Avec le témoignage de la société

Jean-Pierre Vickoff J-P Vickoff

Enfants Agiles. La méthode Agile appliquée à l éducation

Pour une entreprise plus performante

User stories et Backlog de produit

Gestion de production

EXIN Agile Scrum Master

Cours Gestion de projet

GL Processus de développement Cycles de vie

Scrum Une méthode agile pour vos projets

Les outils graphiques d expression pour l analyse fonctionnelle des systèmes Domaine d application : Représentation conventionnelle des systèmes

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

Le lean et l anguille : comment cuisiner le lean?

Transcription:

Utilisation des techniques Kanban pour maîtriser le développement incrémental Jeff Patton AgileProductDesign.com jpatton@acm.org Téléchargez cette présentation sur : www.agileproductdesign.com/downloads/patton_kanban.ppt

Dans cette courte présentation, nous allons abordé les points suivants : 1. Qu est-ce qu un Système Kanban et comment s applique-t-il au développement logiciel? 2. Comment configurer le Système Kanban d une équipe de développement? 3. Appliquer le mode de pensée Lean au développement logiciel 2

看 板 Les cartes Kanban limitent l excès de travail en cours 看 板 Kanban signifie littéralement "carte visuelle, enseigne ou panneau d affichage. A l origine, Toyota a utilisé les cartes Kanban pour limiter la quantité de stocks immobilisés dans un atelier de fabrication. L excès de stock est un gaspillage, le temps de production associé aurait pu être utilisé ailleurs. Les cartes Kanban agissent comme une forme de monnaie qui représente la manière dont le TAF* est maîtrisé dans un système. *NdT : TAF = Travail à faire ; WIP = Work in progress 3

Simulation Kanban Simulons un processus simple, voyons ensuite si nous pouvons l améliorer en ajoutant un système Kanban. J ai besoin de 5 volontaires pour fabriquer le modèle d avion disposant des 4 dernières avancées technologiques.

Simulation Kanban (slide ajouté par le traducteur) 1 ère partie : http://www.youtube.com/watch?v=ksswm1lxeqq Chaîne de construction d avions en papier (4 ouvriers, 1 testeur). 1 avion qui fonctionne rapporte 2 M 1 avion en cours de construction coûte 1 M (stock) Expérimentation en mode Flux poussés. 2 ème partie : http://www.youtube.com/watch?v=zg5mbydn9pc Expérimentation en mode Flux tirés : Définition de limites de WIP sur le processus 2.1. Apparition d un goulot d étranglement 2.2. Optimisation du goulot d étranglement 5

Pourquoi utiliser Kanban dans le Développement Logiciel? (nous ne construisons pas des avions, en tout cas rien d aussi tangible) 6

Un développement itératif timeboxé a de véritables défis à relever Les problèmes courants que l on peut rencontrer : Des timeboxes courtes offrent de plus fréquentes opportunités de mesurer le progrès et d inspecter le logiciel, mais nous force à avoir des items de développement plus petits. Des items de développement plus petits sont souvent trop petits pour leur associer une valeur métier et sont difficiles à identifier. La qualité des exigences en souffre puisque les analystes se précipitent pour préparer les cycles suivants. La qualité des développements en souffre lorsque les analystes surchargés n ont plus le temps d inspecter le logiciel ou de répondre aux questions. La qualité en souffre souvent puisque les testeurs se dépêchent de terminer le travail en retard durant la timebox. 7

Au sein d une itération, l effort fourni par les différents rôles n est pas le même Les développements se déroulent pendant tout le cycle alors que les tests commencent tardivement et ne semblent pas disposer d assez de temps. 8

Utiliser une approche Kanban dans le logiciel nous fait renoncer aux itérations timeboxées pour nous concentrer sur la notion de flux continu. 9

Comment configurer un système Kanban simple pour une équipe de développement logiciel? 10

1. Définissez le workflow du processus Observez le flux naturel de vos features, stories ou lots de travaux et décrivez les étapes typiques de votre processus. 11

1. Définissez le workflow du processus Les étapes du workflow de ce processus sont très simples : 1. Elaboration & Critères d acceptation 2. Développement 3. Tests 4. Déploiement Observez le flux naturel de vos features, stories ou lots de travaux et décrivez les étapes typiques de votre processus. 12

2. Construisez un tableau Kanban visuel Placez une colonne «objectifs» à gauche, puis une file d attente, les étapes de votre processus et enfin une 13 colonne «fini» à droite.

2. Construisez un tableau Kanban visuel Placez une ligne au-dessus pour traiter les urgences. Placez une colonne «objectifs» à gauche, puis une file d attente, les étapes de votre processus et enfin une 14 colonne «fini» à droite.

2. Construisez un tableau Kanban visuel Placez une ligne au-dessus pour traiter les urgences. Placez une colonne «objectifs» à gauche, puis une file d attente, les étapes de votre processus et enfin une 15 colonne «fini» à droite. Placez des files d attente «fini en attente» entre chaque file de travail (dans cet exemple, on les a placées en bas).

3. Décidez des limites pour les items en files d attente et en cours de traitement Une bonne limite est un multiple du nombre de personnes dans un rôle donné et pouvant travailler sur un item dans une étape donnée du processus. Commencez avec : nombre de personnes * 1,5 16

3. Décidez des limites pour les items en files d attente et en cours de traitement Ce tableau utilise du ruban de peintre pour indiquer que des emplacements sont disponibles pour les travaux en cours. Une bonne limite est un multiple du nombre de personnes dans un rôle donné et pouvant travailler sur un item dans une étape donnée du processus. Commencez avec : nombre de personnes * 1,5 17

4. Placez des objectifs priorisés dans la colonne de gauche du tableau Un bon objectif décrit le résultat attendu une fois le logiciel déployé. Les objectifs aident à rester concentré sur les résultats essentiels à obtenir. 18

4. Placez des objectifs priorisés dans la colonne de gauche du tableau Avoir des objectifs visibles : nous encourage à rester concentrer nous aide à prioriser nous aide à gérer le périmètre et les spécifications des features Un bon objectif décrit le résultat attendu une fois le logiciel déployé. Les objectifs aident à rester concentré sur les résultats essentiels à obtenir. 19

5. Démarrez le tableau en plaçant les stories ou features dans la file d attente Inscrivez sur la carte de la story ou de la feature sa date d entrée dans la file d attente. Cela démarre la mesure du temps de cycle. 20

5. Démarrez le tableau en plaçant les stories ou features dans la file d attente Les Product Owners d attente. gèrent la file Inscrivez sur la carte de la story ou de la feature sa date d entrée dans la file d attente. Cela démarre la mesure du temps de cycle. 21

6. Déplacez les features à travers le workflow du processus chaque fois que le travail est fini Lorsque la story entre dans la 1 ère étape du processus, inscrivez la date sur la carte. C est sa date de début. Lorsque la story est terminée, inscrivez la date sur la carte. C est sa date de fin. 22

7. Utilisez les dates inscrites sur les cartes pour calculer le temps de cycle Utilisez le temps de cycle moyen pour configurer les temps d attente à partir des différents points du tableau. Faites attention au flux et aux goulets d étranglement : soulagez les goulets d étranglement le plus rapidement possible. 23

7. Utilisez les dates inscrites sur les cartes pour calculer le temps de cycle Temps de cycle = date de fin date de début Le temps de cycle moyen à partir du moment où un item entre dans le tableau est le temps d attente à partir de ce point dans la file. Utilisez le temps de cycle moyen pour configurer les temps d attente à partir des différents points du tableau. Faites attention au flux et aux goulets d étranglement : soulagez les goulets d étranglement le plus rapidement possible. 24

Affichez et gérez les temps de cycle Affichage public des temps de cycle par Disneyland Réduisez le nombre d emplacements autorisés pour les cartes Kanban jusqu à ce que le temps de cycle soit stabilisé. Réduisez la taille des items de développement : Le TAF est en fait le nombre d items * la taille moyenne des items Identifiez et agissez immédiatement sur les goulets d étranglement : Soulagez les goulets d étranglement récurrents en adaptant le nombre et le profil des personnes dans chaque rôle et avec de la formation croisée. 25

Tableaux Kanban 26

Tableaux Kanban 27

Tableaux Kanban 28

Tableaux Kanban 29

Tableaux Kanban 30

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 32

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 33

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 34

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 35

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 36

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 37

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 38

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 39

Décomposez les grandes étapes du processus en tâches pour améliorer la visibilité Lorsqu une feature, user story ou item est trop grand, c est-à-dire : Prend plus de quelques jours à terminer Exige que plusieurs personnes collaborent à sa réalisation Décomposez cette étape en cartes pour les suivre de façon indépendante. Feature à développer en attente en cours terminées Feature terminée 40

Tableau Kanban avec Décomposition en 41

Utilisez les diagrammes de flux cumulé pour visualiser le travail en cours www.agilemanagement.net/articles/papers/borconmanagingwithcumulat.html 42

Utilisez les diagrammes de flux cumulé pour visualiser le travail en cours www.agilemanagement.net/articles/papers/borconmanagingwithcumulat.html 43

Timeboxez l inspection de votre processus et de votre produit Maintenez des timeboxes régulières dans votre processus comme des points de repère pour procéder à l inspection de votre produit : Evaluez la qualité du produit livré d un point de vue fonctionnel, ingénierie logicielle et expérience utilisateur. Evaluez votre rythme de développement : Mesurez le nombre d items terminés par rapport aux objectifs Mesurez le temps de cycle moyen par item de développement Calculez le ratio jours de développement par item terminé. Utilisez ce ratio pour estimer le délai de réalisation des items non encore développés. Ajustez si nécessaire votre planning de développement. Evaluez et adaptez le processus que vous utilisez : Animez un atelier de réflexion sur votre processus pour identifier les changements que vous pourriez faire pour améliorer votre produit ou votre rythme. Ending cycles right: http://www.stickyminds.com/s.asp?f=s14865_col_2 44

Commencez à observer votre processus en utilisant le mode de pensée Lean Le développement logiciel ressemble à l industrie si l on dit que l unité de stock est une décision qui n a pas été prise! Cockburn s Software Engineering in the 21 st Century: http://alistair.cockburn.us/software+engineering+in+the+21st+century.ppt 45

Puisque nous sommes engagés dans des travaux sur la connaissance, observez le temps de cycle des décisions validées Le développement logiciel comporte des boucles correctives. Cockburn s Software Engineering in the 21 st Century: http://alistair.cockburn.us/software+engineering+in+the+21st+century.ppt 46

La boucle de feedback est souvent négligée surveillez les files d attente Les stratégies du Lean Manufacturing s appliquent directement : surveillez les files d attente. Cockburn s Software Engineering in the 21 st Century: http://alistair.cockburn.us/software+engineering+in+the+21st+century.ppt 47

Configurer un système Kanban simple permet à l équipe de se concentrer sur le temps de cycle du travail livré et fournit un moyen de détecter et de commencer à résoudre les goulets d étranglement. 48

Utilisation des techniques Kanban pour maîtriser le développement incrémental Jeff Patton AgileProductDesign.com jpatton@acm.org Téléchargez cette présentation sur : www.agileproductdesign.com/downloads/patton_kanban.ppt

Références Kanban : Anderson, Kanban in Action : http://www.agilemanagement.net/articles/weblog/kanbaninaction.html Hiranabe, Kanban Applied to Software Development: from Agile to Lean : http://www.infoq.com/articles/hiranabe-lean-agile-kanban Ladas, Scrumban Essays on Kanban Systems for Lean Software Development : http://www.lulu.com/content/3864767 Ladas, Scrum-ban : http://leansoftwareengineering.com/ksse/scrum-ban/ Belshee, Naked Planning, Kanban Simplified : http://joearnold.com/2008/03/naked-planning-kanban-simplified/ 50