Scrum la plus populaire des méthodes Agile

Technologie et développement

La méthode SCRUM est une méthode Agile de gestion de projet qui s'adapte aux projets Web en améliorant la productivité des équipes en permettant aux développeurs de coller aux besoins du marché et en leur évitant de développer des éléments inutiles.

Elle permet aussi une optimisation du produit au travers de feedbacks réguliers permettant de réajuster, si besoin, la gestion des priorités, d’identifier et de corriger rapidement d’éventuels bugs.
En parallèle, elle donne une vue d’ensemble du projet à chacune des parties.
L’idée de la méthode Scrum est de travailler plus intelligemment et plus efficacement et forcément de réaliser une plus grande charge de travail en moins de temps.
Scrum mesure les tâches qui sont accomplies et celles qui restent à accomplir. Elle fonctionne sur l’adaptabilité et les spécificités du projet, la visibilité des résultats et la vérification des écarts par rapport à l’objectif initial.

 

L’histoire de la méthode Scrum

Pour bien comprendre la méthode Srum il faut connaitre son histoire.

Elle a été créée par Jeff Sutherland dans les années 90.
Lassé de voir que les projets subissaient tout le temps les mêmes problèmes de retard et de dépassement de budget il a décidé de se pencher sur le problème de la gestion de projet et de trouver une solution plus adaptée et plus suivie.
Il découvre alors la méthode Agile de gestion de projet créée à partir des méthodes de développement utilisées par des entreprises japonaises comme Toyota ou Honda, véritables innovateurs en la matière dans les années 70 - 80.
Il décide de suivre ces méthodes et de développer sa propre procédure, la méthode Scrum. Véritable succès c'est aujourd’hui la populaire des méthodes Agile.

Scrum et Agile quelle différence ?

Attention, on ne peut pas vraiment différencier Scrum et Agile car en soit on parle bien de la même chose ! Ce sont deux notions bien distinctes dans le sens où la méthode Scrum est une des nombreuses méthodes Agile mais elles font partie de la même famille.
Les méthodes Agile sont un ensemble de méthodes et de pratiques basées sur les valeurs et les principes du manifeste Agile.

Les méthodes Agile reposent sur 3 principes :

  • La collaboration
  • L’autonomie
  • Des équipes pluri-disciplinaires.

La méthode Scrum est donc une procédure qui est utilisée pour implémenter la méthode Agile dans le cadre de la gestion de projet.

Pour mieux comprendre on pourrait utiliser une métaphore et comparer les méthodes Agile et Scrum à un sport.

Vous souhaitez faire de la danse par exemple.
La danse est une alliance de méthodes de base et de pratiques avec ses propres valeurs et ses principes (comme la méthode Agile).
La danse classique elle a des procédures strictes et des règles particulières mais elle va vous permettre de pratiquer la danse (méthode Scrum).
Pareil pour les autres danses qui auront chacune leurs codes et leur règles mais qui au final auront toutes le même but, vous faire danser.

 

Le vocabulaire de la méthode Scrum

Pour bien comprendre la méthode Scrum il faut aussi bien comprendre son vocabulaire si particulier au risque d’être perdu au bout de 2mn de réunion.

Le Product Owner

Il est le lien avec le client. Il va servir de passerelle entre sa demande et ses équipes.
C’est un expert qui est capable de comprendre la finalité du produit et de la retranscrire en termes techniques. Il évalue les priorités, il valide ce qui a déjà été fait, il va se mettre dans la position du client et s’assurer que tout est en adéquation avant de faire un retour ou la livraison du produit final.

Le Scrum Master

C’est le chef ! Il va piloter le projet dans les bonnes pratiques du Scrum, coordonner les équipes, gérer les problèmes afin que ses équipes soient plus productives.
C’est le chef d’orchestre de la gestion du projet.

L’équipe

L’équipe est constituée des développeurs. La méthode Scrum évite d’imposer une hiérarchie dans l’équipe partant du principe que le savoir-faire et les compétences de chacun sont différents.

En règle générale l’équipe est composée de 5 à 10 personnes maximum mais sur certains gros projets les équipes peuvent être beaucoup plus importantes.

User Story

C’est le nom donné aux fonctionnalités qui vont être développées ou aux tâches à réaliser.

Le Product Backlog

Une fois que le product owner a cerné la demande et les besoins du client il va répertorier toutes les fonctionnalités nécessaires à la réalisation du produit dans le product backlog.
Elles ne seront pas nécessairement toutes inscrites dès le début du projet mais vont évoluer constamment en fonction des besoins du client.

C’est une sorte de cahier des charges du projet, les exigences du client y sont répertoriées et hiérarchisées.

Le sprint

Les sprints sont des itérations de quelques semaines. Durant ces quelques semaines on établi les fonctionnalités et les tâches qui devront être effectuées.

En divisant le temps ainsi on peut concentrer l’attention des équipes sur une seule chose ou une seule série de tâches. On avance pas à pas vers un objectif court.
Cela évite une vision globale d’un gros projet sur un long terme qui peut être décourageant brouillon et effrayant.

Si on vous donne 6 mois pour faire le tour de l’Europe en voiture il sera plus facile pour vous de découper ce voyage en étapes, semaine après semaine, avec un nombre de kms à respecter par jour que de partir à l’aventure avec votre GPS en ne sachant pas où vous serez dans 3 semaines et avec un objectif assez effrayant que vous n’êtes pas sûr de pouvoir réussir à temps.
Les sprints vont vous permettre d’anticiper ce que vous avez à faire sur une durée donnée et de fixer un objectif court et clair.

Le sprint planning meeting

Forcément pour préparer un sprint il faut faire une réunion, c’est ce qu’on appelle le sprint planning meeting. Le product owner et l’équipe vont parler, débattre et organiser les tâches qui vont être inscrites dans le sprint.

Le product owner va exposer des user stories qui seront analysées par l’équipe technique, ensuite seront déterminer les story points afin d’en évaluer le niveau d’importance et terme de temps et de difficulté. Ces story points serviront à tenir à jour le burndown graph.

Ces tâches seront ensuite inscrites dans le sprint backlog.

Le sprint planning meeting permet également de mettre en avant et de voir comment traiter les exigences les plus prioritaires pour le client.

Le Daily Scrum

Le daily scrum est une réunion hebdomadaire de moins de 15 minutes qui se pratique en général debout pour ne pas perdre de temps et qui permet de faire le point, de remotiver et stimuler les équipes et de s’assurer que les objectifs du sprint seront tenus. En français Scrum veut dire mêlée, terme tiré du rugby. Cela vous donne une image visuelle pour mieux comprendre l'idée du daily scrum.

Le Daily Scrum permet de suivre tous les jours 3 choses essentielles 

  • Ce qui a été fait la veille
  • Est-ce que des problèmes sont apparus si oui lesquels ?
  • Qu’est ce qui est prévu aujourd’hui ?

En réalisant cet exercice quotidiennement chaque membre de l’équipe peut savoir ce que font et où en sont les autres. Il peut ainsi adapter et coordonner son travail et aider ou se faire aider en cas de difficulté.

Chaque jour, après cette réunion, le scrum master met à jour un graphique appelé burndown graph. Cela permet de montrer à toute l’équipe ce qui a été fait, ce qu’il reste à faire et de leur donner une idée du rythme de travail. Il permet également d’anticiper des retards éventuels et un réajustement du sprint avant qu’il ne soit trop tard ou au contraire un ajout de story si le travail avance plus vite que prévu.

Sprint Review

A chaque fin de semaine le sprint review permet de tester les fonctionnalités qui ont été développées avec le product owner.

L’équipe présente et fait une démonstration de ce qui a été fait, et le client valide ou non si cela correspond à sa demande initiale et répond à ses attentes !

 

La méthode Scrum en action

Maintenant que vous avez compris la relation entre méthode Agile et Scrum et que vous maitrisez le langage technique voyons comment se déroule un projet avec la méthode Scrum.

1 - On présente

Comme nous l’avons dit plus haut le “product owner” est le lien avec le client c’est donc lui qui définit les fonctionnalités du produit final.

Il va créer le backlog du produit qui contiendra la liste de toutes les spécificités du projet, il va prioriser les tâches.
Le backlog étant en perpétuel mouvement tout au long du projet le product owner s’assurera de le mettre à jour à chaque nouvelle demande ou modification du client.

Lors du sprint planning meeting il va présenter les stories, demander des évaluations sous forme de story point à ses équipes et mettre en place le sprint.

2 - On Sprint !

C’est parti tout est prêt les équipes commencent à travailler.

A partir du backlog, on établit la liste des tâches qui vont être traitées lors du premier sprint.
Le temps a été préalablement établit en fonction du projet, les tâches sont définies et attribuées chacun sait ce qu’il a à faire, progresse sur ses tâches et rend compte de son avancement.

3 - On Scrum

Tous les jours on organise une « mêlée » afin de voir qui en est où, qui est bloqué, on fait le bilan de la veille et on anticipe la journée qui arrive.

Les réunions ne durent pas plus de 15 minutes et se concentrent sur trois axes : qu’est ce qui a été fait hier ? Qu’est ce qui va être fait aujourd’hui ? Est-ce qu’il y a des points bloquant qui nécessite de l’aide ?

4 - On suit

Le scrum master met à jour quotidiennement le burdown graph afin de suivre et de montrer à l’équipe l’avancement du sprint

5 - On fait le bilan

Chaque sprint se termine par une rétrospective.
Toute l’équipe se retrouve pour partager les tâches réalisées, leur retours d’expérience et discuter des améliorations possibles pour le prochain sprint.

 

Fondements de la méthode Scrum : le management visuel des tâches

La méthode scrum se base sur la visibilité en continue des avancements, des tâches en cours de chacun et de l’objectif collectif à atteindre. Ils doivent donc être accessibles par tous à tout moment.

Le tableau Scrum a donc un rôle important voire essentiel.

