Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare une entreprise Scribd logo

1

François Beauregard - fbeauregard@pyxis-tech.com  Jean-René Rousseau - jrrousseau@pyxis-tech.com Adopter le développement Agile  dans nos organisations

2

Sondage à main levée Utilisez-vous une approche Agile  dans votre organisation?

3

Objectifs Présenter les ressemblances et les différences entre l’approche Agile et l’approche de gestion  classique  ou e n  ca s cade Souligner comment une entreprise peut passer à une approche Agile Fournir des éléments de réflexion pour la mise en œuvre d'améliorations dans vos organisations Soyez sceptique mais ouvert!

4

Déroulement Un peu d’histoire Approche Agile Gestion de projet Agile  Passage à une approche Agile Conclusion

5

Adopter le développement Agile  dans nos organisations  Un peu d’histoire

6

1945 à 1965 – Les débuts 1965 à 1985 – La crise Années 80 et 90 – On veut passer de l’artisanat à l’ingénierie logicielle, on cherche le  silver bullet Mai 1994 – Je suis un nouveau diplômé de Polytechnique Septembre 2000 – Pyxis est née Septembre 2002 – Le groupe d’utilisateurs Agile de Montréal est créé Fin 2003 – Pas facile … 2006 – On s’intéresse de plus en plus à l’Agilité 2007 – Le nombre de participants à la conférence Agile double pour une troisième année consécutive 2008 – On en parle trop? Un peu d’histoire

7

Nos projets doivent être une réussite Standish Group CHAOS Report, 2003  Réussite :   Le projet se termine dans le respect du délai et du budget. Il comporte toutes les fonctionnalités prévues. Défi :  Le projet est en retard, il y a dépassement de budget ou il manque certaines fonctionnalités.  Échec :  Le projet est annulé avant sa fin ou il est terminé mais ne sera jamais utilisé.

8

Investissement dans les fonctionnalités de valeur Jim Johnson, Standish Group, XP 2002

9

Adopter le développement Agile  dans nos organisations  Approche Agile

10

Nous découvrons de meilleures manières de développer des logiciels en aidant les autres et en en développant nous-mêmes. Par ce travail, nous en sommes venus à valoriser ce qui suit : les   individus et les interactions  plus que les processus et les outils les logiciels fonctionnels  plus que la documentation exhaustive la collaboration avec le client  plus que la négociation de contrat l’ouverture au changement  plus que le suivi d’un plan En fait, bien que les éléments de droite soient importants, nous considérons que les éléments de gauche le sont encore plus. Manifeste pour le développement Agile de logiciel

11

Principes Agiles (un sous-ensemble) ‏ La priorité est de satisfaire le client par la  livraison rapide  et  continue  de solutions logicielles utiles.  Il faut intégrer les  changements , même ceux de dernière minute, car ils offriront un  avantage compétitif  à votre client.  Il faut élaborer des projets autour d’individus  motivés . Il faut leur fournir le  soutien  nécessaire et leur faire confiance.  Les meilleures solutions émergent des  équipes autoorganisées .  Régulièrement, l’équipe fait une  réflexion  sur les façons de devenir plus  efficace , s’ajuste et modifie son comportement en conséquence.  Il faut porter une attention continue à  l’excellence  technique; un bon design améliore l’Agilité.  La  simplicité  est essentielle.

12

Principes vs Pratiques Principe Vérité qui  ne change pas  dans le temps ou l’espace Pratique Application d’un principe à une  situation particulière La  compréhension  des principes est essentiel pour en réussir  l’implantation  via un ensemble de pratiques

13

Scrum Blocs de temps Rôles Règles 2 boucles de rétroaction pour mettre en œuvre l’inspection et l’adaptation 5 artéfacts Carnet du produit  Graphique d’avancement de la livraison Carnet du sprint  Graphique d’avancement du sprint Incrément de fonctionnalité prête à livrer

14

Pourquoi Agile? Réduire le temps de mise sur le marché Améliorer la qualité Réduire les activités sans valeur ajoutée Travailler sur les éléments de plus grande valeur Avoir une meilleure prévisibilité Avoir du plaisir au travail

15

