Le demi-cercle (épisode 30 -- Interruptions)

Lundi, 18h30

Farid : Bon c’est pas qu’on s’ennuie, mais il se fait tard. Je vous propose de pousser le code sur le repository et de reprendre tout ça demain matin… Jérémie : Je préfèrerais qu’on fasse passer ce test avant de pousser le code. Hugo : J’ai une contrainte aussi, je vais devoir y aller. Jérémie : En plus, on déploie en pré-production demain. Donc ce n’est pas comme si on avait des marges de manœuvre confortables pour finir cette story. Audrey : Moi je peux rester encore. Toi : Moi aussi, au moins jusqu’à dix-neuf heures trente. Farid : OK. Ça ira ? Jérémie : Sans problème. À demain ! Farid : Bon courage, à demain. Hugo : À demain.

---

Lundi, 19h03

Jérémie : …Attends, est-ce qu’on a vérifié ce critère ? Audrey : On le vérifie manuellement d’habitude, mais si on peut l’ajouter aux tests autos, c’est toujours ça de gagné. Toi (au clavier) : OK.

Jean-Bernard entre dans le bureau.

Jean-Bernard : Hello. Je vois qu’il y a des courageux. Bien. Jérémie : Bonsoir. Audrey : Bonsoir. Toi : Bonsoir. Jean-Bernard : Hugo est parti ? Audrey : Oui, il avait une contrainte. Jean-Bernard : Remarquez ça tombe bien. Je voudrais savoir : comment ça se passe ? Est-ce qu’il s’intègre ? Audrey : Est-ce qu’il s’intègre, est-ce qu’il s’intègre… Toi : Je trouve que oui. Plutôt. Jérémie : Note qu’il n’a pas vraiment le choix. Jean-Bernard : Bon. Parfait. À propos, j’ai croisé Maria, qui me dit que selon ce qui paraît vous continuez à coder en équipe. Audrey : En équipe ? Jean-Bernard : À cinq sur le même écran. Enfin en mode formation. En mob programming. Toi : Exact. Enfin de temps en temps. Jean-Bernard : Oui. Donc, non. Ça ne va pas.

Pause.

Audrey : Qu’est-ce qui ne va pas ? Jean-Bernard : On vous envoie quelqu’un en plus, ce n’est pas pour vous mettre à cinq sur un tâche ! Jérémie : C’est à dire qu’on a plus vite fait de travailler avec Hugo directement en l’intégrant de cette manière, que si on devait d’abord le former, lui confier des tâches, et ensuite revoir son travail, etc… Jean-Bernard : Mais c’est n’importe quoi ! Jérémie : Mais non ce n’est pas n’importe quoi… Jean-Bernard : Jérémie, tu ne vas pas changer le process de la maison. Je vous ai déjà demandé de vous redéployer. Jérémie : Bon. Si tu insistes. Audrey : Oui, mais attendez… Jean-Bernard : Oui, j’insiste ! Vous travaillez chacun à votre poste, sur votre tâche. Ce n’est pas compliqué ! Jérémie : OK. Jean-Bernard : Il faut que j’y aille. Bonne soirée à tous.

Jean-Bernard sort du bureau.

Audrey : Jérémie, je peux savoir quelle était ton intention ? Jérémie : Comment ça mon intention ? Audrey : Tu étais parti pour expliquer les raisons d’intégrer Hugo dans le mob, et finalement tu as dit OK a JB pour revenir en mode solo. Jérémie : Oui. Audrey : Ça m’étonne de ta part. Tu n’abandonnes pas facilement une idée d’habitude, si tu sais qu’elle marche. Toi : Et cette idée là marche plutôt bien, en fait. Jérémie : Je fais des efforts pour qu’Hugo s’intègre rapidement. Pour ça il faut déjà que je me motive. Ce n’est pas facile. Si en plus je dois me battre contre le CTO, alors là c’est le ponpon. Audrey : Tout le monde fait des efforts, Jérémie. Jérémie : Je laisse tomber. Je suis la consigne. Hugo dans son coin, moi dans mon coin, chacun dans son coin, et les vaches seront bien gardées. Audrey> : C’est idiot. Ça va juste nous donner plus de travail plus tard. Jérémie : Mais non. Audrey : Qu’est-ce qu’on parie ? Jérémie (rassemble ses affaires et enfile son manteau) : Peu importe. Ce n’est plus mon problème. Toi : Tu es en train de te chercher un autre poste, Jérémie ? Jérémie : Non. Toi (fait de même que Jérémie) : Alors c’est toujours ton problème. Audrey (idem) : Même si tu cherchais à partir, ça serait encore ton problème. Notre problème.

