Portia Tung et Pascal Van Cauwenberghe. « Miroir miroir, dis moi pourquoi ? », c’est avec cette question que démarre l’atelier, avant que toute l’assistance ne se lance dans un « TurboNetworking » (une sorte de speed-dating orienté réseau professionnel) où chaque participant dispose de 3 minutes pour découvrir 3 choses intéressantes chez 3 personnes. Exercice, où j’ai eu l’occasion de croiser un SCRUMMaster, un praticien de Crystal et un jeune développeur agile qui a travaillé sur divers Plugin Eclipse.
Après cette introduction, Portia et Pascal nous racontent l’histoire de « Blanche Neige et les sept nains », version Tarantino, toute ressemblance avec des projets informatiques étant volontaire … En effet on apprend que Blanche Neige est une bonne équipière, travaille dur et est un petit peu naïve ; le chasseur est discipliné, pragmatique, mais mercenaire ; Prof est savant, axé sur les solutions, mais arrogant ; ou encore Timide est attentif aux besoins des autres, calme, mais n’aime pas les conflits. Chaque personnage étant donc un type de personne que vous avez sûrement déjà croisé sur un projet.
La suite du jeu consiste à se regarder dans le miroir : on tire au hasard un des personnages (pour ma part j’ai eu Timide, le Chasseur et Blanche Neige), on choisit quelqu’un qui ressemble à ces personnages (non je ne vous dirais pas qui j’ai choisi) et on donne les raisons de ces ressemblances. Ensuite on recherche ce que ces raisons nous apprennent sur nous-mêmes et quelles actions nous pouvons tirer de ces leçons apprises.
On continue en groupe, le but est de maintenant trouver un projet et de constituer une équipe avec ses personnages. Quels vont être leur rôle, leur place dans ce projet ? Comment va-t-on pouvoir tirer parti des richesses de ses gens malgré certains traits de caractères qui les opposent ? Blanche Neige, Grincheux et Timide vont-ils constituer une équipe qui déchire grave ? On termine la session en partageant avec le reste du groupe nos projets, et nos actions individuelles, le temps de récupérer les deux dernières leçons données par Portia et Pascal :
Après ce superbe workshop, je pars coder pendant 30 minutes dans l’atelier de développement Xtrem Miles. Objectif ambitieux puisque nous nous retrouvons avec du code que nous n’avons pas écrit, et qui n’est pas entièrement testé. Cette contrainte nous oblige a effectuer une opération d’archéologie par le biais de tests dont le but est de nous permettre de comprendre comment le code existant fonctionne.
Ensuite, je me rends à la session « XP 2.0 : Améliorer l’amélioration continue avec Lean », présentée par Régis Médina et Antoine Contal. Sujet très à la mode, le Lean Management est ici présenté avec les raisons et motivations des orateurs, à savoir pour aller plus loin que XP en terme d’amélioration continue. Cette session est l’occasion d’avoir une présentation rigoureuse du système de management de Toyota, basé sur la satisfaction des clients, la réduction des coûts en éliminant les gaspillages et le développement des collaborateurs.
On y apprend comment le projet WebTV d’Orange, développé avec SCRUM, travaille sur son amélioration continue en y installant des pratiques issues du Lean Management, notamment le Kaizen (mesure de ses performances, rendre les problèmes visibles, résoudre les problèmes et en tirer les bonnes leçons). Pour mesurer ces performances, il faut identifier son client et identifier ce qu’il veut, quand et où, et sans problème. Une fois son client identifié, Antoine nous explique comment il a corrigé certains problèmes en installant des contre-mesures, en se basant sur le cycle d’amélioration de Deming, le PDCA. Parmi les leçons tirées on note l’émergence de standards de travail, projetés sur les murs en format A3. Ayant travaillé sur le projet d’Antoine, je m’aperçois alors que mon nom apparaît sur son A3 décrivant le processus du Stand Up Meeting de l’équipe WebTV. Me voilà dans le processus … Cette session nous apporte de nombreuses pistes pour appliquer cette démarche auprès des équipes de développement, mais on aimerait voir aussi d'autres chemins pour installer le Lean sur toutes la chaine de valeur du SI, incluant aussi la production par exemple. C'est d'ailleurs l'occasion de faire un peu d'autopromotion sauvage, où le Lean à la dimension du SI (chaîne de valeur partant de l'idée d'un MOA jusqu'à la production) sera aussi abordée à l'Université du SI 2009, avec, on l'espère, autant de talent.
Après la pause déjeuner, on part voir « La Théorie des Centres, une nouvelle façon de voir la conception incrémentale des logiciels » présentée par Régis Medina. On ne vous présentera pas la Théorie des Centres de Christopher Alexander (il nous faudrait plus d’un article de blog). Le célèbre architecte et auteur de « Notes on the Synthesis of Form » nous apprend que concevoir consiste à retirer des erreurs sans en créer d’autres ; et de « A Pattern Language » et « The Oregon Experience » où de nombreuses pratiques ont été reprises par Kent Beck pour XP. Après avoir pas mal plané avec une certaine euphorie lysergique, Régis Medina nous fait redescendre en nous montrant une démonstration de refactoring de code (comment faire émerger un FormBuilder dans un formulaire SWING) en utilisant la Théorie des Centres. Exercice particulièrement intéressant, prônant pour une certaine beauté du code, dont on regrette juste qu’il ne soit pas appliqué aussi sur la conception d’IHM.
La journée se termine avec quelques conversations autour d’un verre, avant de repartir content de cette journée, et on espère que les prochaines éditions de XPDays seront toutes aussi réussies.