Le propriétaire… Doit connaître la  valeur commerciale  du produit Doit avoir le  pouvoir  de réunir des intérêts et désirs variés Doit être  disponible Dirigera  une équipe de gestion de produit Doit se rappeler que le  système est celui des utilisateurs  et non pas le sien propre

16

Communiquer la vision S’approprier les spécifications Les écrire, les organiser et les réorganiser  Fournir des exemples du comportement souhaité Évaluer les incréments du produit  Collaborer avec l’équipe de développement (le plus possible) Collaborer avec l’équipe de gestion du produit (le plus possible) Responsabilités du propriétaire

17

Adopter le développement Agile  dans nos organisations  Gestion de projet

18

Modèle de gouvernance Contraintes Estimations S'appuie sur le  plan  Coût   Calendrier  Exigences Contraintes Estimation Processus en cascade Du plan découle les estimations relatives au coût et au calendrier.  S'appuie sur la  valeur ou vision Coût   Calendrier   Fonctionnalités Processus Scrum De la vision découle les estimations relatives aux fonctionnnalités.

19

Qu’est-ce la gestion de projet Agile? “ Agile project management is the work of energizing, empowering, and  enabling project teams to rapidly and reliably deliver business value by  engaging customers and continuously  learning and adapting  to their  changing needs and environments.” Sanjiv Augustine

20

Rôle du gestionnaire de projet  dans le contexte de projets Agiles Trois principes de gestion de projet Agile : Favoriser l’alignement et la coopération Favoriser l’émergence et l’autoorganisation Favoriser l’apprentissage et l’adaptation   «   Les gestionnaires utilisent les gens pour faire le travail;  Les leaders se servent du travail pour aider les gens à grandir.  » “ Managers use people to accomplish work; leaders use work to grow people ”  Powerful Project Leadership , copyright©2002 par Wayne Strider

21

Pratiques de gestion de projet Agiles  –  Équipe organique Petite équipe flexible où les relations sont étroites, ce qui favorise l’adaptation La composition des équipes n’est pas limitée aux titres (généralistes-spécialistes). Le gestionnaire de produit fait partie de l’équipe … les testeurs aussi !!! … les architectes aussi !!! … les…

22

Pratiques de gestion de projet Agiles  –  Vision S’assurer que les membres de l’équipe ont un modèle mental commun et qu’ils s’alignent sur les mêmes objectifs et engagements Les programmeurs ont droit de comprendre ce qu’ils font !!

23

Pratiques de gestion de projet Agiles  –  Règles simples Établissement d’un ensemble de règles génératives simples, qui doivent être observées par toute l’équipe  Les règles d’aujourd’hui sont les fondations des règles de demain (inspection – adaptation)

24

Pratiques de gestion de projet Agiles  –  Transparence  Information complète accessible par tous Comment se cacher lorsqu’on doit livrer du logiciel fonctionnel à intervalles réguliers?

25

Pratiques de gestion de projet Agiles  –  Light touch Application d’un contrôle intelligent, pour encourager la cohérence des actions et maximiser la valeur

26

Pratiques de gestion de projet Agiles  –  Leadership adaptatif Diriger le projet en maximisant les apprentissages et en s’adaptant de façon continue

27

Structure traditionnelle de découpage du projet

28

Structure de découpage des fonctionnalités

29

Adopter le développement Agile  dans nos organisations  Passage à une approche Agile

30

Des questions importantes Nos organisations sont-elles prêtes à changer? …  et les individus eux ?

31

Analyse d’impact Impacts sur l’organisation Structure organisationnelle Système de rémunération Relation avec les clients et les fournisseurs Impacts sur le processus Pilotage des projets Flux du travail Flux d’information Impacts sur les technologies Nouveaux outils pour supporter les pratiques XP Impacts physiques Configuration des locaux

32

Analyse d’impact Impacts sur les individus Nouveaux rôles, nouvelles tâches Pertes de pouvoir Compétences Mentalité, façon de penser, valeurs, attitudes Motivation et engagement

33

Quels sont les changements requis? Réduire la taille des équipes Réduire les structures fonctionnelles pour adopter une structure par projet Avoir une équipe pluridisciplinaire et encourager l’acquisition de nouvelles compétences Favoriser les objectifs d’équipe plus qu’individuels Avoir une équipe autoorganisée Améliorer les pratiques de développement logiciel et favoriser l’automatisation