---

Mardi 12h32

Farid : Déjeuner, quelqu’un ? Jérémie : Hmmm ? Farid : Vous vous rappelez en quoi ça consiste ? Audrey (verrouille son écran et se lève) : OK. Toi : Oui. C’est parti. Hugo (se lève de son poste de travail) : Je viens avec vous. Justement faut que je vous parle d’un truc. Jérémie (se lève également) : OK, mais vite fait, alors. Hugo : C’est à propos du module StatReportDemande. Ce truc n’est utilisé nulle part. Mais certaines classes ont encore des liens de dépendances sur ce module. Farid : Ça doit faire partie des modules qui n’ont pas survécu au remaniement de la version 1.2. Hugo : Oui. Ce qui m’étonne c’est que ce soit toujours embarqué dans la version courante alors que c’est inutilisé. Audrey : Qu’est-ce que tu penses qu’on devrait y faire, Hugo ? Hugo : Vous cherchez des moyens de perdre moins de temps, mais vous maintenez du code obsolète. Je dis ça, je dis rien. Jérémie : C’est parce qu’on ne peut pas le supprimer en toute sécurité. Hugo : Mais si on peut. Justement, j’ai vérifié. Jérémie : On pourrait, mais ça prend trop de temps. Selon ta logique, il faut remettre ça à plus tard. Voire à jamais. Hugo : Oui, mais…

Vous sortez en passant par les escaliers.

---

Mardi 18h25

Jérémie : Bon, je pense que tout est prêt ? Farid : De mon côté, j'ai déposé les corrections il y a deux heures. Tu les as vues ? Jérémie : Vues, et validées pour la version à livrer. Farid : Alors on est bons. Toi : Pas de modification de mon côté depuis lundi. Je travaille sur la version suivante. Jérémie : Dans ce cas, je pense qu'on peut partir en pré-prod. Audrey : Ça marche. Jérémie (effectue un clic de souris) : C'est parti.

---

Jeudi 16h43

Maria (entre précipitamment dans le bureau) : Charlène me dit qu'un des traitements de facturation ne fonctionne plus en pré-production, et que c'est depuis le passage en pré-production de votre nouvelle version ? Audrey : Hein ? Farid : What ? Jérémie : Ça m'étonne… Il faut qu'on y regarde de plus près. Farid : Comment est-ce qu’une mise à jour d’XXL pourrait avoir une quelconque incidence sur les traitements de facturation de la boite ? Jérémie : Farid, tu ne sais pas encore tout sur cette application. Maria : J'ai essayé de joindre Lazare, sans succès. Pouvez-vous voir avec lui ? Jérémie : On s'en ocuppe. Maria : Et tenez-moi au courant dès qu'il y a du nouveau s'il vous plaît. Merci.

---

Jeudi 17h30

Le téléphone sonne

Jérémie : Allô. Ah salut Lazare ! Oui… … Jérémie : OK… … Jérémie : Je vois… Farid : Tu peux mettre le haut-parleur, s'il te plaît ? Jérémie (prends des notes) : OK. C'est clair. Merci ! Peux-tu nous donner un accès à la pré-prod ? … Jérémie : Pour 30 minutes ? Merci. À plus. Farid : Alors ? Jérémie : Il faut qu'on descende à la Prod.

---

Jeudi 18h51

Maria entre dans le bureau.

