mercredi 4 février 2009

THE PRICK, LE SCRUMMASTER ET LE COACH (V3)

Dans une de ses conférences, Ken Schwaber dit avec humour que le ScrumMaster d'un projet est aussi appelé le "prick". Il hérite de ce surnom peu envieux car il est la personne la moins aimée du projet. Il est mal aimé car il harcèle l'équipe pour maintenir la discipline et la qualité. Il ne lâche pas car il est le garant de l'application du processus et de la qualité du produit.

PUSH / PULL

Pour ne pas tomber dans ce travers dans notre organisation, le ScrumMaster est aussi un développeur de l'équipe. Il devient légitime car il applique ce qu'il demande des autres. Il montre le chemin en étant exemplaire dans son respect des pratiques. Il ne cherche pas à pousser les équipiers vers un niveau mais plutôt à les tirer vers le niveau qu'il s'efforce d'atteindre et de conserver. Concrètement, il est plus facile de faire adhérer à la pratique du test-first lorsqu'on l'applique soi-même et qu'on binôme pour l'enseigner.

MANAGEMENT / LEADERSHIP

Nous rejoignons la nuance qu'il existe entre manager et leader. Un ScrumMaster développeur ne fait pas que proposer ("y a qu'à, faut qu'on") . Il entraine les autres par son exemple en montrant une voie. Attention, il ne dicte pas la voie. L'équipe choisit les pratiques. Mais pour exiger légitimement des autres qu'ils appliquent leurs pratiques encore faut-il commencer par les appliquer soi-même.

SCRUMMASTER / COACH

Du coup, le ScrumMaster développeur ressemble beaucoup au Coach XP. Il est un praticien expérimenté qui enseigne par l'exemple.

UN JOB A TEMPS PLEIN?

Sur nos projets, nous constatons d'ailleurs que les activités du ScrumMaster pour une équipe atteignant 9 développeurs ne constituent pas un plein temps. Au delà de 9 personnes, l'équipe se scinde en sous-équipes donc le problème ne se pose pas. Alors, que peut faire le ScrumMaster le reste du temps? Le ScrumMaster peut-il s'investir sur d'autres équipes? Afin d'être légitimement accepté par l'équipe, nous choisissons de ne pas diviser la disponibilité d'un ScrumMaster entre plusieurs équipes. La deuxième partie de son temps est accordée au développement. ScrumMaster développeur est un job à temps plein.

SCRUMMASTER(S)

Dans notre organisation, nous avons une autre particularité. Nous avons plusieurs ScrumMaster développeurs dans l'équipe. Ils ne se marchent pas sur les pieds. Aux contraire, ils se relayent. Ainsi, il y a toujours un garant de la discipline des pratiques et de la qualité, malgré les congés et les moments de fatigue. Il suffit de passer le relai. C'est aussi une manière d'investir sur les équipiers en formant des ScrumMasters praticiens au sein de l'organisation.

SCRUM MOU / SCRUM + XP

Scrum doit se pratiquer avec de solides pratiques techniques. Chaque sprint doit fournir un incrément de produit potentiellement livrable, donc testé et documenté. Avoir un ScrumMaster développeur sur un projet est aussi un moyen de s'assurer que les pratiques techniques ne seront pas délaissées à la faveur des pratiques d'organisation.

A LA MANIÈRE DE TOYOTA

Cette conception du leadership rejoint les principes du Toyota Way:

Principe 9: "Grow leaders who thoroughly understand the work, live the philosophy, and teach it to others."
Les leaders, scrummasters ou coachs (choisissez votre terme préféré) viennent de l'équipe et font partie de l'équipe. Ils font le même travail que les équipiers et sont sur place pour les former.

Principe 12: "Go and see for yourself to thoroughly understand the situation".
Les leaders, scrummasters ou coachs (choisissez votre terme préféré) font partie de l'équipe. Ils comprennent la situation puisqu'ils sont en situation sur le terrain.

EN CONCLUSION

Si vous n'êtes pas le client ou son représentant et que vous contribuez au développement d'un logiciel, alors développez!

5 commentaires:

  1. Si le ScrumMaster intervient sur plusieurs projets (et donc plusieurs équipes), ce n'est plus trop valable je pense. A moins qu'il soit déconseillé d'être ScrumMaster sur plusieurs projets ?

    RépondreSupprimer
  2. Je pense que notre équipe n'accepterait pas un ScrumMaster intervenant sur plusieurs projets. Ne faisant pas partie de l'équipe et ne partageant pas son quotidien et ses difficultés, il serait exclu et remplacé par un ScrumMaster dédié provenant de l'équipe.
    Par contre, les activités propres au ScrumMaster ne représentent pas un plein temps. C'est pourquoi le ScrumMaster est aussi développeur dans l'équipe.

    Sinon, dans la littérature, les avis convergent pour affirmer que les équipiers et les ScrumMasters doivent être dédiés à un seul projet. La commutation entre les projets est un gaspillage et un frein à l'implication.

    RépondreSupprimer
  3. Mr Jojo: merci pour ta réflexion. J'ai modifié mon billet en conséquence.

    RépondreSupprimer
  4. Enfin quelqu'un qui a conscience de l'importance des pratiques techniques, de la nécessité pour le ScrumMaster de faire avancer son équipe par l'exemple !

    Merci ManU, vous me re-donner la foi au milieu de cette forêt de consultants surfant sur la vague agilité et son côté cérémonial voir sectaire :-)

    MoussX_the_boss

    RépondreSupprimer
  5. Salut Manu, nous avons des scrummasters qui sont développeurs dans une équipe, et scrummaster d'une autre équipe. Cela favorise un peu la communication entre équipes, mais au détriment d'un esprit d'équipe dont le scrummaster devrait faire partie. Le scrummaster peut être renforcé dans son rôle de "prick" au lieu d'être renforcé dans son rôle de coach/facilitateur. C'est pourquoi il me semble que votre organisation est meilleure, et nous nous en inspirerons dans de futurs projets.

    Bruno

    RépondreSupprimer