SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Sortir de l’ère des héros
Jean-PierreLambert
Connaissez-vous l’expression
« l’ère des héros » ?
• Organisation chaotique
• Mais ça tourne quand même, le projet est une réussite
• Comment l’expliquer ?
• On a des héros, qui font ce qu’il faut : jouer au pompier, être proactif sur les
sujets importants… Corriger les problèmes des autres !
Pas cool les héros ?
Si ça fonctionne comme ça, faut-il s’inquiéter ?
• Ca ne repose que sur les épaules de ces héros…
• … Ce qui est très fatigant et frustrant pour eux…
• … Et tout risque de s’effondrer à leur départ…
• … D’autant plus probable que c’est un environnement usant !
• Quelle alternative ?
Alternative à l’ère des héros : sortir du chaos
• S’outiller, industrialiser les process
• Du code maintenable = tracé par des tests de non-régression
• Construire une culture de la qualité, qui se transmettra de pair en pair
Morceaux choisis : ce qu’on me dit
Attention, c’est du vécu !
« On n’a pas le temps d’écrire les tests »
• = « On va dans le mur, mais c’est pas grave, il vaut mieux s’éclater la cervelle
dans le mur à l’heure que de l’éviter (et risquer d’être en retard). Après tout,
on n’est pas là pour livrer un logiciel qui fonctionne. »
• = « Ecoute, je connais mieux ton travail que toi, alors faisons comme ça.
Après tout je passe mes journées en réunion alors que toi tu codes, tu fais de
l’archi et de la veille, tu as acquis une expérience unique. Mais bon, il est
évident que je suis la référence. »
« On n’a pas le temps d’écrire les tests »
• Non-sens : en fait c’est un gain de temps d’en écrire !
• Vous vous considérez ingénieurs logiciels ou pisseurs de code ?
• N’écoutez pas ceux qui ne connaissent pas (ou plus) votre métier…
« Il n’est pas possible d’écrire
des tests unitaires sur ce code »
• = « Je ne SAIS pas comment tester ce code. »
• = « Ce code n’a pas été prévu pour être testé, je n’ai pas le temps de tout
réécrire. »
« Il n’est pas possible d’écrire
des tests unitaires sur ce code »
• Problème du code legacy ! Il faut bien commencer un jour… Prendre les
bonnes habitudes sur le nouveau code ! (TDD)
• Expertise à acquérir : savoir casser/minimiser les dépendances
• Votre meilleur ami : votre IDE
• But : pas réécrire, pas embellir, mais couvrir de tests – ensuite on nettoie !
• Faire des dojo ! S’entraider ! Réfléchir à plusieurs ! Persévérer !
« La génération de build sur Jenkins
est tout le temps cassée. »
• = « Les scripts de génération de build sont tout pourris. Ils cassent tout le
temps, on n’arrive pas à les mettre à jour, les tests sont aléatoires… Bref, on
se porte mieux sans ! »
« La génération de build sur Jenkins
est tout le temps cassée. »
•  « Jenkins a besoin d’amour ! »
• Il faut passer le temps nécessaire dessus : le jeu en vaut la chandelle !
• Ces exécutions répétées vous éviteront de vous taper les problèmes au
dernier moment
« Quand on fait un gros refactoring, c’est normal
qu’il y ait une phase de stabilisation, c’est obligé
d’avoir des bugs quand on modifie autant le code. »
• = « Quand on modifie du code en profondeur, on casse forcément quelque
chose. Du coup, il faut éviter de modifier du code si ce n’est pas absolument
nécessaire. Si le code marche pourquoi le modifier ? »
« Quand on fait un gros refactoring, c’est normal
qu’il y ait une phase de stabilisation, c’est obligé
d’avoir des bugs quand on modifie autant le code. »
• Bien sûr, si on n’a pas de filet de non-régression !
• On usurpe ici le terme refactoring : pas de refactoring sans tests de non-
régression
«Vous n’avez qu’à écrire du meilleur code, sans
bug, comme ça plus besoin de test. »
• = «Vous êtes nuls. En tous cas, le jour de votre entretien annuel pour parler
augmentation, vous êtes mal barrés. »
«Vous n’avez qu’à écrire du meilleur code, sans
bug, comme ça plus besoin de test. »
• Un manque total de respect pour vous ?
• Ou une totale ignorance de votre métier ?
Alors concrètement, on fait quoi ?
On écrit les tests
• Sans autorisation
• Parce que corriger des bugs c’est 1000 fois plus chiant que d’écrire des tests !
• Parce que c’est la seule manière pérenne de coder
• Et parce que c’est vous les experts techniques, les ingénieurs !
On utilise une intégration continue
• En donnant la priorité à la réparer plutôt que les fonctionnalités et les bugs
• Parce qu’un test qui n’est pas lancé automatiquement n’existe pas vraiment
• Parce que les process doivent être reproductibles, et qu’ils doivent être
joués à répétition pour vraiment marcher le moment venu
Merci !
Questions ?
Jean-PierreLambert
https://www.linkedin.com/in/jp-lambert
https://medium.com/@jplambert
https://twitter.com/@stblifebringer

