Informatique

Scrum : Exercice Corrigé

La méthode Scrum est l’une des approches les plus populaires de la gestion de projet Agile. Elle repose sur une série de rituels, d’outils, et de rôles qui permettent aux équipes de travailler de manière itérative et incrémentale, en livrant des produits de haute qualité à chaque cycle (sprint). Cet article présente un exercice pratique sur Scrum, avec un corrigé détaillé pour vous aider à bien comprendre les concepts essentiels.


Exercice : Planification et Exécution d’un Sprint

Imaginez que vous êtes le Scrum Master d’une équipe de développement qui travaille sur une nouvelle application mobile pour la gestion de tâches personnelles. Le Product Owner a priorisé plusieurs éléments du backlog produit, et vous êtes sur le point de démarrer un sprint de 2 semaines avec votre équipe.

Voici les éléments du backlog produit proposés pour ce sprint :

ID de la StoryDescriptionEstimation (Points)
Story 1Création d’une page d’accueil simple avec login5 points
Story 2Mise en place d’un système de notifications8 points
Story 3Interface utilisateur pour l’ajout de tâches3 points
Story 4Intégration d’une API de gestion de tâches13 points
Story 5Implémentation de la fonctionnalité “Tâche récurrente”8 points
Story 6Tester la compatibilité de l’application sur iOS3 points

Tâches :

  1. Sprint Planning : Sélectionnez les stories à inclure dans ce sprint.
  2. Daily Scrum : Durant le sprint, suivez l’avancement des stories. Quels obstacles potentiels pourraient apparaître ?
  3. Sprint Review : Comment pourriez-vous présenter les résultats aux parties prenantes ?
  4. Sprint Retrospective : Après le sprint, proposez des actions pour améliorer l’efficacité de l’équipe lors des prochains sprints.

Corrigé de l’exercice


1. Sprint Planning

Lors de la réunion de Sprint Planning, l’équipe sélectionne les stories qu’elle estime pouvoir réaliser dans le cadre du sprint de 2 semaines. En général, l’équipe évalue sa capacité à travailler, mesurée en “points de vélocité”, basée sur les sprints précédents.

Hypothèse de vélocité : Supposons que l’équipe ait une vélocité moyenne de 20 points par sprint.

En fonction de la capacité de l’équipe, voici une sélection potentielle des stories pour ce sprint :

ID de la StoryDescriptionEstimation (Points)
Story 1Création d’une page d’accueil simple avec login5 points
Story 3Interface utilisateur pour l’ajout de tâches3 points
Story 5Implémentation de la fonctionnalité “Tâche récurrente”8 points
Story 6Tester la compatibilité de l’application sur iOS3 points
  • Total des points : 19 points, ce qui correspond à peu près à la vélocité de l’équipe (20 points). Cette sélection devrait permettre de réaliser un sprint atteignable, tout en laissant un peu de marge pour des imprévus.

Conseils :

  • Ne surchargez pas le sprint. Il est important de choisir des stories qui peuvent réellement être terminées dans le temps imparti.
  • Les stories doivent être bien définies, avec des critères d’acceptation clairs pour éviter tout malentendu sur ce qui est attendu.

2. Daily Scrum

Le Daily Scrum est une réunion quotidienne de 15 minutes où chaque membre de l’équipe répond à trois questions :

  1. Qu’ai-je fait hier pour aider l’équipe à atteindre l’objectif du sprint ?
  2. Que vais-je faire aujourd’hui ?
  3. Quels obstacles rencontrons-nous ?

Exemple d’obstacles potentiels dans ce sprint :

  • Story 5 (Tâche récurrente) : Il pourrait y avoir des difficultés d’intégration avec le système de tâches existant, en particulier si le modèle de données n’a pas été conçu pour les tâches récurrentes.
  • Story 6 (Compatibilité iOS) : Des problèmes spécifiques à iOS peuvent apparaître, nécessitant peut-être des tests supplémentaires ou l’utilisation d’un simulateur iOS.
  • Problème technique inattendu : L’équipe pourrait rencontrer des bugs complexes ou des dépendances non résolues, ce qui pourrait ralentir le développement.

Le rôle du Scrum Master est d’aider l’équipe à lever ces obstacles, que ce soit en assurant une meilleure communication, en trouvant des ressources supplémentaires, ou en éliminant les interférences extérieures.


3. Sprint Review

À la fin du sprint, lors de la Sprint Review, l’équipe présente les stories terminées aux parties prenantes (Product Owner, utilisateurs, etc.). L’objectif est de démontrer l’incrément de produit et d’obtenir des retours.

Comment présenter les résultats :

  • Démo fonctionnelle : Montrez comment les utilisateurs peuvent se connecter via la page d’accueil (Story 1) et créer des tâches récurrentes (Story 5).
  • Interface utilisateur : Présentez l’interface pour l’ajout de tâches (Story 3), en expliquant comment elle a été conçue pour être intuitive.
  • Compatibilité : Montrez que l’application fonctionne correctement sur iOS (Story 6), en illustrant les tests effectués.