34

D’autres éléments à considérer Avoir une  forme contractuelle  qui reconnaît qu’il n’est pas optimal (désiré) de chercher à connaître précisément l’ensemble des exigences au départ Mettre en place des processus qui conservent un niveau de gouvernance adéquat, mais qui permettent les changements rapides Avoir une  forme documentaire simplifiée  qui permette l’évolutivité de la documentation Créer une culture de  collaboration

35

Structure organisationnelle  Entreprise de TI  matricielle

36

Une organisation Agile Entreprise de TI  adaptative

37

Une autre question importante Le changement doit-il être mis en œuvre  bottom-up  ou  top-down ?

38

Pas si simple, le changement Mode descendant  Les leaders de haut niveau partagent une vision quant à l’utilisation de Scrum. Mode ascendant Quelques équipes commencent à utiliser Scrum. Les gens voient les avantages de cette nouvelle approche et décident de l’adopter. Pour assurer le succès, le changement doit se faire  à la fois de bas en haut et de haut en bas , simultanément.

39

Le passage à une approche Agile  ne se fait pas du jour au lendemain  La période de transition sera longue et parfois délicate (inconfortable) avant que tous les intervenants des projets adoptent une approche axée sur la collaboration et l’autonomie.

40

Gestion du changement

41

Transitions

42

Ce n’est pas tout! Il ne faut pas oublier de s’attarder aux pratiques d’ingénierie logicielle.

43

Approche pour le passage à Agile

44

C’est possible Transparence!

45

C’est possible 9 livraisons en 6 mois!

46

Courage et persévérance

47

Adopter le développement Agile  dans nos organisations  Conclusion

48

Conclusion Le capital humain est votre plus gros actif. L’adoption d’une approche Agile demande des changements significatifs, et la nature des préoccupations des gens doit changer. Tout changement nécessite du temps, du courage et de la persévérance.

49

Merci! Des questions?

50

Centre de développement Développement sur mesure Architecture et conception Méthodes de test Évaluation et gestion de projet GreenPepper™ simplifie grandement la création concertée de spécifications exécutables et de tests de réception de scénarios exécutables. De plus, il offre de grandes capacités de traçabilité des exigences. Accompagnement Agile Gestion du changement et formation  Transition Agile  Scrum Modélisation Agile Tests (stratégie, tests fonctionnels, TDD, etc.) ‏ Services-conseils en développement Développeurs chevronnés Accompagnement technologique (Java, .NET, Ruby) ‏ Exploration de solutions d'amélioration Sélection et configuration d'outils  Gestion de projet, évaluation de mandat Audit et recommandations Rétrospective Besoin d’un coup de main?

Contenu connexe

