Agilité - Drupal et Scrum sont faits pour s'entendre

1,966 views

Published on

D'un coté des méthodes agiles de plus en plus utilisées, de l'autre un CMS qui se déploie massivement et dépasse le cadre de son périmètre initial de CMS.

Au cours de cette présentation nous allons voir ce que sont ces méthodes agiles, en quoi elles divergent de la gestion de projet dite "traditionnelle". Nous ferons un focus sur Scrum et son utilisation dans le cadre d'un projet Drupal.

- Votre dernier projet en cycle en V a échoué et vous avez envie d'essayer autre chose ?
- Vous ne savez pas ce que sont les méthodes agiles et/ou Scrum ?
- Vous vous demandez comment tirer partie des capacités de prototypage de Drupal ?

Published in: Technology

Agilité - Drupal et Scrum sont faits pour s'entendre

  1. 1. Pourquoi j’aime Scrum Pourquoi Scrum et Drupal sont faits pour s’entendre Scrum + Drupal = Julien Dubois Happyculture.coop Artusamak
  2. 2. De quoi allons-nous parler ? 1. Que sont les méthodes agiles ? 2. Présentation de Scrum 3. Et Drupal ? 4. Scrum + Drupal = Artusamak
  3. 3. Les méthodes agiles Un acte fondateur Artusamak
  4. 4. Manifeste agile
  5. 5. 12 principes Manifeste agile
  6. 6. 12 principes Valeur ajoutée Manifeste agile
  7. 7. 12 principes Valeur ajoutée Accepter le changement Manifeste agile
  8. 8. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Manifeste agile
  9. 9. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Manifeste agile
  10. 10. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Manifeste agile
  11. 11. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Manifeste agile
  12. 12. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Manifeste agile
  13. 13. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Manifeste agile
  14. 14. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Manifeste agile
  15. 15. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile
  16. 16. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée
  17. 17. 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée Amélioration continue
  18. 18. 4 valeurs 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée Amélioration continue
  19. 19. 4 valeurs Personnes et interactions  >  outils et processus 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée Amélioration continue
  20. 20. 4 valeurs Personnes et interactions  >  outils et processus Logiciel fonctionnel >  documentation 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée Amélioration continue
  21. 21. 4 valeurs Personnes et interactions  >  outils et processus Logiciel fonctionnel >  documentation Collaboration client >  négociation contractuelle 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée Amélioration continue
  22. 22. 4 valeurs Personnes et interactions  >  outils et processus Logiciel fonctionnel >  documentation Collaboration client >  négociation contractuelle Adaptation au changement  > suivi d’un plan 12 principes Valeur ajoutée Accepter le changement Livrer régulièrement Echanges quotidiens Face à face Pragmatisme Rythme pérenne Payer sa dette Simple VS parfait Equipe motivée Manifeste agile Equipe autogérée Amélioration continue
  23. 23. Concepts à retenir * Itérations * Client au cœur du projet * Equipe auto organisée * Amélioration continue Artusamak
  24. 24. Plusieurs candidats * Scrum > Auto organisation * XP > Binômage * Lean > Chasse au gaspillage * Crystal clear > Petites équipes Artusamak
  25. 25. Scrum Concepts, acteurs et fonctionnement Artusamak
  26. 26. Concepts – Vue d’avion Sprint 0 * * * * * Sprint 1 Sprint 2 Sprint 3 Sprint n+1 Release Un sprint 0 pour ordonnancer les fonctionnalités Itérations de 2 à 4 semaines Une succession d’itérations donne lieu à une release Un sprint supplémentaire (plus court) pour finaliser les corrections Une livraison à la fin de chaque sprint Artusamak
  27. 27. Concepts – Acteurs Le product owner * L’équipe *** Le scrum master ** * Le product owner n’a pas l’obligation d’être dégarni avec des lunettes ** Le scrum master peut être une femme (c’est toujours plus sympa) *** L’équipe peut être uniquement constituée de gens normaux (ça marche aussi) Artusamak
  28. 28. Concepts - Droits Le Product Owner L’équipe Participer aux daily scrums meetings Négocier les changements, le périmètre, les priorités Féliciter, encourager les membres de l’équipe Connaitre la vision Être informé et avoir une bonne visibilité Obtenir des clarifications sur les spécifications Comprendre ce qu’est la dette technique ou une technical story Disposer des moyens adéquats Bénéficier d’une délégation de la maîtrise d’ouvrage ou du comité de pilotage Droit à l’erreur Obtenir des estimations de l’équipe Définir son processus / ses outils Modifier le product backlog et les priorités Accéder facilement au product owner Obtenir des résultats tangibles Régler la dette technique ou réaliser des technical stories Equipe dédiée, sans préemption Lab day / Free day entre les sprints Explorer, investiguer Participer à la démo Source: Coacher une équipe agile, Valérie Messager  Artusamak
  29. 29. Concepts - Devoirs Le Product Owner L’équipe Partager la vision du produit Être transparent Être disponible pour l’équipe Définir la notion de « ready » (user story) Participer aux réunions de planification Respecter ses engagements Être le représentant des utilisateurs Livrer des users stories respectant la définition du « done » Apporter des réponses, prendre des décisions Estimer le product backlog Créer le product backlog priorisé, le mettre à jour tout au long du projet Entraide entre les membres Livrer des user stories « ready » Préciser ses critères d’acceptation « done » Valider le produit Source: Coacher une équipe agile, Valérie Messager  Artusamak
  30. 30. Concepts – Les stories Titre - 3 à 10 mots Téléchargement des documents de formation. Type User story       Technical story Description ‐ “En tant que [rôle utilisateur] je peux [but] car j’ai besoin de [raison]“ En tant que Romain, je peux télécharger les documents car je souhaite m’en servir  pour former mes paires. Les user stories sont une liste de sujets à aborder avec l’équipe durant la sprint définition. Critères d’acceptation – Peux / Ne peux pas faire Je peux choisir les documents auxquels je souhaite accéder. Je ne peux pas partager le lien d’accès aux fichiers. Je ne peux pas accéder aux fichiers plusieurs fois sans resoumettre le formulaire. Si je suis connecté les données de mon profil sont automatiquement remplies. Artusamak
  31. 31. * * * * User story #98 User story #12 Technical story #145 Technical story #218 Sprint backlog     Valeur ajoutée Product backlog Concepts – Les backlogs       User story #124 Technical story #78 User story #98 User story #21 Technical story #187 … Le backlog est préparé en avance de phase Toutes les stories ont une définition de « terminé » Les stories devraient être triée par priorité de valeur ajoutée L’équipe a le droit de glisser des technical stories Artusamak
  32. 32. Concepts – Déroulement d’un sprint 1 2 3 Sprint définition Développement Démonstration Rétrospective (0,5-1j) (8j) (0,5j) (0,5j) 4 Constitution du backlog de sprint, dimensionnement des stories, engagement sur nombre de points de complexité 2 Implémentation des user stories et technical stories, discussions régulières via le scrum quotidien (Qu’as-tu fait hier / demain / points bloquants) 3 Présentation des fonctionnalités implémentées durant le sprint & collecte des retours 4 Analyse du sprint écoulé, identification blocages & réussites, pistes d’améliorations 1 Artusamak
  33. 33. Rituels - la sprint définition 1 Sprint définition (0,5-1j) * * * * Les stories sont découpées en taches Les arbitrages sont faits Les stories sont dimensionnées grâce au « Planning poker » L’équipe défini sont engagement pour le sprint en s’appuyant sur sa vélocité Artusamak
  34. 34. Rituels - le scrum quotidien 2 Développement (8j) * * * * L’équipe implémente les stories par ordre de priorité Chaque membre choisi les stories qu’il s’affecte Tous les jours l’équipe se réunie afin d’identifier les points de blocage Des taches doivent se fermer tous les jours Artusamak
  35. 35. Rituels - la démonstration 3 Démo (0,5j) * * * * Des membres extérieurs peuvent être invités Chaque membre de l’équipe présente son travail On ne présente que des choses terminées On collecte les retours et les demandes d’ajustement Artusamak
  36. 36. Rituels - la rétrospective 4 Rétro (0,5j) * * * * Collecte de la vélocité Passage en revue du sprint écoulé Occasion de donner la parole à chacun Amélioration du travail de l’équipe Artusamak
  37. 37. Métriques – Vélocité Le burndown (Complexité reste à faire) Le burnup (Complexité cumulée) 45 45 40 40 35 35 30 30 25 25 20 20 15 15 10 10 5 5 0 0 D1 D2 D3 Commitment D4 D5 Stories closed D6 Idéal D7 D1 D2 D3 Reste à faire D4 D5 Engagement D6 D7 Idéal Artusamak
  38. 38. Métriques – Répartition de l’effort Cumulative Flow Chart 35 5 Points de complexité 30 4 25 7 20 4 15 6 3 10 2 0 11 0 0 D1 D2 24 1 4 5 2 4 5 7 4 13 15 7 D3 D4 D5 D6 D7 Jours Terminé En cours A tester Artusamak
  39. 39. Outils – Suivi avancement Stories Documentation API Utilisateurs A faire En cours A tester Terminé Tableau de taches Artusamak
  40. 40. Et Drupal ? A quoi sert-il dans tout ça ? Artusamak
  41. 41. Drupal est un CMS… * Fonctionnalités natives * Gestion des utilisateurs, révisions, taxonomie, types de contenu, RDF… * Nouvelles fonctionnalités en un clic * +24K modules sur drupal.org Artusamak
  42. 42. … mais aussi un CMF * Des APIs ** Form API, Entity API, Field API, Batch API… * Capacités d’extensibilité natives ** Principes de hooks * Modules custom pour adapter * Et les modules externes d’APIs ** Services, Commerce… Artusamak
  43. 43. La meilleure mise en œuvre ? * Montrez ce qu’il est possible de faire * Collectez des retours * Prenez en compte * Montrez à nouveau Itérer ! Artusamak
  44. 44. Scrum + Drupal = Artusamak
  45. 45. Quelques inconvénients tout de même * Nécessite un PO assez disponible et avec un pouvoir de décision * Accompagnement pour une transition depuis le cycle en V * Besoin d’une équipe composée de personnes proactives * Taille d’équipe +/- 6 * Appropriation du sprint sur une phase courte * Nouveau = réticences * Testabilité Artusamak
  46. 46. …mais que d’avantages * Des retours sur le produit en cours de production * Maîtrise du budget * Concentration des efforts sur les fonctionnalités à valeur ajoutée * Equipe auto gérée = meilleure ambiance * Rythme soutenable grâce au suivi de la vélocité Artusamak
  47. 47. Sources d’inspiration * http://blog.institut-agile.fr/ * http://www.areyouagile.com * http://news.humancoders.com/t/agile * Agile games Artusamak
  48. 48. ROTI Perdu mon temps Appris un peu C’était génial ! Artusamak
  49. 49. Merci ! Des questions ? Artusamak Happyculture.coop Développement / Accompagnement agile #Drupagora – 06/12/2013
  50. 50. Crédits http://www.sxc.hu/photo/1382441 http://www.iconfinder.com Artusamak

×