SCRUM est un ensemble d’événements qui s’orientent selon les principes agiles. Chacun des paragraphes suivants décrit l’un de ces événements et explique son utilité dans le sens du Manifeste Agile.
Daily SCRUM
La réunion Daily SCRUM est une réunion orientée vers la solution et non une simple réunion de statut. L’objectif est de préparer la voie pour atteindre l’objectif du sprint respectif. Pour y parvenir, chaque membre de l’équipe doit aborder brièvement et précisément les points suivants : ses progrès, ses prochaines étapes, ses obstacles à la réalisation des objectifs.
Pour soutenir ce processus, chaque participant s’oriente à l’aide du tableau des tâches. Le Daily SCRUM répond ainsi à plusieurs points du Manifeste Agile. La réunion garantit que les développeurs ne s’enlisent pas dans une chose, mais restent sur une solution simple. Cela se produit par exemple lorsque chacun peut remarquer qu’un membre de l’équipe travaille déjà pour le troisième jour consécutif sur une tâche qui aurait dû être accomplie assez rapidement. Pour cela, il est surtout important d’écouter activement les autres participants ! C’est précisément pour cette raison qu’il est obligatoire d’être en face à face, afin d’empêcher que certains participants ne se remettent à cliquer joyeusement ou ne s’assoupissent à nouveau dans leur chaise de bureau après avoir rempli leur obligation de parole. Et comme nous nous en souvenons, la communication en face à face est de toute façon un principe agile. Il est également important de respecter strictement le temps imparti de 15 minutes et pas une minute de plus (timeboxing). Si des sujets nécessitant une discussion plus approfondie surviennent, ils sont abordés par les personnes concernées à la suite du Daily.
Le Daily SCRUM favorise la transparence au sein de l’équipe de développement, élimine les obstacles et assure l’objectif du sprint. Il est donc d’autant plus important en tant que développeur d’aborder les problèmes et de ne pas essayer de les dissimuler, dans le sens de « cela pourrait donner une mauvaise image de moi ».
Sprint Planning
Le Sprint Planning a pour objectif de planifier le travail des 2 à 4 prochaines semaines (selon la durée du sprint). Le résultat du Sprint Planning est un Sprint Backlog qui contient toutes les tâches à accomplir. Cette liste de tâches a été estimée par l’équipe soit pendant le Sprint Planning, soit le plus souvent avant, lors d’une session appelée Grooming.
Dès l’estimation, il est important de respecter un principe agile important qui n’a été mentionné que dans la dernière partie de la série d’articles : le rythme constant. Si, par exemple, une équipe évalue ses progrès en fonction du nombre de points d’histoire atteints par sprint, les membres de l’équipe peuvent avoir tendance à surestimer les tâches afin de réaliser ensuite plus de points par sprint.
Il en va de même pour le Planning proprement dit, qui doit également se dérouler en face à face, afin que tout le monde soit présent et ne se perde pas soudainement dans ses e-mails ou son téléphone portable. Chaque Planning devrait (pour une équipe rodée) prévoir le même nombre de points d’histoire pour le prochain sprint. Grâce à cette constante, également appelée vélocité, le développement agile devient planifiable. Si une équipe réalise X points d’histoire par semaine, elle en réalisera 4 * X en 4 semaines.
Un autre principe, également abordé dans cette série d’articles, est celui de fournir de la valeur ajoutée au client. Cela signifie que chaque sprint doit également apporter une valeur ajoutée concrète au client. C’est pourquoi chaque sprint se voit attribuer un nom qui décrit l’objectif du sprint, par exemple « Fonctionnalité du panier ». Le nom doit être suffisamment explicite pour pouvoir saisir directement la valeur ajoutée fournie.
Aperçu des événements SCRUM
Sprint Review
La revue de sprint est le point culminant du sprint pour le client. C’est maintenant qu’on lui présente ce qui a été accompli au cours des deux à quatre dernières semaines. Outre les règles habituelles, en particulier le face-à-face, un autre principe agile important entre en jeu ici : la mesure la plus importante du progrès est un logiciel fonctionnel. Le produit logiciel doit fonctionner le jour de la revue, aucune version « oui, mais elle ne peut pas être utilisée pour le moment » n’est livrée ici. Si une tâche contient une erreur, elle n’est donc pas terminée – aucun progrès.
De plus, il est important lors de la planification des revues, tout comme lors du planning, de fournir continuellement de la valeur. Les revues ont lieu à intervalles réguliers, à savoir toujours à la fin du sprint.
Si le client exprime des souhaits ou des critiques pendant la revue, il faut se rappeler d’être ouvert aux changements. Cela ne signifie pas pour autant programmer aveuglément ce que le client dicte, mais plutôt trouver ensemble une solution appropriée.
Rétrospective de sprint
Enfin, la crème de la crème, la rétrospective. L’objectif de la rétrospective est clairement d’inspecter et d’adapter. L’équipe réfléchit au sprint passé et envisage comment elle peut s’améliorer à l’avenir. La manière précise dont une telle rétrospective se déroule en détail dépasserait le cadre de cet article. Cependant, chacun doit comprendre que cette amélioration continue est essentielle si l’on souhaite travailler selon les principes agiles et SCRUM.
Conclusion
Voici donc mon pont entre les principes agiles et SCRUM. Naturellement, tous les autres principes qui n’ont pas encore été pris en compte dans cet article trouvent également leur application dans SCRUM. Mais cela se produit surtout dans le quotidien du projet et nécessite un état d’esprit agile.
Cette conclusion est également la conclusion de toute la série d’articles qui a été développée au cours des derniers mois. Le temps nécessaire pour intérioriser les principes agiles varie d’un cas à l’autre. Certains possèdent d’emblée un état d’esprit agile, ou le sens des valeurs correspondant, d’autres moins. Cependant, chacun peut apprendre à travailler selon ces principes. L’autocontrôle et la réflexion honnête sont la devise. L’amélioration régulière est le mot-clé.