Weitere ähnliche Inhalte

Was ist angesagt?

Tdd en action - découverte
Tdd en action - découverteTdd en action - découverte
Tdd en action - découverte
Eric Mignot
 
TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)
TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)
TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)
French Scrum User Group
 
Iut agile lyon 20 nov. 2013 - bdd
Iut agile lyon   20 nov. 2013 - bddIut agile lyon   20 nov. 2013 - bdd
Iut agile lyon 20 nov. 2013 - bdd
agnes_crepet
 

Was ist angesagt? (20)

TDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoringTDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoring
 
Y sont pas cher mes tests
Y sont pas cher mes testsY sont pas cher mes tests
Y sont pas cher mes tests
 
Tdd en action - découverte
Tdd en action - découverteTdd en action - découverte
Tdd en action - découverte
 
Essential skills for the agile developer
Essential skills for the agile developerEssential skills for the agile developer
Essential skills for the agile developer
 
Agile Tour Lille 2015 - Ratez vos revues de code
Agile Tour Lille 2015  - Ratez vos revues de codeAgile Tour Lille 2015  - Ratez vos revues de code
Agile Tour Lille 2015 - Ratez vos revues de code
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDD
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Breizh campux
Breizh campuxBreizh campux
Breizh campux
 
TDD en 5 minutes
TDD en 5 minutesTDD en 5 minutes
TDD en 5 minutes
 
Développer en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceDévelopper en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx France
 
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
 
[Agile Testing Day] Test Driven Development (TDD)
[Agile Testing Day] Test Driven Development (TDD)[Agile Testing Day] Test Driven Development (TDD)
[Agile Testing Day] Test Driven Development (TDD)
 
Mob programming 101 @Morpho (Groupe Safran) - 08/03/2016
Mob programming 101 @Morpho (Groupe Safran) - 08/03/2016Mob programming 101 @Morpho (Groupe Safran) - 08/03/2016
Mob programming 101 @Morpho (Groupe Safran) - 08/03/2016
 
TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)
TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)
TDD/BDD: ou comment j’ai appris à ne plus m’en faire avec les tests (et la doc)
 
Software Craftsmanship : en Pratique - AgileTour
Software Craftsmanship : en Pratique - AgileTourSoftware Craftsmanship : en Pratique - AgileTour
Software Craftsmanship : en Pratique - AgileTour
 
Software Craftsmanship
Software CraftsmanshipSoftware Craftsmanship
Software Craftsmanship
 
Iut agile lyon 20 nov. 2013 - bdd
Iut agile lyon   20 nov. 2013 - bddIut agile lyon   20 nov. 2013 - bdd
Iut agile lyon 20 nov. 2013 - bdd
 
