Au coeur de l’agile : l’amélioration continue – 2 – Comment s’améliorer – La Collaboration!
Nous avons comment la réalité dans les méthodes classiques du développement logiciel mène généralement à la phase de “déclin”. Nous avons aussi vu comment, en Agile, l’emphase est mise sur l’amélioration continue afin de garder une cadence de livraison stable. Toutefois, cette notion d’amélioration est grandement sous-estimée, généralement par inconscience, mais aussi parce qu’il est difficile de s’améliorer continuellement.
Nous allons voir maintenant quelles notions et techniques que le mindset Agile nous donne pour arriver à nous améliorer. Dans ce post, Nous abordons le premier point : La collaboration. Puisque la documentation est abondante à ce sujet, je vais exposer une idée que je trouve très parlante : le passage de relai.
Généralement, nous passons plus de temps à trouver comment faire pour commencer le travail que faire le travail réellement.
Aussi, quand nous avons plusieurs intervenants pour livrer un travail, Chacun se concentre naturellement sur sa tache et s’assure de la finir. Le développeur finit son code, le QA finit ses tests. L’analyste s’assure que ses C.O.S. sont écrits dans l’outil.
Nous avons tendance à mettre l’emphase sur la partie “sortie” dans le processus. Nous pouvons représenter cette “chaine” comme suit :
Chaque membre s’assure donc de finaliser sa tache et s’attend que le récepteur s’en occupe.
On voit ceci tout le temps lorsqu’un développeur vous sort “Ouai ben le QA va tester pour moi”, ou encore “La tache n’a pas été mise à jour dans le système de gestion, je ne peux rien faire” etc.
Au moment de passer le relai, le coureur sur lequel repose la responsabilité est celui au teeshirt bleu. C’est lui qui fait le plus d’effort pour passer le relai.
Oui, le coureur au teeshirt vert l’attend et se prépare à courir. Oui, c’est le coureur au teeshirt vert qui va finir la suite de la course. Mais à ce moment précis, au moment de passer la tache au suivant, la responsabilité revient a celui qui vient de la finir de s’assurer que le suivant a bel et bien tout ce qui lui faut afin de continuer le travail.
En d’autres termes, dans la chaine précédente, il faut donc plutôt mettre l’emphase en amont, sur l’entrée plutôt que la sortie.
Pourtant, généralement, la situation qui se passe est la situation inverse, dans laquelle c’est la personne qui attend les inputs de sa tache qui fait plus d’efforts que la personne en amont.
Vous allez me dire que c’est normal, c’est cette personne qui en a besoin.. Pour moi une telle vision est un signe criant d’un manque de collaboration entre ces deux intervenants, et surtout de la personne qui va livrer le travail. Voici ce que cela donne sur un dessin :
Le point ici est que nous ne pouvons pas savoir que le travail est assez bon pour considérer qu’il est “complété” que si la prochaine personne dans le processus peut démontrer l’absence de délais pour commencer sa tâche. Faire passer la tache au destinataire est un travail qui nécessite les deux personnes, Ces deux personnes doivent bien se connaitre, se “timer” lors du passage du relai, mais surtout C’est au destinataire de déclarer que le passage est complété.
Au prochain post! 🙂