Recueillir des feedbacks :

  • Demandez aux parties prenantes de donner leur avis sur l’interface et la fonctionnalité “Tâche récurrente”. Ce feedback permettra d’ajuster les stories futures et de prioriser les améliorations.

4. Sprint Retrospective

La Sprint Retrospective est un moment crucial où l’équipe réfléchit à son fonctionnement et identifie des points d’amélioration pour le sprint suivant.

Exemples d’actions d’amélioration :

  • Améliorer l’estimation des stories : Si certaines stories se sont révélées plus complexes que prévu (par exemple, Story 5 sur les tâches récurrentes), l’équipe peut discuter des moyens d’améliorer ses estimations, peut-être en fragmentant les stories en tâches plus petites.
  • Optimiser la communication interne : Si des blocages techniques ont ralenti le développement, l’équipe peut améliorer la communication pour signaler les problèmes plus rapidement.
  • Gestion des tests : Si le test de compatibilité sur iOS a pris plus de temps que prévu, l’équipe peut décider de préparer des tests automatisés pour les prochains sprints, afin de mieux gérer ce type de tâche.

Cet exercice Scrum Master pratique illustre l’ensemble du processus Scrum, de la planification du sprint à la rétrospective. Chaque phase est essentielle pour assurer une gestion efficace du projet et une amélioration continue de l’équipe. Le rôle du Scrum Master est central, car il facilite la communication, élimine les obstacles, et aide l’équipe à respecter les principes et pratiques Scrum tout en s’améliorant à chaque sprint.

Scrum est une méthode Agile efficace pour les équipes qui travaillent sur des projets évolutifs, avec des besoins changeants et des priorités fluctuantes. Ce type d’exercice est un excellent moyen de se familiariser avec les concepts Scrum et de les appliquer dans des contextes réels.

Voici quelques exercices supplémentaires sur Scrum pour approfondir la compréhension de cette méthodologie et préparer efficacement un Scrum Master ou une équipe de développement à travailler en mode Agile.


Exercice 1 : Identification des rôles dans Scrum

Objectif : Comprendre les rôles essentiels dans une équipe Scrum et leurs responsabilités.

Énoncé :
Vous êtes chargé de créer une nouvelle équipe Scrum pour un projet de développement d’une plateforme e-commerce. L’équipe est composée de développeurs, d’un Product Owner, et d’un Scrum Master.

  1. Associez les actions suivantes aux rôles appropriés (Product Owner, Scrum Master, Équipe de Développement) :
  • A. Priorise les éléments du backlog produit.
  • B. Supprime les obstacles pour permettre à l’équipe de progresser.
  • C. Conçoit et développe les fonctionnalités demandées par le Product Owner.
  • D. S’assure que les pratiques Scrum sont respectées par tous les membres de l’équipe.
  • E. Définit les objectifs du sprint en collaboration avec l’équipe.

Corrigé :

  • A : Product Owner
  • B : Scrum Master
  • C : Équipe de développement
  • D : Scrum Master
  • E : Product Owner et Équipe de développement

Exercice 2 : Création d’un backlog produit

Objectif : Créer un backlog produit clair et structuré.

Énoncé :
En tant que Product Owner d’une application de gestion de notes pour étudiants, vous devez définir les user stories prioritaires à inclure dans le backlog produit pour la prochaine version.

  1. Rédigez 5 user stories pour les fonctionnalités suivantes :
  • Création de notes.
  • Tri des notes par matière.
  • Exportation des notes au format PDF.
  • Ajout de commentaires aux notes.
  • Partage de notes avec d’autres utilisateurs.
  1. Estimez la difficulté de chaque story en points de complexité (2, 5, 8, ou 13 points).

Corrigé (exemple de user stories) :

  1. En tant qu’utilisateur, je veux créer une note afin de pouvoir organiser mes informations personnelles. (Estimation : 5 points)
  2. En tant qu’utilisateur, je veux trier mes notes par matière afin de retrouver mes informations plus rapidement. (Estimation : 3 points)
  3. En tant qu’utilisateur, je veux exporter mes notes au format PDF afin de pouvoir les imprimer ou les partager. (Estimation : 8 points)
  4. En tant qu’utilisateur, je veux ajouter des commentaires à mes notes pour inclure des informations supplémentaires. (Estimation : 5 points)
  5. En tant qu’utilisateur, je veux partager mes notes avec d’autres utilisateurs afin de collaborer facilement. (Estimation : 8 points)

Exercice 3 : Sprint Planning

Objectif : Planifier un sprint en fonction de la vélocité de l’équipe.

Énoncé :
Vous êtes Scrum Master, et l’équipe dispose d’une vélocité de 20 points. Le Product Owner a priorisé les stories suivantes dans le backlog produit pour le prochain sprint :