Pizza party 30-09-2011 bdd-cucumber
Pizza party 30-09-2011 bdd-cucumberPizza party 30-09-2011 bdd-cucumber
Pizza party 30-09-2011 bdd-cucumber
 
Solutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHPSolutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHP
 
La solution-a-la-dette-technique
La solution-a-la-dette-techniqueLa solution-a-la-dette-technique
La solution-a-la-dette-technique
 

Andere mochten auch

Andere mochten auch (17)

Dirigiendo y gestionando proyectos Big Data
Dirigiendo y gestionando proyectos Big DataDirigiendo y gestionando proyectos Big Data
Dirigiendo y gestionando proyectos Big Data
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 
Vitimologia
Vitimologia Vitimologia
Vitimologia
 
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
 
World Economic Forum, la grande sciocchezza
World Economic Forum, la grande sciocchezzaWorld Economic Forum, la grande sciocchezza
World Economic Forum, la grande sciocchezza
 
Puppetのススメ
PuppetのススメPuppetのススメ
Puppetのススメ
 
Plan Social Media Wawawiwa Design
Plan Social Media Wawawiwa DesignPlan Social Media Wawawiwa Design
Plan Social Media Wawawiwa Design
 
100 Text Loans, Text Loans
100 Text Loans, Text Loans100 Text Loans, Text Loans
100 Text Loans, Text Loans
 
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
 
NVM Lensink Gussinklo Makelaardij Presentatie
NVM Lensink Gussinklo Makelaardij PresentatieNVM Lensink Gussinklo Makelaardij Presentatie
NVM Lensink Gussinklo Makelaardij Presentatie
 
Social by Design REMIXED by Geoff Colon
Social by Design REMIXED by Geoff ColonSocial by Design REMIXED by Geoff Colon
Social by Design REMIXED by Geoff Colon
 
Introduction to Cross Site Scripting ( XSS )
Introduction to Cross Site Scripting ( XSS )Introduction to Cross Site Scripting ( XSS )
Introduction to Cross Site Scripting ( XSS )
 
Buddhist Temple Dhammakaya Thai
Buddhist Temple Dhammakaya ThaiBuddhist Temple Dhammakaya Thai
Buddhist Temple Dhammakaya Thai
 
Infoprop (1)
Infoprop (1)Infoprop (1)
Infoprop (1)
 
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
 
Páginas Israelíticas – 3 – Amar las almas y no llorar
Páginas Israelíticas – 3 – Amar las almas y no llorarPáginas Israelíticas – 3 – Amar las almas y no llorar
Páginas Israelíticas – 3 – Amar las almas y no llorar
 
Annualcycles mensual
Annualcycles mensualAnnualcycles mensual
Annualcycles mensual
 

Ähnlich wie Sortir de l’ère des héros - HumanTalks Paris Mars 2017

Wordpress Au Dela Des Blogues
Wordpress Au Dela Des BloguesWordpress Au Dela Des Blogues
Wordpress Au Dela Des Blogues
Sylvain Carle
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
Djamel Zouaoui
 

Ähnlich wie Sortir de l’ère des héros - HumanTalks Paris Mars 2017 (20)

Bbd dans le flow nov.2012
Bbd dans le flow nov.2012Bbd dans le flow nov.2012
Bbd dans le flow nov.2012
 
The agilists
The agilistsThe agilists
The agilists
 
The Agilists ou "Duo de retour d’expérience sauce aigre douce"
The Agilists ou "Duo de retour d’expérience sauce aigre douce"The Agilists ou "Duo de retour d’expérience sauce aigre douce"
The Agilists ou "Duo de retour d’expérience sauce aigre douce"
 
Pratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgilePratiques de développement pour équipes Agile
Pratiques de développement pour équipes Agile
 
Les Code Reviews : le guide de survie
Les Code Reviews : le guide de survieLes Code Reviews : le guide de survie
Les Code Reviews : le guide de survie
 
