Magazine Informatique

[Méthodes de développement agiles] Scrum

Publié le 14 juillet 2008 par François Mottet

Voici un deuxième article, après celui sur eXtreme Programming, dans ma série de présentation des méthodes de développement Agiles. Scrum est une méthode agile pour la gestion de projets. Elle ne couvre pas les techniques du développement logiciels, à l'inverse d'XP.

Scrum signifie la mêlée au rugby, c'est à dire que cette méthode s'articule autour d'une équipe soudée, ayant un but commun. Scrum définit le principe d'Itération, appelé Sprint. L'équipe de développement a donc un but connu à atteindre en une Itération, dont la durée est souvent de 15 ou 30 jours. A la fin d'une Itération, une livraison du produit doit être effectuée afin de présenter au client ce qui a été réalisé durant cette Itération.

L'équipe utilisant la méthode Scrum doit définir plusieurs rôles : un pProduct Owner qui est le représentant du client, une équipe de développement et un Scrum Master qui veille à la bonne application des valeurs de Scrum.

Plusieurs outils ou moments clés caractérisent Scrum :

  • Sprints ou itérations : Scrum fonctionne en Itération, d'une durée de 15 jours par exemple. Chaque Itération a un but à atteindre, défini par le client. Une version du logiciel est générée à chaque Itération, afin de livrer au client une version montrant le travail réalisé durant ce Sprint.
  • Daily Scrum : Chaque jour des Scrums (petites réunions) sont réalisés afn de connaître l'état d'avancement de l'équipe, de faire le point sur les problèmes potentiels. Très important car ces réunions d'une dizaine de minutes (souvent réalisés debout), donne une bonne vision au client, au Scrum Master et à l'ensemble de l'équipe du projet.
  • Backlog ou carnet de commande : C'est le nom que l'on donne aux besoins fonctionnels récoltés auprès du client et que l'équipe de développement doit réaliser. Ce backlog est souvent accompagné par une estimation en terme de point de la durée nécessaire pour réaliser ces fonctionnalités. Cette liste de fonctionnalités existe au niveau du projet (toutes les fonctionnalités du projet) et au niveau du sprint (les fonctionnalités à réaliser durant l'Iteration)
  • Velocité : La vélocité sorrespond au nombre de point qu'une équipe peut réaliser dans une Itération. L'équipe de développement passe par une phase d'engagement, afin d'indiquer au client quelles sont les fonctionnalités (et le nombre de points) qui seront réalisées au cours de ce sprint.

Une itération s'organise en plusieurs phases :

  • Scrum Panning : correspond à la phase d'engagement de l'équipe sur les fonctionnalités qui seront réalisées durant l'Itération. Une estimation des tâches peut être réalisée à ce moment.
  • Daily Scrum : correspond aux petites réunions journalières afin de présenter le travail réalisé à l'ensemble de l'équipe.
  • Rétrospective : à chaque fin de sprint, l'équipe se réunit afin de faire un bilan du sprint qui vient de se dérouler, et de trouver des axes d'amélioration pour les prochains. Les rétrospectives sont menées par le Scrum Master.

Voici une petite explication de la méthode Scrum. Le prochain article expliquera la méthode RUP.


Retour à La Une de Logo Paperblog

A propos de l’auteur


François Mottet 8 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossier Paperblog