C'est un kata de refactoring de code sur un algorythme de gestion proche des applications de gestion que l'on trouve dans les grandes entreprises.
On trouve deux usages dans ce Kata :
Vous êtes recruté dans une PME qui propose un logiciel de location de vidéo. Leur unique développeur précédent est parti aux états-unis pour une monter une start-up. Vous êtes donc le seul développeur sur ce code qui vous appartient. On vous laisse une semaine pour vous approprier le code avant que l'on commence à vous demandez des évolutions. Vous avez donc la durée du Kata pour refondre le code et le rendre plus à votre goût. Pour info, la prochaine grosse évolution semble être la présentation de la facturation en format web, mais c'est en dehors du périmètre du kata.
Votre rôle principal est à l'invrse de tout ls autres, il s'agit de fermer les discussions entre participants ou les uns en influence d'autres. Vous pouvez rappeler l'intérêt de cet exercice : que chacun modifie le code selon ses goût pour que l'on puisse faire connaissance. Vous pouvez ausi rappeler quelques évidence :
Presque toutes les bonnes pratiques peuvent être décrites avec cet exercice :
Comme on travaille en équipe, on lit souvent le code des autres... On peut demander d'echanger les oridnateurs pour faire une revue de code un peu spéciale. Comme ce code ne vas pas en prod et que nos sessions servent à s'améliorer, la seule chose intéressante dans cette revue de code est de parler des bonnes idées de notre voisin.
Dans ce cadre, on va se donner un rythme de lecture, parler du code et rejouer ce que propose le livre sur un projecteur ou un grand écran pour en discuter ensemble. Tous les livres ayant du code exemple se prêtent a ce format de Dojo qui devient alors un club de lecture.
Combien de fois avez vous relu un code d'un ancien projet preso en étant satisfait du code ? Ici, c'est pareil, vous progressez, vous évoluez, vos goûts et votre savoir faire change.
Autant le refaire une fois, un an plus tard pour moi-même est intéressant, autant en dojo je le referais plutôt en mob. En jouant l'exercice seul, on a fait connaissance avec chacun, en le rejouant tous ensemble, on voit la dynamique d'équipe, d'entre aide, etc.