On a testé pour vous…
On a testé pour vous…On a testé pour vous…
On a testé pour vous…
 
La solution-a-la-dette-technique
La solution-a-la-dette-techniqueLa solution-a-la-dette-technique
La solution-a-la-dette-technique
 
Tester du legacy code, mission impossible ?
Tester du legacy code, mission impossible ?Tester du legacy code, mission impossible ?
Tester du legacy code, mission impossible ?
 
The Agilists Agile Tour Bordeaux
The Agilists Agile Tour BordeauxThe Agilists Agile Tour Bordeaux
The Agilists Agile Tour Bordeaux
 
Les Men In Black font de l'Agile
Les Men In Black font de l'AgileLes Men In Black font de l'Agile
Les Men In Black font de l'Agile
 
Développement piloté par les tests - DDD
Développement piloté par les tests - DDDDéveloppement piloté par les tests - DDD
Développement piloté par les tests - DDD
 
Wordpress Au Dela Des Blogues
Wordpress Au Dela Des BloguesWordpress Au Dela Des Blogues
Wordpress Au Dela Des Blogues
 
De l'artisanat aux bases de l'industrialisation
De l'artisanat aux bases de l'industrialisationDe l'artisanat aux bases de l'industrialisation
De l'artisanat aux bases de l'industrialisation
 
C'est quoi, du bon code ?
C'est quoi, du bon code ?C'est quoi, du bon code ?
C'est quoi, du bon code ?
 
10 ans de Code (Agile Bordeaux 2019).pptx
10 ans de Code (Agile Bordeaux 2019).pptx10 ans de Code (Agile Bordeaux 2019).pptx
10 ans de Code (Agile Bordeaux 2019).pptx
 
Agilite Aspectize
Agilite AspectizeAgilite Aspectize
Agilite Aspectize
 
Le rôle du testeur et le Blackbox testing
Le rôle du testeur et le Blackbox testingLe rôle du testeur et le Blackbox testing
Le rôle du testeur et le Blackbox testing
 
Agile Tour 2010 - Mise en place d'un projet agile
Agile Tour 2010 - Mise en place d'un projet agileAgile Tour 2010 - Mise en place d'un projet agile
Agile Tour 2010 - Mise en place d'un projet agile
 
AT2010 Mise place d'un projet Agile
AT2010 Mise place d'un projet AgileAT2010 Mise place d'un projet Agile
AT2010 Mise place d'un projet Agile
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
 

Mehr von Jean-Pierre Lambert

[V2] Une semaine dans ma peau de testeur agile
[V2] Une semaine dans ma peau de testeur agile[V2] Une semaine dans ma peau de testeur agile
[V2] Une semaine dans ma peau de testeur agile
Jean-Pierre Lambert
 
[V1] Une semaine dans ma peau de testeur agile
[V1] Une semaine dans ma peau de testeur agile[V1] Une semaine dans ma peau de testeur agile
[V1] Une semaine dans ma peau de testeur agile
Jean-Pierre Lambert
 
Une semaine dans ma peau de Scrum Master
Une semaine dans ma peau de Scrum MasterUne semaine dans ma peau de Scrum Master
Une semaine dans ma peau de Scrum Master
Jean-Pierre Lambert
 

Mehr von Jean-Pierre Lambert (17)

Sortir de l'ère des héros - l'excellence comme clé d'une organisation résiliente
Sortir de l'ère des héros - l'excellence comme clé d'une organisation résilienteSortir de l'ère des héros - l'excellence comme clé d'une organisation résiliente
Sortir de l'ère des héros - l'excellence comme clé d'une organisation résiliente
 
Awareness session: Agile -- by Jean-Pierre Lambert
Awareness session: Agile -- by Jean-Pierre LambertAwareness session: Agile -- by Jean-Pierre Lambert
Awareness session: Agile -- by Jean-Pierre Lambert
 
