AGILITÉ ET MÉTHODOLOGIE SCRUM
OBJECTIFS Se familiariser avec les méthodes agiles Passer d un mode (prétendument) prescriptif à un mode itératif (assumé) de la vie du projet Mettre en place des pratiques de communication dans la vie du projet (internes & externes) Créer une documentation de travail et pas une documentation «marketing» Pas de secret : l agilité est une pratique qui se construit 2 avec le temps et les expériences, pas un enseignement!
PRINCIPES DE L AGILITÉ
AGILITÉ http://agilemanifesto.org/ http://www.qualitystreet.fr 4 valeurs Les individus et leurs interactions plus que les processus et les outils. Des logiciels opérationnels plus qu une documentation exhaustive. La collaboration avec les clients plus que la négociation contractuelle. L adaptation au changement plus que le suivi d un plan. L objectif est d apprendre de l expérience et de s améliorer tout au long du processus de projet et non pas de prévoir le déroulement ni l organisation précis et définitif du projet => l agilité n est pas une science exacte et n a pas vocation à le devenir! 4
AGILITÉ 12 principes (résumés => originaux: http://fr.wikipedia.org/wiki/m%c3%a9thode_agile) Priorité à la satisfaction du client Acceptation du changement = avantage compétitif au client. Livraison fréquente d un logiciel opérationnel. Utilisateurs et développeurs travaillent ensemble quotidiennement Motivation des participants et confiance mutuelle Dialogue en face à face, visibilisation du projet Un logiciel opérationnel est la principale mesure d avancement. Pas de surcharge de travail, co-évaluation supportable Une attention continue à l'excellence technique et à une bonne conception renforce l Agilité. La simplicité est essentielle= KISS (Keep It Simple Stupid) Auto-organisation pour assurer la qualité 5 Points d équipe très réguliers : timeboxing
DESIGN SÉQUENTIEL VS DESIGN CONCOURANT
MODÈLE SÉQUENTIEL & INCRÉMENTAL LE «PUZZLE MAGIQUE» : YAKA, FAUT KON Le concepteur ou Le MOA Description exhaustive: La description = la réalité? Lotissement Délégation et MOE Réalisation Planification et chemin critique 7 L oeuvre réalisée
MODÈLE SÉQUENTIEL & INCRÉMENTAL Conception en V Améliore le waterfall Chaîne de validation/réingénierie raccourcie Remise en question tardive de la conception ou de la «vision» Pas les mêmes acteurs aux différents niveaux Très prégnant en génie logiciel Modèle Waterfall Eloigné des besoins utilisateurs => préconisation «d experts» Pas de remise en question de la conception ou de la «vision» Loin de la réalité de la vie d un projet Encore très prégnant Efficace pour les petits projets Biais: Accumulation des retards Confrontations des logiques de gestion, d usages, métiers, => conduite du changement 8
MODÈLE ITÉRATIF ET CONCOURANT: DE LA BASSE FIDÉLITÉ À LA HIFI Réalisation par Affinements successifs Idée vague Du concepteur Co-construction de l œuvre et de l ouvrage 9
MODÈLES ITÉRATIFS ET CONCOURANTS: DESIGN PARTICIPATIF Design participatif: Co-construction entre experts techniques et experts d usage : Conception «démocratique» depuis le cahier des charges à la mise en production Faire évoluer ensemble: Connaissances potentialités techniques Pratiques et usages contextes d utilisation Négociations permanentes, ouverture à la surprise, travail de réflexivité et de partage (mise en commun) L objet est lui-même acteur de la conception => il oriente autant qu il sollicite les acteurs (courbe en S). Matérialité du travail de conception : war room, travail «sur le mur» => écriture collective dynamique et visible (publicité) Evolutions de différentes maquettes fonctionnelles basse fidélité Pliage participatif de molécules pour la lutte contre le sida: http://arstechnica.com/science/news/2011/09/gamers-discover-protein-structure-relevant-to-hivdrugs.ars 10
MODÈLES HYBRIDES : ITÉRATIF ET INCRÉMENTAL Réalisation par Affinements successifs Des différents lots Idée vague Du concepteur Différentes issues/combinaisons possibles Co-construction de l œuvre, de l ouvrage et de l organisation du travail 11
EFFICACITÉ PRODUCTION EN MODE ITÉRATIF VS SÉQUENTIEL L agilité peut intégrer les 3 modalités Et s adapter selon le contexte, le commanditaire, l équipe. Le fait que les différentes phases de développement se «recouvrent» en design itératif produit des cycles de conception/réalisation plus courts et plus robustes => validation & design continus vs conception initiale & validation terminale 12
LE DÉCOUPAGE D UN PROJET AGILE: MÉTHODE SCRUM Statut des fonctionnalités: Brainstorming Workshop collaboratif CDCF (pour nous) Prêt Analysé En cours/ en test Fini User stories Sprint Daily Scrum Releases Sandbox (non trié, non priorisé) 13 http://fr.wikipedia.org/wiki/scrum_%28m%c3%a9thode%29
ORGANISATION D UNE ÉQUIPE AGILE- SCRUM Backlog produit Backlog sprint Sprint releases 14
ORGANISATION D UNE ÉQUIPE AGILE- SCRUM Product manager : gestion de portefeuille projet Product owner : En charge du backlog de produit Coordination des équipes Décide les orientations du sprint => non discutable ni modifiable durant le sprint, évaluation INVEST des user stories Participe aux «meetings» Relation à la hierarchie/au client Scrum/team master En charge de la relation entre équipe, PO et éventuellement client => mission de coach(facilitateur) de l équipe de développement Equipe de développement En autonomie pour l organisation de leur travail Auto-estimation des items à développer Daily meeting (matin) : qu est ce que j ai fait hier, que vais-je faire ajd, quelles sont les difficultés Tous les membres de l équipe sont des «cochons» en agilité, les autres sont des «poules» qui n ont pas le droit de contredire les «cochons» 15
ROUTINES ET OUTILS DE L AGILITÉ Méthodologie SCRUM
LA COMMUNICATION COMME MOTEUR: LE DAILY-SCRUM STAND UP MEETINGS Daily meeting (matin) : qu est ce que j ai fait hier? que vais-je faire aujourd hui? quelles sont les difficultés? Cette réunion permet d actualiser le backlog (réunion postit) De modifier l allocation des ressources Attention : cette réunion ne doit pas 17 dériver sur la sanction individuelle par la pression du collectif (pigs & chicken)
L INFORMATION RENDUE VISIBLE LE RADIATEUR D INFORMATION LA WAR ROOM Mettre en visibilité pour créer des «espaces» de communication physiques 18
LE RADIATEUR D INFORMATION / WAR ROOM Charte projet / dimension narrative : sur une feuille A3 max Contexte projet Dead line livrables Backlogs : produit, sprint Modélisation (architecture, diagrammes, workflows, maquettes, personas, ) Burndown chart (à partir de l évaluation par points des tâches d un sprint) : courbe «à réaliser» vs courbe «réalisé» Tableau Scrum-ban Tout élément permettant la compréhension du projet et de sa mise en œuvre Objectif => permettre une compréhension / inspection à tout moment par n importe quel acteur qui rentre dans la «war room» 19
CONTEXTE DU PROJET ET GRANDES ORIENTATIONS: MINDMAP = VISION NARRATIVE DU PROJET https://www.mindmup.com 20
USER STORIES : LE CŒUR DE L ORGANISATION AGILE http://referentiel.institutagile.fr/stories.html Résultat de la découpe fonctionnelle du projet => qu on peut obtenir dans le CDCF/CDCT ou lors des meetings agile Une user story ressemble en partie aux use case d UML Elle doit suivre un certain nombre de règles C est un objectif à atteindre pour les membres de l équipe => auto-organisation, le scrum master veille à la réalisation Grille INVEST Réalisable sur un sprint sinon on la découpe en user stories plus petites Représentée de façon concrète: le post-it Exemple de user story: Créer une version papier en tête du logo Créer un menu déroulant qui dépend du contexte user Internationaliser les contenus du site => sur un seul sprint? 21
USER STORY - STATUT Carton conversation confirmation Carton : on met la user story dans le bac à sable (sandbox) Conversation : workshop, stand up meeting, questionnaire pour évaluer la pertinence de la user story Confirmation : quand l équipe (PO, scrum master, dév, utilisateur, client, ) est ok sur la pertinence, la user story passe en état «prêt» et rentre dans le backlog de produit. 22
USER STORY EVALUATION Formulation : En tant que <<rôle>> Je veux que <<fonctionnalité>> afin de <<bénéfice>> Même démarche que use case => le point d entrée depuis CDC Utilisation des personas comme archétype d utilisateur Grille INVEST d une user story : Indépendante des autres (utilisation de «bouchons» de simulation) Négociable initialement, plutôt qu'un engagement ferme (objectif plutôt que détail fonctionnel) Verticale, ou ayant de la valeur en soit (pour l utilisateur final) Evaluée en termes de complexité relative (ne doit pas être un projet en soi) Suffisamment petite (en anglais Small) Testable en principe, ce qu'on vérifie en écrivant un test (pour les dév purs) => indicateurs de succès (Given) (Etant donné) un contexte, (When) (Lorsque) l'utilisateur effectue certaines actions, (Then) (Alors) on doit pouvoir constater telles conséquences 23
FICHE USER STORY User story Description Criteria (Invest) As a blog follower I need To know about blog new contents So that I m able to react (like, share, comment) Le blog doit permettre soit la notification automatique aux followers (FB, RSS, ) + tracking Independant: Negotiable: Valuable: Estimable: Sized: Testable: Size (hours ou tâches) 20 (3 tâches) Criticity (0, 9) 6 24 http://msisflotsam.blogspot.fr/2014/05/investing-in-good-stories.html
DÉCOUPAGE DES USER STORIES : BACKLOG SIMPLE Tâches priorisées (couleurs de post-it) Prêt Statut simplifié des tâches Planning poker pour prioriser et organiser Fini : le développement et les tests ont permis de valider une release Penser à l état validé! 25
USER STORY - SCRUM BAN http://www.slideshare.net/ marcusoftnet/kanbanboar ds Permet sur un seul tableau de visualiser l encours du backlog, les ressources et de gérer le flux de tâches. Statuts To learn Quantités Kanban: Limite non dépassable pour un statut donné (flux tiré d activité) Backlog sprint Cochons (forme Mee) Etat d avancement Garder l idée de post it de plusieurs couleurs 26
LES JALONS DE L AGILITÉ : LES ROUTINES Planification de sprint (hebdomadaire => lundi) Réunion préparatoire avant chaque sprint Permet de revenir sur les user stories Permet à chaque cochon de prendre en charge telle ou telle tâche => penser apprentissage et transversalité Daily scrum: cf diapo ci dessus Retrospectives: (hebdomadaires => vendredi) Bilan de fin de sprint Permet de faire le point sur des difficultés particulières Permet de capitaliser l expérience Permet d évaluer l efficacité de l itération Permet de mettre à jour le backlog de produit Workshops: Réunions de travail collaboratif (vision, rétrospectives, brainstoming, ) Concept important : le timeboxing Défini par auto-évaluation => on ne prescrit pas en agilité Evalué à l issue d une itération => apprentissage et réflexivité Vélocité et rythme soutenable : le nombre de points d une équipe sur un sprint 27
ENTRÉES POSSIBLES DE L ORGANISATION AGILE: CONSTRUCTION DES USER STORIES Par les fonctions => CDCF / CDCT Par les usages => personas Par les risques: SWOT, Mesure de criticité Par l organisation des tâches => burndown. Par la dimension relationnelle: daily scrum, nikoniko 28
LES PERSONAS http://www.infoq.com/presentations/prag matic-personas 29
LES PERSONAS Travail collaboratif de l équipe agile Caractériser visuellement les utilisateurs potentiels (archétypes) Une fiche architecturée par utilisateur et personnalisée On peut utiliser des outils d enquête pour alimenter buts et comportements => permet de mettre en tension les objectifs de l utilisateurs et les objectifs attendus pour lui Permettent de donner un 30 contexte d usage aux user stories (priorisation)
MESURE DE CRITICITÉ: UN EXEMPLE D OUTIL PARMI D AUTRES On fait un calcul à partir de 3 critères notés de 0 à 3: Complexité : 0 à 3 Urgence : 0 à 3 Priorité : 0 à 3 La criticité se mesure donc de 0 (aucune contrainte) à 9 (presque impossible à tenir) 31
PARTICIPER À LA DÉCISION QUAND ON N EST PAS EXPERT: LE PLANNING POKER 32
BURNDOWN CHART Fonctionnement inverse d un Gantt On part de la totalité de ce qui est à faire, on planifie (en bleu) On regarde ce qui a pu être fait (en rouge) On ajuste (ou on pleure) 33
LE NIKO-NIKO Proposition : Rajouter des lignes par cochon Todo emotions Tolearn emotions Global emotions Ce tableau doit servir au scrum master et au product owner pour déclencher des réunions. 34