Story IDDescriptionPoints
1Création de l’interface utilisateur8 points
2Connexion via un réseau social13 points
3Mise en place d’un système de notifications5 points
4Test de compatibilité sur différents navigateurs3 points
5Déploiement sur un serveur de test2 points
  1. Sélectionnez les stories qui doivent être incluses dans ce sprint.
  2. Justifiez votre choix en tenant compte de la vélocité de l’équipe.

Corrigé :
Pour un sprint de 20 points, une sélection pourrait être :

  • Story 1 (8 points) : Création de l’interface utilisateur.
  • Story 3 (5 points) : Système de notifications.
  • Story 5 (2 points) : Déploiement sur un serveur de test.
  • Story 4 (3 points) : Test de compatibilité.

Total : 18 points. Cela laisse une marge de 2 points pour ajuster si des imprévus surviennent.


Exercice 4 : Suivi avec un burndown chart

Objectif : Apprendre à utiliser un burndown chart pour suivre l’avancement d’un sprint.

Énoncé :
Durant un sprint de 10 jours, l’équipe doit livrer un ensemble de stories qui ont été estimées à 40 points au total. Le burndown chart suivant représente l’évolution quotidienne des points restants à accomplir.

JourPoints restants
140
235
333
430
530
628
720
818
910
105
  1. Analysez ce burndown chart. Quel est le rythme de travail de l’équipe ?
  2. Identifiez les jours problématiques où le travail n’a pas suffisamment avancé.

Corrigé :

  1. Le rythme de travail est globalement bon, mais l’équipe a eu une lente progression entre les jours 4 et 6, où les points restants n’ont pas beaucoup diminué.
  2. Les jours 4 et 5 semblent problématiques, car l’équipe n’a pas progressé sur les stories (points restants stagnent à 30).

Exercice 5 : Simulation d’un Daily Scrum

Objectif : Améliorer la communication dans l’équipe et identifier les obstacles.

Énoncé :
Pendant un Daily Scrum, trois membres de l’équipe font les rapports suivants :

  • Développeur 1 : “J’ai terminé le frontend pour la création de compte. Aujourd’hui, je vais intégrer l’API de validation des comptes. Aucune difficulté pour l’instant.”
  • Développeur 2 : “Hier, j’ai commencé à tester l’application sur les navigateurs, mais j’ai rencontré un bug sur Safari. Je vais essayer de le corriger aujourd’hui.”
  • Développeur 3 : “J’ai passé la journée à résoudre des conflits dans le code. Je vais revoir le plan de déploiement, mais je risque de prendre du retard.”
  1. Quels obstacles identifiez-vous dans cette réunion ?
  2. Comment le Scrum Master peut-il aider à lever ces obstacles ?

Corrigé :

Obstacle identifié :

  • Le Développeur 2 rencontre un bug spécifique sur Safari, ce qui pourrait retarder le déploiement.
  • Le Développeur 3 signale des conflits dans le code, ce qui pourrait affecter le planning.

Le Scrum Master peut :

  • Aider le Développeur 2 à trouver des ressources ou un soutien technique pour résoudre le bug Safari.
  • Organiser une réunion avec le Développeur 3 pour résoudre les conflits de code et s’assurer que le planning est respecté.

Exercice 6 : Sprint Retrospective

Objectif : Analyser un sprint et proposer des améliorations pour l’équipe.

Énoncé :
À la fin d’un sprint, l’équipe a réussi à livrer 4 stories sur les 5 prévues. Toutefois, une story importante a pris plus de temps que prévu, retardant les autres tâches. Voici quelques retours de l’équipe lors de la Sprint Retrospective :

  • “Nous avons mal estimé la complexité de la Story 4.”
  • “Le Daily Scrum n’a pas toujours permis de bien identifier les obstacles.”
  • “Le travail était parfois mal réparti entre les membres de l’équipe.”
  1. Proposez trois actions d’amélioration que l’équipe pourrait mettre en place pour les prochains sprints.

Corrigé :

  1. Améliorer l’estimation des stories : L’équipe pourrait utiliser des techniques comme le planning poker pour mieux estimer les stories et fragmenter les tâches complexes.
  2. Renforcer les Daily Scrums : Le Scrum Master pourrait encourager une meilleure communication pendant les Daily Scrums pour identifier les obstacles dès qu’ils apparaissent.
  3. Répartition du travail : L’équipe pourrait améliorer la gestion des tâches avec un tableau Kanban, en surveillant que chaque membre a un travail bien défini.

Ces exercices permettent aux équipes et aux futurs Scrum Masters de se familiariser avec les concepts clés de Scrum, tout en renforçant les compétences nécessaires pour planifier, exécuter, et améliorer les projets dans un cadre Agile.

Autres articles

Guide : Comment créer un QCM en...
Le QCM en langage C peut être simulé dans un...
Read more
Tableaux en Langage C : Exercices Corrigés
Voici une série d'exercices corrigés sur les tableaux en langage...
Read more
Quels sont les outils utilisés avec Scrum...
Scrum est une méthode Agile largement utilisée dans la gestion...
Read more

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *