La méthode Scrum dans les projets de développement informatique

Article

Quelle est la définition de la méthode Scrum ?

La méthode Scrum est très connue dans l’ingénierie informatique. Cette méthode est très efficace. Ce n’est pas un hasard si la méthode Scrum est déployée dans la plupart des projets informatiques de nos clients.

Scrum est un cadre de développement de produits logiciels. Ce cadre de travail concentre ses efforts sur la réalisation d’objectifs communs en livrant régulièrement et de façon productive des produits fonctionnels.

La voie des développements adaptatifs

La méthode Scrum est vraiment intéressante à adopter pour le développement d’applications informatiques complexes qui exigent une grande qualité.

Le cadre de travail qui découle de la méthode Scrum est fondé sur la croyance que le développement de logiciel est une activité par nature anti-rigide et que l’ensemble des actions entrepris pour réaliser un projet complexe ne peut -être ni anticipées ni planifiées.

Le développement de logiciel sous la méthode Scrum se fait de manière incrémentale. Les demandes, évolutions et corrections sont livrées fréquemment au fil du temps.

Les livraisons peuvent se faire toutes les semaines, tous les 15 jours ou plus, pouvant aller jusqu’à 4 semaines.

Des développements itératifs

La méthode Scrum réduit au strict minimum la documentation afin de gagner en productivité. L’intention est de produire seulement le volume de documentation nécessaire :

  • Un historique des décisions prises sur le projet,
  • L’essentiel en écrit pour permettre d’intervenir sur le logiciel en phase de maintenance etc.

De cette façon, les équipes gagnent en efficacité.

Dans chaque sprint de développement, l’équipe rajoute les nouvelles demandes et les modifications demandées par le product owner (représentant du client). Les évolutions sont les bienvenues dans la méthode Scrum comparées à un cycle en V, elles s’intègrent facilement aux développements du projet.

Quelle est la composition d’une équipe Scrum ?

Pour qu’une équipe fonctionnant avec la méthode Scrum soit efficace, voici la répartition des rôles recommandée.

Méthodes Scrum : 3 rôles et responsabilités – Source : oeildecoach.com

L’équipe projet est donc composée de différents rôles bien définis :

  • Le product owner (PO) ou propriétaire du produit : le PO a la responsabilité de créer, de prioriser et de mettre à jour le backlog du produit. Il définit les priorités et prend les décisions d’orientation du projet. Nous avons également rédigé un article qui détaille davantage les missions du product owner.
  • L’équipe de développeurs et de tests : Les développeurs sont force de proposition technique et conseillent le product owner. Leur tâche est de transformer les idées et demandes en fonctionnalités.
  • Le coach agile ou Scrum Master : c’est un facilitateur dédié à l’ensemble de l’équipe projet. Sa mission est de coacher l’équipe pour adapter au maximum la méthode Scrum au projet ou tout autre méthode agile. Il aide l’équipe à être performante en atteignant une vélocité maximale. Découvrez un autre de nos articles très intéressant sur l’utilité du Scrum Master dans un projet fonctionnant avec la méthode Scrum.

Comment travaille l’équipe Scrum ?

Une équipe travaillant sous la méthode Scrum est autonome, auto-organisée et pluridisciplinaire. Elle choisit la meilleure façon d’accomplir son travail et n’a pas besoin d’être dirigée par des personnes externes. L’équipe contient toutes les compétences nécessaires à la bonne réalisation du projet. L’équipe est en effet capable de traiter seule les aspects fonctionnels et techniques du projet.

Pour fonctionner en méthode Scrum il faut également que les membres de l’équipe se retrouvent régulièrement au sein de réunions ayant chacune une utilité bien précise dans l’avancement du projet.

Quelles sont les réunions de la méthode Scrum ?

Les 4 types de réunion nécessaires au fonctionnement de la méthode Scrum :

  • Les réunions quotidiennes : aussi appelées mêlées quotidiennes ou stand up meeting. Chaque jour l’ensemble de l’équipe se réunit debout pendant 15 min maximum pour répondre à tour de rôle aux questions suivantes :

Qu’est-ce que j’ai fait hier ?

Qu’ai-je prévu de faire aujourd’hui ?

Quels sont les obstacles qui m’empêchent d’atteindre le but du sprint ?

  • Les réunions de planification d’un sprint : A l’issue de cette réunion, l’équipe projet aura décidé quels éléments seront développés dans le prochain sprint et de quelle manière ils vont s’organiser pour y parvenir.

La réunion se déroule en deux parties :

Première partie : les développeurs prévoient ce qui sera développé dans le prochain sprint,

Deuxième partie: l’ensemble de l’équipe projet ainsi que le propriétaire du produit se concentrent sur la manière dont l’équipe pourra atteindre le but du sprint. Pour ce faire, les tâches sont découpées à une durée de travail pouvant aller jusqu’à une journée maximum.

  • Les réunions de revue de sprint : la revue de sprint a lieu à la fin de chaque sprint de développement. Lors de cette réunion, chaque développeur présente ce qu’il a réalisé durant le sprint. Les nouvelles fonctionnalités développés sont présentées. L’ensemble de l’équipe projet est présente à cette réunion.
  • Les réunions de rétrospective du sprint : la retrospective de sprint se tient à la fin de chaque sprint. L’ensemble de l’équipe fait le point sur ce qui a bien fonctionné durant le sprint et sur ce qui a moins bien fonctionné. Chaque personne est invitée à s’exprimer en son nom puis un vote de confiance est organisé pour décider ensemble des améliorations à intégrer au prochain sprint de développement.

Comment évaluer une équipe Scrum ?

Les indicateurs que vous pouvez suivre pour évaluer la performance de votre équipe.

La vélocité

Dans le développement de produit complexe, la vélocité représente la capacité à produire rapidement en transformant une idée en fonctionnalité.

La vélocité représente le nombre de points d’efforts finalisés à l’issue d’un sprint terminé.

Le calcul de la vélocité de développement à chaque fin de sprint détermine et évalue l’effort qu’est capable de fournir l’équipe de développeurs pour réaliser les tâches planifiées dans un sprint.

La vélocité est un bon indicateur de la capacité de traitement des demandes par l’équipe de développement.

Connaître la vélocité de son équipe permet, au product owner notamment, de mieux planifier les nouvelles demandes.

Le diagramme Burndown par effort

Ce digramme permet de mesurer l’effort mis à exécution par l’équipe dans le développement des stories.

Cet indicateur indique le nombre d’heures restantes pour réaliser la story par rapport aux nombre d’heures prévues pour la faire. La courbe résultante permet de visualiser s’il reste suffisamment d’heures pour finaliser le sprint. Cela permet au product owner d’anticiper les retards et de trouver des solutions pour y remédier.

Visitez le Blog - tech, méthodes et dernières actus.