Formation stratégie de test - créer un produit de qualité
Formation stratégie de test - créer un produit de qualitéFormation stratégie de test - créer un produit de qualité
Formation stratégie de test - créer un produit de qualité
 
[V2] La collaboration, signe d'une véritable agilité
[V2] La collaboration, signe d'une véritable agilité[V2] La collaboration, signe d'une véritable agilité
[V2] La collaboration, signe d'une véritable agilité
 
[V1] La collaboration, signe d'une véritable agilité
[V1] La collaboration, signe d'une véritable agilité[V1] La collaboration, signe d'une véritable agilité
[V1] La collaboration, signe d'une véritable agilité
 
[V2] Une semaine dans ma peau de testeur agile
[V2] Une semaine dans ma peau de testeur agile[V2] Une semaine dans ma peau de testeur agile
[V2] Une semaine dans ma peau de testeur agile
 
[V1] Une semaine dans ma peau de testeur agile
[V1] Une semaine dans ma peau de testeur agile[V1] Une semaine dans ma peau de testeur agile
[V1] Une semaine dans ma peau de testeur agile
 
Les différents types de Scrum Master
Les différents types de Scrum MasterLes différents types de Scrum Master
Les différents types de Scrum Master
 
Les différents types de Product Owner
Les différents types de Product OwnerLes différents types de Product Owner
Les différents types de Product Owner
 
"Agile sucks" -- or does it?
"Agile sucks" -- or does it?"Agile sucks" -- or does it?
"Agile sucks" -- or does it?
 
Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...
Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...
Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...
 
Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...
Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...
Atelier : boostez vos Backlog Grooming/Refinement avec l'Example Mapping ! --...
 
MiXiT 2018 - Retour d'expérience France Télévisions - Passer de faire de l'Ag...
MiXiT 2018 - Retour d'expérience France Télévisions - Passer de faire de l'Ag...MiXiT 2018 - Retour d'expérience France Télévisions - Passer de faire de l'Ag...
MiXiT 2018 - Retour d'expérience France Télévisions - Passer de faire de l'Ag...
 
Une semaine dans ma peau de Scrum Master
Une semaine dans ma peau de Scrum MasterUne semaine dans ma peau de Scrum Master
Une semaine dans ma peau de Scrum Master
 
Une semaine dans ma peau de Scrum Master - V0 - Meetup Renault Digital
Une semaine dans ma peau de Scrum Master - V0 - Meetup Renault DigitalUne semaine dans ma peau de Scrum Master - V0 - Meetup Renault Digital
Une semaine dans ma peau de Scrum Master - V0 - Meetup Renault Digital
 
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
 
Example Mapping - quelques exemples
Example Mapping - quelques exemplesExample Mapping - quelques exemples
Example Mapping - quelques exemples
 

