Le processus Scrum en petite équipe
L'équilibre entre les tâches planifiées et les imprévus
Adapter la méthodologie agile Scrum dans le contexte d'une petite agence de développement web représente un certain défi. Selon nous, Scrum est conçu pour fonctionner de manière optimale dans le contexte d'une équipe stable qui collabore sur un seul projet à long terme. Ce n'est pas notre réalité. Nous avons de nombreux nouveaux projets web pour des clients actuels et nouveaux, ainsi qu'un travail de support continu et émergent pour tous nos clients. En expérimentant et en apprenant de l'application de méthodologies et des principes agiles, nous avons appris à bénéficier de l'efficacité et de la qualité accrues offertes par ces pratiques, et à faire profiter de ces bénéfices aux clients que nous servons.
Après plus d'une décennie de pratique, nous avons affiné notre approche de la gestion de multiples projets simultanés avec une petite équipe agile hautement efficace. Inspiré par Scrum, notre processus a évolué vers une méthodologie flexible et efficace qui combine des éléments de Kanban et de Scrum. Le résultat est une approche qui atteint l’équilibre entre les tâches planifiées et une réponse immédiate aux besoins spontanés.
Dans notre petite équipe, le processus s'inspire de Scrum tout en tenant compte de la réalité des changements fréquents et des tâches émergentes. Nous maintenons les éléments de base de Scrum tels que la planification bihebdomadaire du sprint, les rétrospectives du sprint et les réunions quotidiennes. Ces “cérémonies” nous aident à nous synchroniser, à réfléchir collectivement et à continuellement nous perfectionner. Bien que le flux de travail global ressemble à un processus Kanban, nous gardons la pratique de planification continue et la prise en charge de tâches sprint par sprint, avec l'intention délibérée de garder un peu de “lousse” (slack).
Le “Slack”, à ne pas confondre avec la plateforme de communication, fait référence à la capacité que nous laissons intentionnellement disponible à chaque sprint pour répondre au travail inattendu. Dans le processus Scrum, nous mesurons le travail en « points », qui représentent l'effort requis pour achever une tâche. Chaque équipe a la capacité de réaliser une certaine quantité de points, une certaine quantité de travail, dans une période de temps déterminée (un sprint). Par exemple, si la capacité totale de notre équipe pour un sprint est de 120 points, nous ne nous engageons que sur 90 ou 100 points. Cette marge de manœuvre, le “Slack”, nous permet de traiter les inévitables demandes d'assistance de la part de nos clients, souvent urgentes, qui surviennent spontanément. Il ne s'agit pas simplement d'une capacité de réserve ; cela nous permet de gérer toutes les demandes spontanées qui découlent des besoins immédiats de nos clients. En maintenant cette flexibilité, nous évitons un piège dans lequel tombent fréquemment les équipes agiles : l'engagement excessif. Ce n'est jamais un problème de prévoir plus de temps ; le temps n'est jamais perdu.
Alors que notre approche du développement web tend vers la méthodologie Kanban, les composantes itératives du Scrum nous permettent de communiquer les progrès en temps réel, d’estimer les efforts et d'établir les budgets, et de soutenir une communication efficace et régulière avec toutes les parties prenantes.
Cette approche permet à notre équipe de répondre aux demandes des clients avec réactivité. Nous nous engageons à respecter des charges de travail réalistes, tout en sachant qu'une part significative de notre travail découle de besoins non planifiés. Cela nous permet de respecter nos obligations dans le cadre des projets en cours et, en même temps, de rester réactifs et disponibles pour aider les clients à chaque fois que des besoins inattendus apparaissent.
En pratique, notre processus Scrum en petite équipe signifie :
- Engagement et flexibilité : Nous nous engageons à réaliser des tâches spécifiques à chaque sprint, mais nous laissons toujours une marge de manœuvre pour répondre aux imprévus. Cela garantit que nous pouvons nous adapter sans risquer nos engagements vis-à-vis le travail planifié.
- Utiliser le “Slack” à bon escient : Ce n’est jamais du temps perdu, c'est du temps consacré au travail émergent qui nous permet de rester réactifs sans surcharger l'équipe. Il y a toujours quelque chose à faire.
- Évolution vers Kanban : Au fur et à mesure que notre équipe croît en maturité, notre méthodologie s'apparente de plus en plus à Kanban, avec un flux continu de travail plutôt que des limites de sprint fixes.
- Cérémonies Scrum et amélioration continue : Nous maintenons les cérémonies de base du Scrum telles que les courtes réunions quotidiennes, la planification des sprints et les rétrospectives. Cette structure nous aide à améliorer continuellement nos processus tout en respectant nos engagements.
- Méthodologies d'estimation et mesure de la capacité : Nous estimons et évaluons en permanence le travail à venir. Cela nous aide à prendre des engagements réalistes pour le sprint et à respecter les budgets autorisés pour toute demande de fonctionnalité.
Nous considérons l'équipe comme un système unifié. Au lieu d'affecter des membres individuels de l'équipe à des projets spécifiques, l’équipe entière collabore sur tous les projets. Nous savons quelle quantité de travail notre équipe peut accomplir sur une période déterminée et nous planifions en conséquence. Comme l'ensemble de l'équipe connaît tous les projets, nous pouvons mieux gérer notre capacité globale et maintenir notre flexibilité. Cela accroît notre résilience. Notre expérience montre que cette approche mixte, qui consiste à prendre des engagements fermes tout en étant prêt à réagir à la volée, nous permet de fournir une qualité supérieure et de respecter les délais sans nuire aux relations à long terme que nous établissons avec nos clients.
Ce mélange de structure et de flexibilité nous permet d'obtenir d'excellents résultats sans jamais perdre de vue les besoins immédiats de nos clients. Notre processus Scrum en petite équipe continue d'évoluer et de s'améliorer, mais une chose reste constante : il nous permet de faire notre meilleur travail de manière réactive et responsable, en respectant nos engagements tout en nous adaptant à toute situation.