Organisation du backlog, liste des tâches du sprint à effectuer, avancement général, retards, avance, dead line, tout sera visible et à jour constamment.
Pour organiser concrètement un sprint c’est très simple, un tableau blanc et des post-it de couleurs suffisent.

On divise le tableau en 3 colonnes :

  • Les tâches à faire
  • Les tâches en cours
  • Les tâches terminées

Au début du sprint on place un post it de couleur dans la colonne « à faire » pour chacune des stories qui aura été validée lors du sprint planning meeting. Puis tout naturellement à chaque fois qu’une story a été réalisée le post it sera déplacé sur les colonnes « en cours » et « terminé ».

Comme chaque story a été évaluée en termes de temps on peut suivre tout au long du sprint si le délai sera respecté.

Mais pour un travail plus collaboratif ou si vos équipes ne sont pas forcément toutes réunies à un même endroit (free-lance ou filiales à l’étranger) des logiciels spécialisés vous permettent une gestion en ligne.
Le logiciel Preview permet par le biais de tickets de passer une tâche du backlog à la colonne « à faire » puis «en progrès » « en revue » qui correspond à l’état de test de la fonctionnalité qui passera à « fermé » quand elle aura été testée et validée.

Chaque membre de l’équipe agit de façon autonome en fonction de l’avancement de son travail et tout le monde peut accéder, même à distance, au tableau pour suivre l’évolution. Si un point est bloquant on peut le signaler et demander l’intervention de quelqu’un ou signaler que l’on attend une réponse pour continuer d’avancer.
Ce mode plus interactif évite de repasser par le scrum master à chaque fois et de gérer individuellement son travail, de se sentir autonome et donc plus impliqué.
Chaque membre peut également créer des checklists, commenter les tickets et envoyer des pièces jointes ce qui évite l’envoie de mail constamment et permet de retrouver plus facilement toute trace d’échange sur une tâche sans avoir à sortir du logiciel.
Le scrum master peut suivre également plus facilement l’avancement de chacun en étant averti par notification de chaque déplacement ou commentaire sur un ticket.

Les daily scrum sont ainsi plus fluides car chacun a pu suivre en amont via le logiciel les avancements ou les problèmes de chacun.

Une gestion de projet en live !

 

Fondements de la méthode Scrum : les itérations et les amélorations

L’autre fondement de la méthode Scrum est l’idée d’itération et d’amélioration. Les sprints permettent de livrer le produit étape par étape. On peut ainsi présenter régulièrement au client des étapes finalisées.
Cela permet des retours d’expérience utilisateur réguliers en cours de projet. On peut ainsi réajuster ou peaufiner le projet si le client change d’avis ou pense à quelque chose d’autre en cours de route.

On peut s’adapter ! On évite ainsi de pleurer en regardant tout le travail effectué pour rien et le client n’est pas facturé pour quelque chose qu’il n’utilisera jamais.

Une fois que le client naviguera sur son site au fur et à mesure des fonctionnalités que vous ajouterez il pourra toujours penser à autre chose ou changer d’avis sur un futur développement à faire ou annuler une idée.
Si il découvrait le site une fois complètement fini il reviendrait en bloc sur tout un tas de choses que vous avez déjà mise en place.

C’est énervant, c’est déprimant c’est découragent et surtout c’est dévalorisant. Avec la méthode Scrum ce problème est évité ! Au fur et à mesure du développement le client regarde, vérifie, navigue et réadapte sa demande avant qu’il ne soit trop tard.

Ce système d’itération permet également d’améliorer sa technique de travail d’un sprint à l’autre. En effet à chaque rétrospectives sont soulevés les problèmes qui ont pu ralentir un membre de l’équipe. Mauvaise répartition des tâches, problème technique ou de communication. Chaque point négatif rencontré par un membre va être étudié et une solution va être mise en place afin qu’au prochain sprint ces problèmes n’apparaissent plus.

Le sprint suivant se passera mieux et ainsi de suite pour chaque nouveau cycle, l’équipe travaillera dans de meilleures conditions et donc plus rapidement.

Voilà aussi l’avantage des itérations en interne. Faire un point régulier sur ce qui ne va pas, trouver une solution, changer, évoluer… S’améliorer.

 

Dans l’univers du Web, complexe et collectif, il était indispensable que des méthodes Agile voient le jour. La méthode Scrum n’est bien évidement pas la seule mais elle est la plus populaire. Son mode de fonctionnement est plutôt simple à comprendre même si en pratique elle n’est pas si facile. Elle nécessite de la rigueur individuelle, un engagement des équipes, un chef d’orchestre qui maitrise bien le sujet et un suivi au jour le jour.  

Apprenez et suivez la méthodologie au pied de la lettre et vous verrez qu’en fin de compte vous aurez gagné beaucoup de temps et d’énergie dans la gestion de votre projet, pour votre bien et celui de votre client !

 

FIDESIO, vous accompagne dans la création de site internet: étude, UX, conception, design, développement, SEO.
Notre agence web est capable de répondre à tous vos besoins et d'élaborer une véritable stratégie digitale.

N'hésitez pas à nous contacter.