Scrum

Bref coup de projecteur sur l'utilisation du framework Scrum pour le développement logiciel

Scrum

Scrum is one of the most popular frameworks for implementing agile. So popular, in fact, that many people think scrum and agile are the same thing. (They're not.) Many frameworks can be used to implement agile, such as kanban for example, but scrum has a unique flavor because of the commitment to short iterations of work.

Scrum articles

[CONTINUED]

Mais qu'est-ce qui rend Scrum si spécial ?

With scrum, the product is built in a series of fixed-length iterations called sprints that give teams a framework for shipping software on a regular cadence. Milestones–i.e., the end of a sprint–come frequently, bringing with them a feeling of tangible progress with each cycle that focuses and energizes everyone. ("Continuous inspiration" for the win!) Short iterations also reinforce the importance of good estimation and fast feedback from tests–both recurring struggles in waterfall projects.

Scrum calls for four ceremonies that bring structure to each sprint:

  • Sprint planning: A team planning meeting that determines what to complete in the coming sprint.
  • Daily stand-up: Also known as a daily scrum, a 15-minute mini-meeting for the software team to sync.
  • Sprint demo: A sharing meeting where the team shows what they've shipped in that sprint.
  • Sprint retrospective: A review of what did and didn't go well with actions to make the next sprint better.

Pendant un sprint, les artefacts visuels tels que les tableaux de tâches et les graphiques d'avancement, visibles à la fois par l'équipe et les spectateurs, constituent des leviers de motivation puissants. Ils favorisent l'émergence d'un esprit de style « Voilà ce que nous sommes en train d'accomplir !». De même, la possibilité de mettre en avant le travail réalisé lors de la démo de sprint est aussi motivante. Le feedback régulier et incrémentiel que l'équipe reçoit de la part des parties prenantes lors de chaque démo crée un outil efficace pour le développement de produits.

Scrum Burndown chart | Atlassian agile coach

Le Scrum, s'il est bien mené, c'est-à-dire pas comme « une gestion en cascade avec des stand-ups », peut être un excellent catalyseur qui améliore la productivité et le moral de l'équipe, mais également le processus de développement produit dans son ensemble. 

Trois rôles essentiels pour la réussite de Scrum

A scrum team has a slightly different composition than a traditional waterfall project, with three specific roles: product owner, scrum master, and the development team. And because scrum teams are cross-functional, "the development team" includes testers, designers, and ops engineers in addition to developers. 

Le responsable produit

Les responsables produit sont les champions de leur produit. Leur priorité est de comprendre les exigences du secteur et du marché, puis de hiérarchiser le travail de l'équipe d'ingénierie en conséquence. Un responsable produit efficace :

  • Crée et gère le backlog de produit
  • Travaille en étroite collaboration avec l'entreprise et l'équipe pour s'assurer que tous savent en quoi consistent les tâches du backlog de produit
  • Fournit à l'équipe des orientations claires sur les prochaines fonctionnalités à livrer
  • Décide du moment où le produit doit être livré, avec une prédisposition pour des livraisons plus fréquentes 

Gardez à l'esprit qu'un responsable produit n'est pas un chef de projet. Les responsables produit ne gèrent pas le statut du programme. Leur priorité est de s'assurer que l'équipe de développement délivre un maximum de valeur ajoutée à l'entreprise. Il est également important que le responsable produit soit une seule personne. Aucune équipe de développement ne se réjouira de recevoir des directives différentes de plusieurs responsables produit. 

Le Scrum Master

Les Scrum Masters sont les champions du Scrum au sein de leur équipe. Ils coachent l'équipe, le responsable produit et l'entreprise autour du processus Scrum et cherchent les façons d'affiner leur pratique en la matière. Un Scrum Master efficace comprend, de façon approfondie, quel est le travail réalisé par l'équipe et peut aider celle-ci à optimiser son flux de livraison. En tant qu'animateur en chef, ils planifie les ressources nécessaires (humaines et logistiques) pour la planification du sprint, le stand-up, la revue de sprint et la rétrospective de sprint.

Le Scrum Master veille également à trouver une solution aux obstacles et aux distractions que rencontre l'équipe de développement, en isolant celle-ci, dans la mesure du possible, des perturbations extérieures.

La mission du Scrum Master consiste, notamment, à lutter contre un anti-schéma fréquent dans les équipes qui débutent avec Scrum : la tendance à changer le cahier des charges une fois que le travail a commencé. Le responsable produit demandera peut-être : « Peut-on intégrer cette petite tâche super importante dans ce sprint ? ». Mais le maintien d'un cahier des charges hermétique favorise la qualité de l'estimation et de la planification du produit, sans mentionner le fait que cela élimine une source de perturbation pour l'équipe de développement.

Scrum masters are commonly mistaken for project managers, when in fact, project managers don't really have a place in the scrum methodology. A scrum team controls its own destiny and self-organizes around their work. Agile teams use pull models where the team pulls a certain amount of work off the backlog and commits to completing it that sprint, which is very effective in maintaining quality and ensuring optimum performance of the team over the long-term. Neither scrum masters nor project managers nor product owners push work to the team (which, by contrast, tends to erode both quality and morale).

L'équipe Scrum

Strong scrum teams approach their project with a strong "we" attitude.

Scrum teams are the champions for sustainable development practices. The most effective scrum teams are tight-knit, co-located, and usually 5 to 7 members. Team members have differing skill sets, and cross-train each other so no one person becomes a bottleneck in the delivery of work. All members of the team help one another to ensure a successful sprint completion.

Comme mentionné plus haut, l'équipe Scrum garde le contrôle sur le plan de chaque sprint. Elle prévoit la quantité de travail qu'elle pense pouvoir terminer lors de l'itération, en s'appuyant sur l'historique de sa vélocité. En gardant une longueur d'itération fixe, l'équipe de développement bénéficie d'un feedback important concernant son processus d'estimation et de livraison. Avec le temps, ses prévisions deviennent donc de plus en plus précises. 

But wait: there's more

Ok: so now you've been briefed. But understanding the philosophy of scrum and who is on a scrum team is only half of the equation. Keep reading to learn how scrum team members work together using common agile ceremonies as well as how the team in an agile program delivers work back to the business. 

Dan Radigan
Dan Radigan

Agile a eu un impact considérable sur moi, à la fois personnellement et professionnellement. J'ai appris que les meilleures expériences étaient Agile, dans le code comme dans la vie. Vous me trouverez souvent au carrefour entre la technologie, la photographie et la moto. Suivez-moi sur Twitter ! @danradigan

Up Next
Ceremonies