Méthodologie agile SCRUM

image_pdfimage_print

Méthodologie agile SCRUM

 

1.   Qu’est ce que la méthodologie Agile SCRUM ?

Scrum est une méthode agile dédiée à la gestion de projets. Son objectif est d’améliorer la productivité des équipes auparavant ralenties par des méthodologies plus lourdes.

Scrum ne propose aucune pratique de développement, juste des pratiques de management. Il s’agit en fait d’un cadre de gestion de projets bien adapté aux méthodes de développement agile

Le terme Scrum est emprunté au rugby à XV et signifie mêlée. Ce processus s’articule en effet autour d’une équipe soudée, qui cherche à atteindre un but, comme c’est le cas en rugby pour avancer avec le ballon pendant une mêlée.

Le principe de base de Scrum est de focaliser l’équipe de façon itérative sur un ensemble de fonctionnalités à réaliser, dans des itérations de durée fixe de une à quatre semaines, appelées sprints. Chaque sprint possède un but à atteindre, défini par le directeur de produit, à partir duquel sont choisies les fonctionnalités à implémenter dans ce sprint. Un sprint aboutit toujours sur la livraison d’un produit partiel fonctionnel. Pendant ce temps, le ScrumMaster a la charge de réduire au maximum les perturbations extérieures et de résoudre les problèmes non techniques de l’équipe.

AllScrum

Un principe fort en Scrum est la participation active du client pour définir les priorités dans les fonctionnalités du logiciel et pour choisir celles qui seront réalisées dans chaque sprint. Il peut à tout moment compléter ou modifier la liste des fonctionnalités à réaliser, mais jamais celles qui sont en cours de réalisation pendant un sprint.

2.   L’organisation 

2.1 Les rôles

La méthodologie SCRUM fait intervenir 3 rôles principaux qui sont :

  • Responsable produit – Product owner :
    • Il est le responsable produit  de l’équipe projet client.
    • Il définir et priorise la liste des fonctionnalités du produit et choisir la date et le contenu de chaque sprint sur la base des valeurs (charges) qui lui sont communiquées par l’équipe.
    • Il explicite les éléments (Items) du carnet du produit.
    • Ces composants sont sous forme des User Stories : Un User Story est une phrase simple dans le langage de tous les jours permettant de décrire avec suffisamment de précision le contenu d’une fonctionnalité à développer.
    • La phrase contient généralement trois éléments descriptifs de la fonctionnalité: Qui? Quoi? Pourquoi?
    • En tant que <qui>, je veux <quoi> afin de <pourquoi>
    • Enfin, il valide fonctionnellement les développements.
  • ScrumMaster :
    • Véritable facilitateur sur le projet,
    • Il veille à ce que chacun puisse travailler au maximum de ses capacités en éliminant les obstacles et en protégeant l’équipe des perturbations extérieures.
    • Il porte également une attention particulière au respect des différentes phases de SCRUM. Il participe aux développements des fonctionnalités
  • Equipe de projet :
    • une taille allant de 4 à 10 personnes en général, l’équipe regroupe tous les rôles habituellement nécessaires à un projet, à savoir l’architecte, le concepteur, le développeur, le testeur, etc.
    • L’équipe s’organise elle-même et elle reste inchangée pendant toute la durée d’un sprint.

2.2 Les événements

Le sprint:

Tout au long de la vie du projet, de la phase des spécifications jusqu’à la mise en production, le travail est réparti en sprints et releases. Un sprint est une itération, d’une durée allant de 2 à 4 semaines. Un release est une somme de sprints, améliorant la visibilité sur le planning du projet.

Sprint

On définit, en début du projet un ensemble de fonctionnalités à développer. Les fonctionnalités sont réparties en releases. C’est ce qu’on appelle le back log produit et back log release. Au début de chaque sprint on planifie et distribue les items du back log de la release. Tout au long du projet il est possible d’ajouter ou de supprimer des items du back log d’un sprint.

Le principal avantage de cette méthode est que chaque sprint est intégré et testé. Toutes les fonctionnalités développées durant le sprint sont pleinement fonctionnelles et permettent de supprimer l’effet tunnel lors des développements.

Point quotidien – Daily Scrum :

Daily Scrum  est une réunion qui dure 15 minutes au maximum. Elle permet aux développeurs de faire un point de coordination sur les tâches en cours et sur les difficultés rencontrées.

Le Scrum Master s’assure que la réunion ait lieu à heure fixe.

Le Product owner  du produit n’est pas présent.

À tour de rôle, chaque membre répond à 3 questions :

•     Qu’ai-je fait hier ?

•     Que dois-je faire aujourd’hui ?

•     Quelles sont les difficultés rencontrées ?

Cette réunion a un but de synchronisation pour l’équipe et ne doit pas être vécue comme un reporting d’activité.

Sprint Planning Meeting :

Toute l’équipe se réunit pour décider des fonctionnalités qui vont composer le sprint suivant et mettre à jour la liste générale.

Les réunions de revue de travail (démonstration) :

Lors de cette réunion, chacun présente ce qu’il a fait pendant la durée du sprint. Une démonstration des nouvelles fonctionnalités ou de présentation de l’architecture est organisée. Il s’agit d’une réunion informelle de 2 heures environ à laquelle participe toute l’équipe.

Les réunions de rétrospectives :

A chaque fin de sprint, l’équipe fait le point sur ce qui a bien fonctionné et sur ce qui a moins bien fonctionné. Lors de cette réunion d’une durée de 15 à 30 minutes où chacun est invité et parle en son nom, un vote de confiance est organisé pour décider des améliorations à apporter.

Leave a Reply

Your email address will not be published. Required fields are marked *