Adoption de l'Agilité : principes et défis

  • 1. François Beauregard - fbeauregard@pyxis-tech.com Jean-René Rousseau - jrrousseau@pyxis-tech.com Adopter le développement Agile dans nos organisations
  • 2. Sondage à main levée Utilisez-vous une approche Agile dans votre organisation?
  • 3. Objectifs Présenter les ressemblances et les différences entre l’approche Agile et l’approche de gestion classique ou e n ca s cade Souligner comment une entreprise peut passer à une approche Agile Fournir des éléments de réflexion pour la mise en œuvre d'améliorations dans vos organisations Soyez sceptique mais ouvert!
  • 4. Déroulement Un peu d’histoire Approche Agile Gestion de projet Agile Passage à une approche Agile Conclusion
  • 5. Adopter le développement Agile dans nos organisations Un peu d’histoire
  • 6. 1945 à 1965 – Les débuts 1965 à 1985 – La crise Années 80 et 90 – On veut passer de l’artisanat à l’ingénierie logicielle, on cherche le silver bullet Mai 1994 – Je suis un nouveau diplômé de Polytechnique Septembre 2000 – Pyxis est née Septembre 2002 – Le groupe d’utilisateurs Agile de Montréal est créé Fin 2003 – Pas facile … 2006 – On s’intéresse de plus en plus à l’Agilité 2007 – Le nombre de participants à la conférence Agile double pour une troisième année consécutive 2008 – On en parle trop? Un peu d’histoire
  • 7. Nos projets doivent être une réussite Standish Group CHAOS Report, 2003 Réussite : Le projet se termine dans le respect du délai et du budget. Il comporte toutes les fonctionnalités prévues. Défi : Le projet est en retard, il y a dépassement de budget ou il manque certaines fonctionnalités. Échec : Le projet est annulé avant sa fin ou il est terminé mais ne sera jamais utilisé.
  • 8. Investissement dans les fonctionnalités de valeur Jim Johnson, Standish Group, XP 2002
  • 9. Adopter le développement Agile dans nos organisations Approche Agile
  • 10. Nous découvrons de meilleures manières de développer des logiciels en aidant les autres et en en développant nous-mêmes. Par ce travail, nous en sommes venus à valoriser ce qui suit : les individus et les interactions plus que les processus et les outils les logiciels fonctionnels plus que la documentation exhaustive la collaboration avec le client plus que la négociation de contrat l’ouverture au changement plus que le suivi d’un plan En fait, bien que les éléments de droite soient importants, nous considérons que les éléments de gauche le sont encore plus. Manifeste pour le développement Agile de logiciel
  • 11. Principes Agiles (un sous-ensemble) ‏ La priorité est de satisfaire le client par la livraison rapide et continue de solutions logicielles utiles. Il faut intégrer les changements , même ceux de dernière minute, car ils offriront un avantage compétitif à votre client. Il faut élaborer des projets autour d’individus motivés . Il faut leur fournir le soutien nécessaire et leur faire confiance. Les meilleures solutions émergent des équipes autoorganisées . Régulièrement, l’équipe fait une réflexion sur les façons de devenir plus efficace , s’ajuste et modifie son comportement en conséquence. Il faut porter une attention continue à l’excellence technique; un bon design améliore l’Agilité. La simplicité  est essentielle.
  • 12. Principes vs Pratiques Principe Vérité qui ne change pas dans le temps ou l’espace Pratique Application d’un principe à une situation particulière La compréhension des principes est essentiel pour en réussir l’implantation via un ensemble de pratiques
  • 13. Scrum Blocs de temps Rôles Règles 2 boucles de rétroaction pour mettre en œuvre l’inspection et l’adaptation 5 artéfacts Carnet du produit Graphique d’avancement de la livraison Carnet du sprint Graphique d’avancement du sprint Incrément de fonctionnalité prête à livrer
  • 14. Pourquoi Agile? Réduire le temps de mise sur le marché Améliorer la qualité Réduire les activités sans valeur ajoutée Travailler sur les éléments de plus grande valeur Avoir une meilleure prévisibilité Avoir du plaisir au travail
  • 15. Le propriétaire… Doit connaître la valeur commerciale du produit Doit avoir le pouvoir de réunir des intérêts et désirs variés Doit être disponible Dirigera une équipe de gestion de produit Doit se rappeler que le système est celui des utilisateurs et non pas le sien propre
  • 16. Communiquer la vision S’approprier les spécifications Les écrire, les organiser et les réorganiser Fournir des exemples du comportement souhaité Évaluer les incréments du produit Collaborer avec l’équipe de développement (le plus possible) Collaborer avec l’équipe de gestion du produit (le plus possible) Responsabilités du propriétaire
  • 17. Adopter le développement Agile dans nos organisations Gestion de projet
  • 18. Modèle de gouvernance Contraintes Estimations S'appuie sur le plan Coût Calendrier Exigences Contraintes Estimation Processus en cascade Du plan découle les estimations relatives au coût et au calendrier. S'appuie sur la valeur ou vision Coût Calendrier Fonctionnalités Processus Scrum De la vision découle les estimations relatives aux fonctionnnalités.
  • 19. Qu’est-ce la gestion de projet Agile? “ Agile project management is the work of energizing, empowering, and enabling project teams to rapidly and reliably deliver business value by engaging customers and continuously learning and adapting to their changing needs and environments.” Sanjiv Augustine
  • 20. Rôle du gestionnaire de projet dans le contexte de projets Agiles Trois principes de gestion de projet Agile : Favoriser l’alignement et la coopération Favoriser l’émergence et l’autoorganisation Favoriser l’apprentissage et l’adaptation « Les gestionnaires utilisent les gens pour faire le travail; Les leaders se servent du travail pour aider les gens à grandir. » “ Managers use people to accomplish work; leaders use work to grow people ” Powerful Project Leadership , copyright©2002 par Wayne Strider
  • 21. Pratiques de gestion de projet Agiles – Équipe organique Petite équipe flexible où les relations sont étroites, ce qui favorise l’adaptation La composition des équipes n’est pas limitée aux titres (généralistes-spécialistes). Le gestionnaire de produit fait partie de l’équipe … les testeurs aussi !!! … les architectes aussi !!! … les…
  • 22. Pratiques de gestion de projet Agiles – Vision S’assurer que les membres de l’équipe ont un modèle mental commun et qu’ils s’alignent sur les mêmes objectifs et engagements Les programmeurs ont droit de comprendre ce qu’ils font !!
  • 23. Pratiques de gestion de projet Agiles – Règles simples Établissement d’un ensemble de règles génératives simples, qui doivent être observées par toute l’équipe Les règles d’aujourd’hui sont les fondations des règles de demain (inspection – adaptation)
  • 24. Pratiques de gestion de projet Agiles – Transparence Information complète accessible par tous Comment se cacher lorsqu’on doit livrer du logiciel fonctionnel à intervalles réguliers?
  • 25. Pratiques de gestion de projet Agiles – Light touch Application d’un contrôle intelligent, pour encourager la cohérence des actions et maximiser la valeur
  • 26. Pratiques de gestion de projet Agiles – Leadership adaptatif Diriger le projet en maximisant les apprentissages et en s’adaptant de façon continue
  • 27. Structure traditionnelle de découpage du projet
  • 28. Structure de découpage des fonctionnalités
  • 29. Adopter le développement Agile dans nos organisations Passage à une approche Agile
  • 30. Des questions importantes Nos organisations sont-elles prêtes à changer? … et les individus eux ?
  • 31. Analyse d’impact Impacts sur l’organisation Structure organisationnelle Système de rémunération Relation avec les clients et les fournisseurs Impacts sur le processus Pilotage des projets Flux du travail Flux d’information Impacts sur les technologies Nouveaux outils pour supporter les pratiques XP Impacts physiques Configuration des locaux
  • 32. Analyse d’impact Impacts sur les individus Nouveaux rôles, nouvelles tâches Pertes de pouvoir Compétences Mentalité, façon de penser, valeurs, attitudes Motivation et engagement
  • 33. Quels sont les changements requis? Réduire la taille des équipes Réduire les structures fonctionnelles pour adopter une structure par projet Avoir une équipe pluridisciplinaire et encourager l’acquisition de nouvelles compétences Favoriser les objectifs d’équipe plus qu’individuels Avoir une équipe autoorganisée Améliorer les pratiques de développement logiciel et favoriser l’automatisation
  • 34. D’autres éléments à considérer Avoir une forme contractuelle qui reconnaît qu’il n’est pas optimal (désiré) de chercher à connaître précisément l’ensemble des exigences au départ Mettre en place des processus qui conservent un niveau de gouvernance adéquat, mais qui permettent les changements rapides Avoir une forme documentaire simplifiée qui permette l’évolutivité de la documentation Créer une culture de collaboration
  • 35. Structure organisationnelle Entreprise de TI matricielle
  • 36. Une organisation Agile Entreprise de TI adaptative
  • 37. Une autre question importante Le changement doit-il être mis en œuvre bottom-up ou top-down ?
  • 38. Pas si simple, le changement Mode descendant Les leaders de haut niveau partagent une vision quant à l’utilisation de Scrum. Mode ascendant Quelques équipes commencent à utiliser Scrum. Les gens voient les avantages de cette nouvelle approche et décident de l’adopter. Pour assurer le succès, le changement doit se faire à la fois de bas en haut et de haut en bas , simultanément.
  • 39. Le passage à une approche Agile ne se fait pas du jour au lendemain La période de transition sera longue et parfois délicate (inconfortable) avant que tous les intervenants des projets adoptent une approche axée sur la collaboration et l’autonomie.
  • 42. Ce n’est pas tout! Il ne faut pas oublier de s’attarder aux pratiques d’ingénierie logicielle.
  • 43. Approche pour le passage à Agile
  • 45. C’est possible 9 livraisons en 6 mois!
  • 47. Adopter le développement Agile dans nos organisations Conclusion
  • 48. Conclusion Le capital humain est votre plus gros actif. L’adoption d’une approche Agile demande des changements significatifs, et la nature des préoccupations des gens doit changer. Tout changement nécessite du temps, du courage et de la persévérance.
  • 50. Centre de développement Développement sur mesure Architecture et conception Méthodes de test Évaluation et gestion de projet GreenPepper™ simplifie grandement la création concertée de spécifications exécutables et de tests de réception de scénarios exécutables. De plus, il offre de grandes capacités de traçabilité des exigences. Accompagnement Agile Gestion du changement et formation Transition Agile Scrum Modélisation Agile Tests (stratégie, tests fonctionnels, TDD, etc.) ‏ Services-conseils en développement Développeurs chevronnés Accompagnement technologique (Java, .NET, Ruby) ‏ Exploration de solutions d'amélioration Sélection et configuration d'outils Gestion de projet, évaluation de mandat Audit et recommandations Rétrospective Besoin d’un coup de main?

Notes de l'éditeur

  1. il faut redonner une fierté à notre profession Contrer l’outsourcing en étant plus productif Déjà une amélioration vs le rapport de 1994 (16% success, 53%, challenged, 31% echec)‏
  2. C ’ est juste ca le changement !!?!?!
  3. Dans le contexte d’une transition organisationnelle vers l’agilité, il est important que l’organisation est une vraie raison « business » de se lancer dans l’agilité ! Pas juste pour être dans le vent !!!
  4. Projet existant Document listant les exigences Architecture et conception de système Développement Essais Rencontrer les utilisateurs Définir les exigences du système Documenter les exigences du système
  5. Projet Agile Secteur d’affaires Constitution d’un dossier de prêt Fidélisation de la clientèle Conformité à la réglementation Activité commerciale Souscription automatisée Caractéristique Évaluer le crédit Déterminer le type de prêt Déterminer les conditions du prêt
  6. Responsable du bureau de gestion de projet Dirigeant Gestionnaire de projet Groupe responsable de la gestion de la configuration Représentant Responsable de la gestion de la configuration Groupe responsable de l’architecture Groupe responsable de l’administration de base de données Architecte Administrateur de base de données Groupe responsable de l’ingénierie Groupe responsable de l’assurance qualité Responsable technique Ingénieur d’essais Développeur
  7. Dirigeant Responsable du bureau de gestion de projet Gestionnaire de produit Gestionnaire Agile Communauté de pratique en gestion de la configuration Responsable de la gestion de la configuration Communauté de pratique en architecture Communauté de pratique en administration de base de données Architecte Administrateur de base de données Communauté de pratique en ingénierie Communauté de pratique en assurance qualité Responsable technique Ingénieur d’essais Développeur
  8. MODIFICATIONS À APPORTER À L’IMAGE Remplacer ‘AGILE’ par ‘Agiles’ dans Intro. aux approches… Remplacer ‘Formations…’ par ‘Formation aux principes Agiles’ Remplacer ‘Rétrospective d’itérations’ par ‘Rétrospective d’itération’ Remplacer ‘AGILE Synthétisé’ par ‘Agile synthétisé’ Remplacer ‘Diagnostic…’ par ‘Diagnostic d’évaluation…’ Remplacer ‘Préparation projet…’ par ‘Préparation du projet pilote’ Remplacer ‘Exécution…’ par ‘Exécution du projet pilots’ Remplacer ‘Rétrospective…’ par ‘Rétrospective du projet pilots’ Remplacer ‘Formation…’ par ‘Formation aux pratiques Agiles’ Remplacer ‘Rétrospective d’itérations’ par ‘Rétrospective d’itération’
  9. Trouver une image qui représente le courage et la persévérence; qui évoque qu’il faut prendre du temps et en prendre bien soin
  10. Trouver une image qui représente le courage et la persévérence; qui évoque qu’il faut prendre du temps et en prendre bien soin
  11. Trouver une image qui représente le courage et la persévérence; qui évoque qu’il faut prendre du temps et en prendre bien soin