Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Présentation SCRUM

Petite Présentation de SCRUM
by

Tom Le Berre

on 6 December 2012

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Présentation SCRUM

...une méthode "Agile" SCRUM ? Qu'est-ce que SCRUM en deux mots? SCRUM est un terme anglais pour la « mêlée de Rugby ».
En effet, cette méthode agile met l'accent sur l'esprit d'équipe et sur le fait que tous les acteurs doivent avancer dans la même direction. Les 3 "piliers" du SCRUM SCRUM est un processus empirique : il se base sur l'expérience du terrain. Les 3 piliers sont : Rôles 3 rôles principaux : Product Owner Son rôle : Est le représentant des clients et des utilisateurs. Son objectif est de maximiser la valeur du produit développé. Cette "métaphore" existe depuis 1986 et n'est
pas obligé d'être appliqué à un projet informatique. Liens http://www.aubryconseil.com/pages/Scrum Transparence : Avoir un langage commun entre l'équipe et le management. Inspection : A intervalle régulier, Scrum propose de faire le point sur les différents artéfacts produits, afin de détecter toute variation indésirable (Mélée quotidienne ?). Adaptation : Si une dérive est constatée pendant l'inspection, le processus doit alors être adapté. Scrum fournit des rituels, durant lesquels cette adaptation est possible. Il s'agit de la réunion de planification de sprint, de la mélée quotidienne, de la revue de sprint ainsi que de la rétrospective de sprint. Propriétaire du produit (Product Owner) ScrumMaster Développeur Différentes responsabilités : Vue globale du SCRUM Il explicite les Items du Carnet du produit. Ces composantes sont exprimées sous forme de User Stories. Son rôle est alors de rédiger les spécifications et les cas de tests qui les accompagnent. Il définit l'ordre dans lequel les fonctionnalités seront développées. Il prend les décisions importantes concernant l'orientation du projet. Il s'assure que le Carnet du produit est visible et compris de tous. il valide fonctionnellement les développements. En accord avec l'équipe, il fixe les objectifs d'un Sprint au début de celui-ci.
Si ces objectifs deviennent obsolètes pendant le sprint, il doit alors annuler
le sprint courant et en recréer un nouveau. Il est important qu'il reste très disponible pour répondre aux questions de l'équipe et pour lui
donner son avis sur divers aspects du logiciel
(UI par exemple). Scrum Master Son rôle : Est responsable de la méthode. Il doit s'assurer que celle-ci est comprise, et bien mise en application. (Une sorte de médiateur ?) Différentes responsabilités : Communiquer la vision et les objectifs à l'équipe
Apprendre au directeur de produit à rédiger les composantes du carnet de produit
Faciliter les rituels de Scrum
Coacher l'équipe de développement
Faciliter son intégration à l'entreprise, surtout si celle ci n'est pas pleinement agile
Écarter les éléments pouvant perturber l'équipe
Aider l'adoption d'Agile au niveau de l'entreprise
Travailler avec les autres Facilitateurs/animateurs pour coordonner plusieurs équipes, s'il y a lieu. En tant que facilitateur, il aide l'équipe à déterminer quelles interactions avec l’extérieur lui sont utiles, et lesquelles sont freinantes. Il aide alors à
maximiser la valeur produite par l'équipe. Développeur Son rôle : Pas vraiment défini.L'équipe ne comporte pas de rôles prédéfinis, elle est auto-organisée, et pluridisciplinaire. Une équipe auto-organisée choisit la façon d'accomplir son travail, sans
que ce soit imposé par une personne externe. Il n'y a pas de hiérarchie interne : Toutes les décisions sont prises ensemble. L'objectif de l'équipe est de livrer le produit par petits incréments. A tout instant, il existe une version du produit "potentiellement utilisable" disponible. L'équipe s'adresse directement au directeur de produit. Il est conseillé qu'elle lui montre le plus souvent possible le logiciel développé pour qu'il puisse ajuster les détails d'ergonomie et d'interface par exemple. Auto-organisée ne signifit pas auto-gérée!
Cela vient avec le temps généralement Événements Le Sprint Mêlée Quotidienne Réunion de Planification de Sprint Revue de sprint Rétrospective du sprint Le Sprint Période Max de 1 mois pendant laquelle on livre un incrément d'un produit. Comment marche un cycle de "Sprint" : Le but du sprint ne peut être modifié La composition de l'équipe reste constante La qualité n'est pas négociable La liste d'items est sujette à négociations entre le Product Owner et les Développeurs. Tous les éléments du sprint n'étant pas acceptés sont rééstimés, et remis dans le carnet du produit.
Un nouveau sprint démarre alors. Mêlée Quotidienne Quotidiennement, une mêlée quotidienne (Daily Scrum) à lieu pendant 10-15 min MAX. Le but ? Permettre aux Développeurs de faire un point de coordination sur les tâches en cours, et sur les difficultés rencontrées. A tour de rôle, chaque membre répond à 3 questions : Qu'est-ce que j'ai fait hier ? Qu'est-ce que je compte faire aujourd'hui ? Quelles sont les difficultés que je rencontre ? Cette réunion a un but de synchronisation pour l'équipe et ne doit pas être vécue comme un reporting d'activité. Le Product Owner n'y est pas présent Réunion de Planification de Sprint Tout le monde est présent à cette réunion, qui ne doit pas durer plus de 8 heures pour un sprint d'un mois (à moduler suivant la longueur du sprint) Elle se passe en 2 temps : L'équipe de développement cherche à prévoir ce qui sera développé durant le prochain Sprint.Pour cela l'équipe à besoin d'avoir à dispo : L'équipe se focalise sur la manière dont ils atteindront le but du sprint. Ils prévoient alors ce qui sera fait pendant le sprint, construisant ainsi une estimation. Le carnet du produit priorisé
L'incrément réalisé à la dernière itération
La capacité de production de l'équipe lors des dernières itérations
La capacité de production prévue pour la prochaine itération Cela constitue l'engagement de l'équipe Revue de sprint Réunion de fin de cycle Tout le monde est présent 4 heures max Objectif ? Valider le logiciel qui a été produit pendant le sprint. Elle reprend point par point les items du carnet de produit Démonstration du produit au Directeur de Produit Définir le temps de feedback post release + ajout d'eventuels items relatifs à la démo (à définir) Ça n'est pas un sprint !!! Rétrospective du sprint Elle ne dure que 3 h Max (suivant la longueur du Sprint). Developpeurs & ScrumMaster sont présents Le but ? Il faut être très vigilant à ne pas retomber dans les pratiques rigides des méthodes plus classiques. Permet de tirer les enseignements du cycle écoulé. A terme, cette tâche devrait prendre de moins en moins de temps, du fait que l'on apprend de ses erreurs. Artéfacts de Scrum Carnet du produit (Product Backlog) Carnet de sprint (Sprint BackLog) Incrément Définition de complété Une approche fonctionnelle pour récolter les besoins des utilisateurs Backlog Elle se dub-divise en 3 parties : Une description
Une estimation (souvent exprimée en points arbitraires)
Un ordre (souvent défini par le Directeur de produit ou Product Owner) Ce dernier peut changer cet ordre en cours de projet et même ajouter, modifier ou supprimer des éléments dans le carnet. Carnet de sprint En début de sprint, un but est décidé. Pour atteindre cet objectif, l'équipe choisit quels éléments du carnet de produit seront réalisés. Ces éléments sont alors groupés dans un carnet de sprint. Chaque équipe met à jour régulièrement le carnet de sprint. Celui ci donne donc une vision de ce que l'équipe estime nécessaire à réaliser pour atteindre l'objectif du sprint. Seule l'équipe peut le modifier à tout moment. Increment Permet à l'ensemble des utilisateurs de pouvoir voir l'avancement du projet en temps réel.
A la fin du cycle, l'intégralité du fichier du "carnet de cycle" doit être "complété". Découpés en User Stories de la méthode Extreme Programming, associées au Planning poker les estimer
(suite de Fibonacci pour les Matheu) Estimations Items de backlog de produit Calcul de vélocité Items de backlog de sprint Items de backlog de produit Comment est-il défini ? Ces items sont découpés en "User Stories" qui sont
estimés en "points", en suivant l'algorithme de la suite
de Fibonacci (1, 2, 3, 5, 8, 13, ...) par exemple. Calcul de vélocité http://hingchanscrum.blogspot.co.uk/2012/01/mes-deux-cents-la-premiere-velocite.html En moyenne, la vélocité tend à être "juste" à partir de 5 sprints
(généralement les 3 derniers au début d'une release). Késako ? Une fois que tous les items de backlog de produit ont été estimés, on attribue un
certain nombre d'items à réaliser aux sprints successifs. Comment estimer la première vélocité ? Concept de jour/homme Vélocité = 1er Cycle Arbitraire ? 1 point = 1 heure de travail L'intérêt de cette démarche est d'avoir une idée du travail requis pour réaliser chaque fonctionnalité sans pour autant lui donner une valeur en jours que le directeur de produit serait tenté de considérer comme définitivement acquise. Ces estimations aider le Product Owner pour évaluer le calendrier et peuvent influer sur
l'ordre des rubriques du carnet de commandes. Ex : Si l'ajout d'un lien dans le footer et l'ajout d'une banière de pub ont la même valeur pour l'entreprise, celui qui a le plus petit effort de développement auront probablement une priorité plus élevée, parce que le ROI (Retour sur investissement) est plus élevé. On utilise la vélocité pour planifier le projet à l'échelle macroscopique de façon fiable et précise. Egale à la somme des points pour le temps total d'un sprint (10 jours ou 60 heures) On part en "roue libre" Donnera la base pour le planning poker suivant. Affecter 2 points arbitrairement à une user story très simple Estimation des autres User Stories par rapport à celle-ci Estimer une multitude de user story divisées en tâches élémentaires Prendre une bonne quantité de user story Processus plus long du fait qu'il y a plus de US Meilleur vélocité de départ en général Estimation Claude Aubry Estimation par similitude d'effort (regrouper des US par taille) et leur appliquer la valeur des points retrouvée dans la suite de Fibonacci (1, 2, 3, 5, 13...) Ex: Les US du premier groupe seront affectées de 1 point, le deuxième groupe 2 point, etc... Items de backlog de sprint Elles sont exprimés en heures et ne doivent pas dépasser 2 jours => Sinon les redécouper en sous-items. Burndown Charts Les burndown charts (graphiques d'avancement) permettent de visualiser graphiquement l'avancement du travail. Une interprétation simple permet d'avoir une idée sur les échéances futures. Méthodes Cycle en V vs SCRUM Projets interminables
Il est rare qu’on arrive à un projet qui marche à la date prévue
La mise au point est lourde
Peu de coopération
On cherche les responsables plutôt que de résoudre les problèmes
Documents redondants et souvent incohérents
Chacun fait référence au document de sa phase
Incompréhension des intervenants
Besoin du client insatisfait car entre-temps il a changé
En 18 mois, on a le temps de faire 2 enfants. Alors, le projet…
Synonyme de : frustration, inefficacité, travail inutile, explosion du budget… Cycle en V vs SCRUM (2) Questions ? Feel free to ask !!! https://fr.wikipedia.org/wiki/Scrum_(m%C3%A9thode) http://www.scrumalliance.org/pages/what_is_scrum (English) Release BurndownChart Pas de changements imposés pendant un sprint
Toute l'équipe dans une même pièce
Un tableau blanc et/ou en liège
Un bon outil de suivi du projet
Prévenir des interventions extérieures (téléphone, irruption dans la pièce, etc.)
Tout ce qui peut rendre l'équipe plus sereine et efficace Qualité de l'environnement de travail Conclusion L'Agilité requiert des dispositions particulières qui sont loin d'être faciles à mettre en place, mais portent leurs fruits sur le long terme : Une organisation adaptée : Il est très difficile de convaincre les organes décisionnels d'une entreprise de travailler de façon Agile. En effet, cela signifie de ne pas disposer dès le départ d'une date et d'un budget très précis, mais plutôt d'un ordre de grandeur. Un environnement favorable : Eliminer les contraintes dans une entreprise n'est pas toujours évident. Comment limiter les appels téléphoniques trop fréquents, les irruptions dans la pièce de l'équipe, les opérations "urgentes" demandées aléatoirement par la direction, etc... ? Un état d'esprit : Etre Agile, c'est privilégier l'esprit d'équipe et pas seulement dans la réalisation technique. Le client doit comprendre que l'on attend de lui un investissement personnel bien supérieur à celui des méthodes plus classiques, en testant le logiciel souvent et en participant à toutes les réunions. Glossaire Directeur de produit (Product Owner) Chef de mélée (Scrum Master) Backlog du Produit (Product BackLog) Backlog de sprint (Sprint BackLog) Mêlée quotidienne (Daily Scrum) Personne responsable de produire et maintenir à jour le backlog de produit. C'est lui qui en détermine les priorités et qui prend les décisions concernant l'orientation du projet. Sprint Membre de l'équipe dont l'objectif principal est de la protéger des perturbations extérieures. Il est complètement transparent pour la communication entre l'équipe et les clients et n'a aucun pouvoir hiérarchique sur l'équipe. C'est en revanche un facilitateur pour les problèmes non techniques de l'équipe. Liste des fonctionnalités qui devront être réalisées par le logiciel. Liste des tâches à accomplir pendant un sprint. Elles correspondent à la réalisation des items de backlog du produit affectés au sprint. Réunion quotidienne de 15 minutes qui a pour but de faire le point sur ce qui a été fait depuis la dernière mêlée, ce qui est prévu de faire jusqu'à la prochaine et quelles sont les embûches rencontrées durant le travail. Nom d'une itération dans Scrum. Cette itération dure 30 jours calendaires en théorie, mais en pratique on utilise plutôt entre 2 et 4 semaines. Pendant une itération, l'équipe doit développer une liste d'items du backlog de produit qui a été définie au début de ce sprint. Graphique d'avancement (Burndown Chart) Graphique qui montre la tendance du reste à faire total de jour en jour (pour les sprints) ou de sprint en sprint (pour les releases). Ce qu'il faut éviter : Scrum Master directif : Scrum Master n'est pas un chef de projet (officel ou déguisé) La communication constructive laisse la place aux reproches ou aux non-dits : Effet de lissage : Permet de compenser un jour par un autre en terme de tâche Détecter au plus rapidement les difficultés ou retards rencontrés et agir en conséquence.
Full transcript