Responsables du développement et Scrum Masters

Entre eux, c'est une lutte à mort ! (C'est pour rire. En réalité, ces deux rôles cohabitent plutôt bien.)

Dan Radigan Dan Radigan
Parcourir les rubriques

Les équipes Agile sont, d'un point de vue structurel, différentes de leurs homologues qui travaillent en cascade. Les équipes en cascade reproduisent la structure de l'organisation. Leur planification va souvent « de haut en bas », ce qui signifie que c'est la direction qui impose le rythme et le calendrier. Dans le développement Agile, l'équipe s'organise de façon autonome. Elle définit son propre calendrier en fonction des priorités du Product Owner et des capacités disponibles au sein de l'équipe.

Les Scrum Masters et les responsables du développement comblent le fossé organisationnel entre la direction générale et les différentes équipes de développement. Ils ont pour mission d'optimiser le travail des équipes et de leurs membres afin de livrer le logiciel de la meilleure qualité possible, aligné avec les objectifs de l'entreprise. Le Scrum Master et le responsable du développement protègent également les équipes des sollicitations externes, telles que les nouvelles fonctionnalités soudaines, les anti-schémas en cascade, les déchets interfonctionnels et les projets collatéraux qui éloignent l'équipe de ses véritables objectifs.

Le Scrum Master et le responsable du développement partagent généralement leur temps entre plusieurs équipes Agile. Voyons comment ils travaillent avec chaque équipe dans le cadre de portefeuilles Agile plus larges.

Qu'est-ce qu'un responsable du développement ?

Les responsables du développement sont des participants clés de l'organisation Agile. Leur rôle est primordial. Ils sont responsables de la qualité du produit, depuis l'architecture du code jusqu'à la qualité pour l'utilisateur final. Ils s'impliquent dans les revues de code afin de s'assurer que le code fourni par les membres de l'équipe est en adéquation avec les objectifs du programme, à court comme à long terme. Et comme ils sont très proches de l'équipe, ils ont généralement une certaine influence sur les choix technologiques du programme. Cette proximité par rapport au processus et au produit permet aux responsables du développement de communiquer le contexte en interne, à l'attention de l'équipe et, plus globalement, de l'organisation.

Les responsables du développement performants sont des « bâtisseurs d'équipe ». Et cela commence par le recrutement. Les responsables du développement pilotent le processus de recrutement et sont bien placés pour le faire. En effet :

  • le recrutement est un processus chronophage et une distraction pour l'équipe ;
  • la recherche de candidats empêche de se concentrer sur le développement de produits d'excellence ;
  • un responsable du développement peut atténuer certains effets de l'intégration à l'arrivée de chaque nouvelle personne.

Pour dire les choses simplement, lorsque le responsable du développement assume les tâches liées au recrutement, l'équipe peut se concentrer pleinement sur le produit.

Le responsable du développement joue également le rôle de partenaire et de mentor, car il maîtrise les fondamentaux de la gestion : entretiens individuels, feedback et coaching. Preuve de leur réussite, les responsables du développement accompagnent les ingénieurs afin de favoriser l'excellence (idées, code, tests et culture). Parfois, l'équipe se débat avec certaines décisions qui vont de la conception architecturale à la stratégie de création de branches. Experts en la matière, les responsables du développement savent s'il faut intervenir ou laisser l'équipe se débrouiller pour favoriser l'apprentissage.

Parmi les grandes différences entre les équipes Agile et en cascade, le responsable du développement est un partenaire tout au long du processus d'estimation. Dans une équipe en cascade, une conversation telle que celle-ci n'est pas impensable :

  • Responsable : « Dis donc, il va vous falloir combien de temps pour livrer cette fonctionnalité ? »
  • Ingénieur : « Six semaines. On doit faire A, puis B et C avant de pouvoir la commercialiser. »
  • Responsable : « D'accord. Ça paraît logique. Mais il faut que vous trouviez le moyen de tout terminer en quatre semaines. »

Un responsable du développement Agile sait, lui, comment recruter les bonnes personnes et leur fait confiance. L'un des principes fondamentaux d'Agile est que les personnes les plus proches de la tâche sont les plus à même d'en déterminer le périmètre et de la livrer. L'équipe définit le calendrier. Le responsable du développement apporte une valeur ajoutée unique en posant des questions et en examinant les suppositions faites lors de l'exercice d'estimation. Plutôt que d'imposer quoi que ce soit, il collabore au processus.

Vous ne l'entendrez pas dire : « Trouve un moyen de le faire en quatre semaines » dans une organisation Agile. (Si vous l'entendez, c'est que, comment dire, ça sent un peu le roussi.)

Qu'est-ce qu'un Scrum Master ?

Le Scrum Master est un leader de projet au sein d'une équipe Agile. Il a pour priorité d'optimiser les performances et de faire le tampon entre le Product Owner et les équipes pour garantir la réussite et l'homogénéité des sprints. Il est également responsable de la coordination entre les équipes et, à ce titre, doit permettre aux intervenants clés de se concentrer sur le développement produit.

L'objectif du Scrum Master est de s'assurer que tout le monde est efficace et sur la même longueur d'onde. En conséquence, il coordonne la majeure partie des entrées et sorties requises dans le cadre d'un programme Agile. Il pilote les cérémonies Agile pour le lancement d'un sprint, les stand-ups quotidiens, la revue de sprint, la rétrospective de sprint, et travaille avec l'équipe et les responsables du développement afin d'estimer les éléments plus globaux, tels que les epics et les différentes user stories du backlog. Le Scrum Master n'est pas forcément aussi technique que le reste de l'équipe. Le responsable du développement peut donc intervenir pour apporter des éclaircissements précieux entre le Scrum Master et l'équipe en cas de lacune dans les connaissances. À mesure que l'équipe gagne en maturité dans son application d'Agile, le Scrum Master se concentre moins sur l'estimation et davantage sur l'optimisation de la vélocité de la livraison.

Le Scrum Master joue également le rôle de coach Agile pour l'organisation dans sa globalité. Il aide l'équipe à adopter et à s'approprier les pratiques Agile tout au long du cycle de vie du produit : estimation des story points, planification des sprints et livraison continue. Dans les tâches du Scrum Master, l'aspect coaching est crucial. En tant qu'expert Agile, il sait pourquoi ce programme convient parfaitement au projet et à l'entreprise. Il peut intervenir en tant que défenseur d'Agile lorsqu'une entreprise rencontre certaines difficultés pour l'adopter.

Le Scrum Master et le responsable du développement sont des partenaires dans les portefeuilles agiles

La plupart des équipes en cascade sont centrées sur la direction. Elles se tournent vers elle pour définir les priorités, assurer le suivi de l'avancement et évaluer les performances. À l'inverse, les équipes Agile s'organisent de façon autonome. Elles possèdent leur propre feuille de route et leur calendrier de livraisons. Pour que cela fonctionne dans les grandes organisations, le Scrum Master et le responsable du développement travaillent ensemble afin d'instaurer une culture Agile à tous les niveaux. Ils servent de tampon entre les équipes et la direction générale. Et comme tous deux partagent leur temps entre différentes équipes Agile, ils sont des membres clés du portefeuille Agile.

Demandez au Scrum Master de se focaliser sur l'adoption et l'implémentation d'Agile par les équipes, et au responsable du développement de se concentrer sur le recrutement des profils adéquats, le mentorat des membres de l'équipe et l'instauration d'une culture de développement efficace dans chaque équipe. Ensemble, ces deux rôles optimiseront le fonctionnement des équipes Agile.

suivant
Git