1. Généralités

  • Scrum est un processus agile qui permet de produire la plus grande valeur métier dans la durée la plus courte.

  • Du logiciel qui fonctionne est produit à chaque sprint (toutes les 2 à 4 semaines).

  • Le métier définit les priorités.

  • L’équipe s’organise elle-même pour déterminer la meilleure façon de produire les exigences les plus prioritaires.

  • À chaque fin de sprint, tout le monde peut voir fonctionner le produit courant et décider soit de le livrer dans l’état, soit de continuer à l’améliorer pendant un sprint supplémentaire.

2. Les Acteurs SCRUM

Les acteurs dans Scrum sont :

le Product Owner

le client ou son représentant qui fait partie de l’équipe

le SCRUM Master

un animateur, facilitateur plutôt qu’un chef (de projet)

l'équipe

capable de mettre en oeuvre toutes les compétences (architecture, conception, développement, IHM, tests, documentation, etc.)

2.1. Rôles du Product Owner

  • Définit les fonctionnalités du produit

  • Choisit la date et le contenu de la release (version livrée aux utilisateurs réalisée en plusieurs sprints)

  • Est responsable du retour sur investissement (de la valeur métier)

  • Définit les priorités dans le backlog en fonction de la valeur « métier »

  • Ajuste les fonctionnalités et les priorités à chaque sprint si nécessaire

  • Accepte ou rejette les résultats

2.2. Rôles du SCRUM Master

  • Assure le management du projet

  • Fait appliquer par l’équipe les valeurs et les pratiques de Scrum

  • Résout des problèmes

  • S’assure que l’équipe est complètement fonctionnelle et productive

  • Facilite une coopération poussée entre tous les rôles et fonctions

  • Protège l’équipe des interférences extérieures

2.3. L’équipe SCRUM

  • Comprend de 5 à 10 personnes, de préférence à plein temps sur le projet

  • Regroupe tous les rôles Architecte, concepteur, développeur, spécialiste IHM, testeur, etc.

  • S’organise par elle-même

  • La composition de l’équipe ne doit pas changer pendant un Sprint

3. Déroulement d’un projet SCRUM

scrum1
  • Planification du sprint suivant

    • Choix des items du backlog de produit qui seront réalisés durant le sprint

    • Identification des tâches et définition du backlog de sprint estimé en heures

  • SCRUM quotidien (15mn)

    • qu’ai-je fait hier ?

    • que vais-je faire aujourd’hui ?

    • y-a-t-il des problèmes particuliers ?

  • Revue de SPRINT (15-30mn)

    • Présentation de l’application à l’équipe et à toute personne invitée

    • Calcul de la vélocité de l’équipe

  • Rétrospective de SPRINT (15mn)

    • L’équipe (client compris) revient sur ses modes de fonctionnement

    • Qu’est-ce qui marche : on continue à l’identique

    • Qu’est-ce qui ne marche pas : comment fait-on désormais ?

    • Y-a-t-il des choses à ne plus faire ?

  • Planification de Release

    • Définit les exigences du backlog de produit qui constitueront la release

    • Définit le nombre de sprints et la date de livraison de la release

    • Effectuée avant le premier sprint si la vélocité de l’équipe est connue

    • Actualisée à chaque fin de sprint

4. Les artefacts SCRUM

Le backlog de produit

la liste des exigences métier ordonnée par la valeur métier (l’importance métier pour le Product Owner)

Les backlogs de sprint

les listes des tâches à réaliser pour répondre aux exigences métier choisies pour le sprint

Les burndowns du projet

les graphiques montrant l'avancement du projet

4.1. Le backlog de produit

  • Il est fourni par le Product Owner au démarrage du projet

  • Il est une liste ordonnée d’exigences (stories) classées selon leur importance métier

  • Le classement de chaque exigence pourra être révisé à chaque revue de sprint par le Product Owner

  • Des exigences pourront être ajoutées/retirées à chaque revue de sprint par le Product Owner

4.2. Les backlogs de sprint

  • Définis lors de la planification des sprints

  • Ensemble des tâches à effectuer pour réaliser les exigences choisies pour le sprint dans le backlog de produit

  • Les tâches ont estimées en heures

  • L’estimation des tâches sont réestimées à chaque SCRUM (mélée quotidienne)

  • La définition des tâches conduit souvent à réaliser collectivement une conception de haut niveau

4.3. Les burndowns du projet

  • Les valeurs du backlog de produit et les estimations du backlog de sprint permettent de produire les courbes d’avancement du projet

4.3.1. Burndown de sprint

  • Actualisé chaque jour

  • Indique le nombre d’heures restantes pour toutes les tâches du sprint

sprint burndown
le burndown de sprint n’est pas nécessairement décroissant si des tâches sont ajoutées ou bien réévaluées à la hausse pour leur durée.

4.3.2. Burndown de produit (ou de release)

  • Évalue à chaque fin de sprint la quantité du backlog de produit qui reste à faire

productBurndown
le backlog de release pouvant évoluer, la courbe n’est pas nécessairement décroissante.
permet d’en déduire une estimation de la date de fin de release ou une estimation de la quantité du backlog de produit qui ne sera pas réalisée à une date donnée.

4.4. Indicateurs

Vélocité

quantité du backlog de produit réalisée par l’équipe pendant un sprint (calculée en points)

Capacité

quantité du backlog de produit qui sera réalisée lors du prochain sprint