soft-shake.ch - Agile qu'es aco : scrum xp lean

2 298 vues

Publié le

Thierry Cros


Aujourd’hui l’agilité est “mainstream”. Comment s’y retrouver parmi les innombrables présentations, retours d’expérience qui se réclament de l’agilité ?

Cette présentation vous propose un bref panorama de l’agilité, depuis ses débuts historiques jusqu’aux évolutions actuelles. Vous allez donc acquérir les informations qui vous permettront de vous forger viotre propre opinion et discerner ainsi ce qui est véritablement agile.

http://soft-shake.ch/2011/conference/sessions/agility/2011/09/23/agilte-kesaco.html

0 commentaire
4 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
2 298
Sur SlideShare
0
Issues des intégrations
0
Intégrations
6
Actions
Partages
0
Téléchargements
47
Commentaires
0
J’aime
4
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

soft-shake.ch - Agile qu'es aco : scrum xp lean

  1. 1. cocktail d’expérience informatiques Genève 3 & 4 octobre 2011 Seconde éditionAuteur Thierry Gabriel CROS Track AgileSession Agile... Ques aco ?
  2. 2. Agile...Ques aco ? Thierry Gabriel Cros
  3. 3. Agenda● Agile ?● Extreme Programming● Scrum● Lean Software Development● Kanban● En guise de conclusion... http://etre-agile.com 2
  4. 4. Les façons de faire● Hors agile, nous rencontrons essentiellement deux styles de développement... http://etre-agile.com 3
  5. 5. 1. Cycles en V Spécification Validation CascadeCycle en V Conception préliminaire Intégration Conception Tests détaillée unitaires Codage http://etre-agile.com 4
  6. 6. 2. LArrache (ou La Rache)● Également connu sous le nom de … http://www.djibnet.com http://etre-agile.com 5
  7. 7. Alors...● Cycle en V ?● Cow-boy ?● … http://etre-agile.com 6
  8. 8. Méthode : Empirique ou théorique ? Il est normal dadopter lapproche définie par un modèle(théorique) quand les mécanismes sous-jacents par lesquels un processus opère sont relativement bien compris. Si le processus est trop compliqué pour lapprochedéfinie, alors lapproche empirique est le choix approprié. Process Dynamics, Modeling, and Control, Ogunnaike et Ray, Oxford University Press, 1992 http://etre-agile.com 7
  9. 9. Empirique ?● Empirique != désordonné● Empirique != indiscipliné● … Au contraire ! Si vous partez à laventure et si vous êtes un tantinet sérieux, vous faites très attention ! http://etre-agile.com 8
  10. 10. Un peu dhistoire...● Années 90 : des expérimentations empiriques, légères, face aux méthodes lourdes● Rencontre, en février 2001, des concepteurs de ces différentes méthodes « légères »...● … Ce qui va aboutir au Manifeste agile, expression des points communs à toutes ces méthodes alternatives. http://etre-agile.com 9
  11. 11. Agile : définition● Autant de définitions que dAgilistes...● Pourtant, lagilité a une histoire et un texte fondateur en 2001 : Le manifeste agile http://agilemanifesto.org http://etre-agile.com 10
  12. 12. 2001 : Le manifeste agile● 4 valeurs● 12 principes● Une histoireQuand des anarchistes organisationnels se rencontrent... http://etre-agile.com 11
  13. 13. Le Manifeste http://etre-agile.com Source : agilemanifesto.org 12
  14. 14. Dilbert ? Non, merci.« … lExtreme Programming a connuun développement dans son utilisation et son intérêt,non pas grâce à la programmation en binômeou au refactoring, mais parce que,pris dans leur ensemble, ses pratiques définissentune communauté de développeurslibérée des poids des sociétés "Dilbertesques". »Histoire du Manifeste agile, Jim Highsmith Traduction de Fabrice Aimetti http://www.fabrice-aimetti.fr http://thierrycros.net 13
  15. 15. Vous avez aimé Peter ? Vous adorerez Dilbert ! Le principe de Dilbert est une version aggravée du principe de Peter. Dans le livre Le Principe de Dilbert, Scott Adams rappelle le principe de Peter : Tout employé tend à sélever à son niveau dincompétence. Le nouveau principe, principe de Dilbert, sénonce ainsi : « Les gens les moins compétents sont systématiquement affectés aux postes où ils risquent de causer le moins de dégâts : ceux de managers. » http://thierrycros.net 14Source : wikipedia
  16. 16. En résumé ● Pendant plusieurs● Années 80 années – Lean – Confidentiel● Années 90 – Pionniers – Scrum, XP, ... ● Depuis, lagile est● 2001 : le manifeste devenu une agile alternative crédible – Scrum + XP – Lean Software – Kanban http://etre-agile.com 15
  17. 17. Agile aujourdhui : une boite à outils● Les méthodes ou ● Toutes ces méthodes guides (XP, Lean...) forment un véritablement framework de agiles offrent plus plusieurs dizaines de que le manifeste principes et agile. pratiques... ● … Sur lequel nous nous basons pour installer lagilité. http://etre-agile.com 16
  18. 18. Agile : quatre axes fondateurs Centré Importance Métier Équipe Auto-organisée Auto-similarité* Responsabilité Empirique Feedback * Hédonisme concret & rapide Amélioration continue http://etre-agile.com 17
  19. 19. Intérêt dun feed-back concret et rapide Feedback des Utilisateurs, de lexploitationApproche agile Début du Retour sur Investissement Ajuster, voire rectifier les besoins, la solution informatique : http://etre-agile.com à 3 mois, à un an ? 18
  20. 20. Un autre principe clé de lagilité● « Les meilleures spécifications, conceptions et architectures émergent déquipes auto-organisées » – Émergence des specs ? – Émergence de la conception, de larchitecture ? – Grâce à une « Équipe auto-organisée » ? http://etre-agile.com 19
  21. 21. Intérêt de lauto-organisation● Pas de gaspillage ● La Vision du produit, dopportunités : partagée, est un possibilité de attracteur dans une proposer équipe auto- organisée● Interaction ● Pas de chef = plus Utilisateur / Développeur de responsabilité http://etre-agile.com 20
  22. 22. Extreme Programming : ce célèbre inconnu http://etre-agile.com 21
  23. 23. XP : lémancipation du Développeur● XP pour sévaluer● XP pour être soi● XP pour sémanciper en tant que Développeur http://thierrycros.net 22
  24. 24. Extreme « Programming »● Quelles activités ● Programming apportent vraiment « Coder » (Java...) une Valeur Ajoutée ? Paramétrer ● Programming = Réaliser le produit Remettre en cause, réduire voire éliminer les activités « non V.A. » http://thierrycros.net 23
  25. 25. « Extreme » Programming● Une fois les activités ● Dialogues « non VA » réduites, ● Tests quelles activités conserver et dans ● Conception quelle proportion ? ● Relecture Extreme Programming = « Pousser à fond » les activités qui apportent de la valeur http://thierrycros.net 24
  26. 26. Le « paquetage » XPValeurs Principes Pratiques Rôles Cycle de Vie http://thierrycros.net 25
  27. 27. Rôles● Une équipe, plusieurs rôles Client (Product Manager) Spécifie les demandes et les tests-client, planifie en tenant compte de la VA des demandes Développeur Estime les demandes, réalise Manager Fait confiance, aplanie le terrain,● Un point focal pour tous: la Valeur Métier offerte par le produit http://thierrycros.net 26
  28. 28. Valeurs de l Extreme Programming● Communication Combien dexemples... et de contre-exemples !● Feedback Pour contrôler à partir déléments les plus objectifs● Simplicité Le pari de lExtreme Programming, pour tous, tout le temps● Courage De changer de rôle, de vision du produit● Respect Respecter et être respecté en tant que Principe Lean personne http://thierrycros.net 27
  29. 29. Un Cycle de Vie agile : livrer rapidement et régulièrement 1 Exploration 22 mois max. Engagement 3 4 5 ... 1 semaine Pilotage par feedback n Des années ! Mort 1. Fin dexploration : carottages, architecture, de lappli périmètre initial, estimations 2. Engagement : premières valeurs des variables projet : - Coût - Délais Principe : Le client en choisit 3, - Périmètre le Développeur la quatrième. - Qualité 3. 4. 5. … Les différentes versions livrées n. Fin de lapplication. http://etre-agile.com 28
  30. 30. Au cœur de lexpression de besoins : les « user stories » dXP 800 Valeur Métier (surtout thème) En tant que Pilote, je règle le commutateur en mode " niveau horizontal" afin de maintenir les ailes à lhorizontale et lavion sur sa trajectoire initiale. Estimation (jours réels ou points) 5 Une histoire est : 1) un déclencheur de discussions dans léquipe 2) lunité de planification (correspondance histoire / itération) http://thierrycros.net 29
  31. 31. Story : les 3C*● Carte● Conversation – Pour estimer, développer la story● Confirmation – Tests dacceptation Tout nest pas écrit* cf. Ron. Jeffries http://thierrycros.net 30
  32. 32. Importance des Tests dAcceptation● Spécifier un test, cest spécifier le produit● « Deal » entre Product Manager et Développeurs● Automatiser les T.A. – Fitnesse – GreenPepper – ... http://thierrycros.net 31
  33. 33. Développement agile : emblématique de lExtreme Programming● Test Driven Development : le Développement piloté par la conception exprimée en tests● Conception – Développement simple – Code expressif – Pas de duplication – Nombre minimal de classes et méthodes● Intégration continue● Déploiement / nuit http://thierrycros.net 32
  34. 34. Développement agile● Produit malléable ● Test Driven● Environnements Development performants : ● Refactoring – Cartes perforées ● Conception vs émergente Intelli J... – Temps de « compilation » http://etre-agile.com 33
  35. 35. Conception émergente● Itération 1 ● Itération n Histoires Histoires du A380 dutilisation A320 Avion A320 A320 A380 YAGNI ! http://thierrycros.net 34
  36. 36. Scrum :la marque qui fait vendre lagilité http://thierrycros.net 35
  37. 37. Scrum en un schéma 24 heures Itération 1-3 semainesBut du sprint Retour Produit partiel Tâches potentiellement Annuler Retour utilisable Coupons EmballageEmballage Annuler Coupons http://etre-agile.com 36
  38. 38. Scrum : les piliers● Transparence – Partager la définition de « done »● Inspection – Feedback rapide : artefacts, produits● Adaptation – L amélioration du produit – Et des pratiques http://etre-agile.com 37
  39. 39. Scrum : les rôles● Product Owner ● Équipe de – Exprime les Développement besoins – Estime leffort – Priorise nécessaire – Valide – Fabrique le produit● ScrumMaster – Garant de Scrum http://etre-agile.com 38
  40. 40. Scrum : le cérémonial● Sprint Meeting (plan ditération)● Sprint Review (Revue)● Rétrospective (lamélioration, 12ème principe)● Daily Scrum Meeting (mélée quotidienne) http://etre-agile.com 39
  41. 41. Scrum : le Business Model● Dans la famille « certified », je demande... – Le ScrumMaster – Le Trainer – Le Product Owner● Scrum Guide de K. Schwaber : http://scrum.org 17 pages● Scrum... de Claude Aubry chez Dunod (300 pages) http://etre-agile.com 40
  42. 42. Lean Software Develoment : une autre voie vers lagilité http://etre-agile.com 41
  43. 43. Agendaq Agile, Lean, Lean Software ● Outilsq Les sept principes de base – SIPOC ● 1. Éliminer les gaspillages – Value Stream Mapping ● 2. Améliorer le système – Go & See ● 3. Qualité intrinsèque – ... ● 4. Gérer les décisions ● 5. Livrer rapidement ● 6. Fortement respecter les personnes ● 7. Créer et faire vivre la connaissance v1q Lean Software - Être Agile 42
  44. 44. Une autre conduite du changement● AS IS ● L.S.D.● TO BE – Améliorer lexistant● Scrum + XP – Le « package »v1 Lean Software - Être Agile 43
  45. 45. Kanban : le dernier venu● Visualiser le workflow ● Optimiser le temps – Identifier le goulot de cycle – Début du travail sur un élément – Début du cash- back● Limiter le Work In Progress – Terminer plutôtv1 que commencer Lean Software - Être Agile 44
  46. 46. Agile aujourdhui : une boite à outils● Les méthodes ou ● Toutes ces méthodes guides (XP, Lean...) forment un véritablement framework de agiles offrent plus plusieurs dizaines de que le manifeste principes et agile. pratiques... ● … Sur lequel nous nous basons pour installer lagilité. http://etre-agile.com 45
  47. 47. Un dernier mot● XP ● LAgile se définit en● Scrum – Valeurs● Lean Software Dev – Principes● Kanban ● Être agile cest mettre en pratique● ... ces principes ● Soit vous « achetez » ces valeurs, soit... http://etre-agile.com 46
  48. 48. Bienvenue en agilité Thierry Cros http://etre-agile.com Twitter @thierrycros Mél : tco@thierrycros.netIllustration : NASA http://etre-agile.com 47
  49. 49. Itération,objectif : TERMINER les histoires Produit testé V(n+1) et incrémenté. ITERATION (sprint) Nouveau backlog Périmètre de litération = { Histoires } http://etre-agile.com 48
  50. 50. Une autre façon de dire le modèle « théorique » UML Cest la quête éperdue vers la perfection MDA (avant décrire du code) qui est à lorigine de lagilité CMMI Anderson, Agile2008 BPM LAgilité va à lencontre du « big * » http://etre-agile.com 49
  51. 51. (R)UP : (Rational) Unified Process - Piloté par les cas dutilisation - Itératif incrémental http://etre-agile.com 50 - Centré architecture
  52. 52. Dérives usuelles (1) Fonctionnalités utilisées dans un système Parfois Rarement 16% 19% JamaisSouvent 45% 13% Toujours 7% Standish Group Study Reported at XP2002 by Jim Johnson, Chairman http://etre-agile.com 51
  53. 53. Dérives usuelles (2) 100% Début IntegrationRéalisation du développement corrections (% codé) Date Date réelle de fin cible prévue Avancement du projet http://etre-agile.com 52 Daprès Walker Royce

×