Maria : J'ai eu ton message Jérémie. Alors que se passe t'il ? Jérémie : Le traitement de préfacturation de Charlène, PREFACT, était planté. Maria : Oui, j'étais au courant de ça. Pourquoi ? Jérémie : Il a planté parce que le repertoire où il écrit ses logs était inaccessible en écriture. Maria : Pourquoi ? Quel est le rapport avec XXL ? Jérémie : Parce que la répertoire de log était saturé… Farid : Mais pourquoi est-ce que nous lançons des traitements de facturation en pré-production ? Maria : Pas des traitements, mais des pré-traitements. Il s'agit de préparer la facturation. Farid : Mais pourquoi ça ne tourne pas en production ? Maria : Une chose à la fois, Farid. Jérémie ? Quel rapport avec XXL ? Jérémie : Une partie de l'application, le module StatReportDemande, n'est jamais utilisé, par aucun client. Maria : Et ? Jérémie : On a retiré le module. Il n'est pas recensé par nos outils de gestion de dépendances. Maria : Bon. Et ensuite ? Jérémie : Il se trouve que l'installation d'XXL exécute un petit script de vérification. Et ce script de vérification consiste à rechercher les modules requis. Il boucle à la recherche de tous les modules. Et lorsqu'un module est manquant à l'appel, il affiche un message, et il écrit dans son log. Maria : Comment ça : il boucle ? Jérémie : Il boucle, comme ça cela permet à l'administrateur de réparer le problème immédiatement, sans interrompre l'installation. Maria : Ah bon ? Et l'administrateur, qu'est-ce qu'il a fait ? Jérémie : Il n'y avait pas d'administrateur devant la console. Maria : Quoi ? Et pour quelle raison ? Jérémie : Il y a longtemps que les installations sont complètement automatisées. Lazare a cessé de les faire superviser. On n'a pas eu un souci d'installation en 4 ans. Maria : Mais votre script suppose l'intervention d'un superviseur ! Jérémie : Oui. On n'avait perdu ça de vue. Comme on avait perdu de vue la dépendance de ce script au module StatReportDemande. Maria : Vous n'avez pas vu ça ? Je rêve ? Hugo : C'est moi qui n'ai pas vu ça. C'est moi qui ai retiré le module de la solution. Maria : Mais en quoi était-ce utile, de faire ça, surtout à trois semaines de la prochaine mise en production ? Hugo : C'est du code en plus à gérer. Maria : Moi qui pensais que tu évitais les tâches qui prennent trop de temps, ou qui en font perdre. Bravo ! Hugo : Oui mais là je n'avais rien de spécial à faire, alors je l'ai fait. Jérémie : Voilà !

Pause.

Maria : OK. Vous me remettez ce module en place s'il vous plaît, et vous prévenez Charlène quand c'est fait. Jérémie : OK. Entendu. Maria : Et vous trouvez quelque chose à faire à Hugo !

——

Jeudi 19h15

Audrey et Jérémie et toi faites les dernières vérifications concernant le script d'installation.

Jérémie : Et voilà. C'est arrangé. Audrey : Dis Jérémie, comment ça se fait que la pré-facturation tourne en pré-production et non en production ? Jérémie : C'est un programme qui posait des problèmes. Sa mise au point a été particulièrement ardue. C'était mal fichu, mal testé, pas relu. D'ailleurs le code de ce programme, j'ai eu l'occassion d'y regarder une fois, c'est une daube sans nom. Ni fait, ni à faire. Audrey : Et alors ? Jérémie : Et alors dans sa grande sagesse, un jour que le programme avait encore une fois fait exploser la base de données de production, le responsable d'application a décidé de faire tourner ce programme en pré-production. Toi : Avec quelles données ? Jérémie : Tu n'es pas sans savoir que la production est recopiée sur la pré-production tous les mois. Toi : Je vois. Audrey : Je me demande ce qui va se passer pour Hugo. Toi : Qu'est-ce que tu veux qu'il se passe ? Audrey : Il est encore en période d'essai, figure-toi. Jérémie : C'est la vie… Audrey : C'est nul. Jérémie : Qu'est-ce qui est nul ? Audrey : Cette façon que tu as de tirer ton épingle du jeu. Jérémie : Sauf que ce n'est pas un jeu. Audrey : Non ce n'est pas un jeu. Si on jouait à un jeu, ce serait un jeu où chacun jetterait des cartes au milieu de la table le plus rapidement possible pour essayer de recouvrir celles jouées par les autres. Jérémie : Je ne vois pas ce que tu veux dire. Audrey : Je crois que si. Toi : Bon. Il se fait tard.

(à suivre) Episodes Précédents : 1 -- Si le code pouvait parler 2 -- Voir / Avancer 3 -- Communication Breakdown 4 -- Driver / Navigator 5 -- Brown Bag Lunch 6 -- Conseils à emporter 7 -- Crise / Opportunité 8 -- Le Cinquième Étage 9 -- Que faire ? 10 -- Soit... Soit... 11 -- Boîtes et Flêches 12 -- Le prochain Copil 13 -- La Faille 14 -- Poussière 15 -- L'hypothèse et la Règle 16 - Déplacements 17 -- Jouer et ranger 18 -- Arrangements 19 -- Mise au point 20 -- Expérimentation 21 -- Échantillons 22 -- Non-conclusions 23 -- Non-décisions 24 -- Épisode neigeux 25 -- Fusions et confusions 26 -- Débarquement 27 -- Tempête 28 -- Embardée 29 -- Aménagement