Sortir de l’ère des héros - HumanTalks Paris Mars 2017

  • 1. Sortir de l’ère des héros Jean-PierreLambert
  • 2. Connaissez-vous l’expression « l’ère des héros » ? • Organisation chaotique • Mais ça tourne quand même, le projet est une réussite • Comment l’expliquer ? • On a des héros, qui font ce qu’il faut : jouer au pompier, être proactif sur les sujets importants… Corriger les problèmes des autres !
  • 3. Pas cool les héros ? Si ça fonctionne comme ça, faut-il s’inquiéter ? • Ca ne repose que sur les épaules de ces héros… • … Ce qui est très fatigant et frustrant pour eux… • … Et tout risque de s’effondrer à leur départ… • … D’autant plus probable que c’est un environnement usant ! • Quelle alternative ?
  • 4. Alternative à l’ère des héros : sortir du chaos • S’outiller, industrialiser les process • Du code maintenable = tracé par des tests de non-régression • Construire une culture de la qualité, qui se transmettra de pair en pair
  • 5. Morceaux choisis : ce qu’on me dit Attention, c’est du vécu !
  • 6. « On n’a pas le temps d’écrire les tests » • = « On va dans le mur, mais c’est pas grave, il vaut mieux s’éclater la cervelle dans le mur à l’heure que de l’éviter (et risquer d’être en retard). Après tout, on n’est pas là pour livrer un logiciel qui fonctionne. » • = « Ecoute, je connais mieux ton travail que toi, alors faisons comme ça. Après tout je passe mes journées en réunion alors que toi tu codes, tu fais de l’archi et de la veille, tu as acquis une expérience unique. Mais bon, il est évident que je suis la référence. »
  • 7. « On n’a pas le temps d’écrire les tests » • Non-sens : en fait c’est un gain de temps d’en écrire ! • Vous vous considérez ingénieurs logiciels ou pisseurs de code ? • N’écoutez pas ceux qui ne connaissent pas (ou plus) votre métier…
  • 8. « Il n’est pas possible d’écrire des tests unitaires sur ce code » • = « Je ne SAIS pas comment tester ce code. » • = « Ce code n’a pas été prévu pour être testé, je n’ai pas le temps de tout réécrire. »
  • 9. « Il n’est pas possible d’écrire des tests unitaires sur ce code » • Problème du code legacy ! Il faut bien commencer un jour… Prendre les bonnes habitudes sur le nouveau code ! (TDD) • Expertise à acquérir : savoir casser/minimiser les dépendances • Votre meilleur ami : votre IDE • But : pas réécrire, pas embellir, mais couvrir de tests – ensuite on nettoie ! • Faire des dojo ! S’entraider ! Réfléchir à plusieurs ! Persévérer !
  • 10. « La génération de build sur Jenkins est tout le temps cassée. » • = « Les scripts de génération de build sont tout pourris. Ils cassent tout le temps, on n’arrive pas à les mettre à jour, les tests sont aléatoires… Bref, on se porte mieux sans ! »
  • 11. « La génération de build sur Jenkins est tout le temps cassée. » •  « Jenkins a besoin d’amour ! » • Il faut passer le temps nécessaire dessus : le jeu en vaut la chandelle ! • Ces exécutions répétées vous éviteront de vous taper les problèmes au dernier moment
  • 12. « Quand on fait un gros refactoring, c’est normal qu’il y ait une phase de stabilisation, c’est obligé d’avoir des bugs quand on modifie autant le code. » • = « Quand on modifie du code en profondeur, on casse forcément quelque chose. Du coup, il faut éviter de modifier du code si ce n’est pas absolument nécessaire. Si le code marche pourquoi le modifier ? »
  • 13. « Quand on fait un gros refactoring, c’est normal qu’il y ait une phase de stabilisation, c’est obligé d’avoir des bugs quand on modifie autant le code. » • Bien sûr, si on n’a pas de filet de non-régression ! • On usurpe ici le terme refactoring : pas de refactoring sans tests de non- régression
  • 14. «Vous n’avez qu’à écrire du meilleur code, sans bug, comme ça plus besoin de test. » • = «Vous êtes nuls. En tous cas, le jour de votre entretien annuel pour parler augmentation, vous êtes mal barrés. »
  • 15. «Vous n’avez qu’à écrire du meilleur code, sans bug, comme ça plus besoin de test. » • Un manque total de respect pour vous ? • Ou une totale ignorance de votre métier ?
  • 16. Alors concrètement, on fait quoi ?
  • 17. On écrit les tests • Sans autorisation • Parce que corriger des bugs c’est 1000 fois plus chiant que d’écrire des tests ! • Parce que c’est la seule manière pérenne de coder • Et parce que c’est vous les experts techniques, les ingénieurs !
  • 18. On utilise une intégration continue • En donnant la priorité à la réparer plutôt que les fonctionnalités et les bugs • Parce qu’un test qui n’est pas lancé automatiquement n’existe pas vraiment • Parce que les process doivent être reproductibles, et qu’ils doivent être joués à répétition pour vraiment marcher le moment venu