“S’engager”

email

Pendant un planning d’itĂ©ration, il est commun de demander Ă  l’Equipe de fixer/choisir/Ă©tablir son “engagement”. Et la plupart du temps, le comportement attendu consiste Ă  choisir un ensemble de fonctionnalitĂ©s Ă  livrer au client Ă  la fin de l’itĂ©ration qui commence ce jour lĂ .

Dans Scrum, ce rituel de planning se rĂ©pète Ă  chaque commencement d’itĂ©ration.

planning

Pendant l’itĂ©ration, c’est le temps de la rĂ©alisation. C’est lĂ  que les artistes-artisans informaticiens rĂ©alisent le miracle de leur art pour livrer un morceau de logiciel d’une qualitĂ© exceptionnelle. Hum… Mais au fait, c’est quoi pour vous la QualitĂ© ? Autour d’un cafĂ© on devrait probablement s’entendre sur le fait que des professionnels de l’informatique devraient livrer des logiciels de qualitĂ©. Voire, que leur “engagement” a quelque chose Ă  voir avec “livrer un logiciel de qualitĂ©”.

Durant les dix dernières annĂ©es, une technique appelĂ©e TDD s’est dĂ©veloppĂ©e. J’imagine que vous connaissez ça très bien, ainsi que sa reprĂ©sentation la plus populaire :

tdd

La couleur pour le cĂ´tĂ© du refactoring est parfois le vert pour exprimer que pendant une opĂ©ration de refactoring, “les tests passent toujours”. J’ai pris ici le gris surtout parce que sur ma magnifique casquette tdd, le refactoring est en gris.

Mais au fait : quelle est la vocation du refactoring ? Parce que si le test passe, je pourrais livrer le code et n’en parlons plus ! Bien sĂ»r la plupart du temps le logiciel n’est pas fini ; il faut continuer. Pour pouvoir continuer, on met Ă  profit ce temps de refactoring pour transformer le code que l’on a Ă©crit Ă  la va-vite pour faire passer le test en un “code de qualitĂ©”. L’objectif semble donc ĂŞtre la qualitĂ©. Autrement dit, l’artiste-artisan informaticien professionnel construit un code de qualitĂ© pendant le refactoring. Encore autrement dit : l’artiste-artisan informaticien respecte son engagement de qualitĂ© pendant le refactoring.

Maintenant si je dessine le cycle du TDD plutôt comme ça, est-ce que vous me voyez venir ?

fusion

En mĂ©langeant les notions d’engagement du planning d’itĂ©ration et de refactoring du tdd, on pourrait vivre la situation suivante : pendant un planning d’itĂ©ration, l’Equipe considère les premiers Ă©lĂ©ments de carnet de produit, Ă©crit les tests et les fausses implĂ©mentations qui font passer les test, et rĂ©flĂ©chit Ă  son engagement : quel part du code Ă©crit pendant le planning pouvons-nous transformer en code de qualitĂ© pendant l’itĂ©ration ? Par exemple pendant le planning on a fait passer 4 tests mais notre engagement ne couvre que la livraison du code faisant passer les 3 premiers.

Cette approche met au premier plan les notions de qualitĂ© et de professionnalisme des Ă©quipes on affichant que la valeur des professionnels de l’informatique va se chercher pendant le refactoring. “Pisser du code” ne s’appliquerait plus qu’au code Ă©crit le plus vite possible pendant le planning pour faire passer les tests, pas au code que l’on livre.

à propos de éric mignot

Mon premier objectif professionnel est de construire des logiciels avec plaisir et d'aider les autres à avoir du plaisir dans cette industrie. Les approches Agiles sont pour moi aujourd'hui la meilleure façon d'y arriver. C'est pourquoi je me concentre sur l'évangélisation des approches Agiles en enseignant Scrum et les pratiques XP dans mes mandats.
voir mon profil Â»