SlideShare a Scribd company logo
1 of 71
Download to read offline
La dette technique
Francois Wauquier @wokier
Aurélien Pelletier @toutantic
#AgileFrance
C'est la crise !
Ward Explain Debt Metaphor
3,93 %
TEG FIXE
Entropie logicielle
Entropie
Temps
Entropie logicielle
Entropie
Temps
Entropie logicielle
Entropie
Temps
Vélocité / Dette Technique
Temps
Vélocité / Dette Technique
Temps
Vélocité / Dette Technique
Temps
Vélocité / Dette Technique
Temps
Vélocité / Dette Technique
Temps
Délais pour corriger
un bug en production
● Minute
● Heure
● Jour
● Semaine
● ...
Taille du Bug Tracker
Temps d'intégration
d'un nouveau développeur
Build long
http://xkcd.com/303/
Environnement obsolète
Quadrant de Martin Fowler
Aventureux Prudent
Délibéré
Pas le temps de
designer
Nous devons
livrer et assumer
Négligeant
C'est quoi ces
couches ?
Nous savons
maintenant
comment nous
aurions du faire
Dette technique
Vélocité en chute libre
Faillite
Motivation
Problème
Planning Game
Complexité
XL
Valeur métier
0
Comportements d'équipe
● Endettement
● Economie
● Remboursement
[Effet]
[Description...]
[Avantage]
[Inconvénient]
[Pattern]
S
M L
Comportements
Endettement
Livrer des story 'presque fini'
Endettement
Faire la demo, livrer mais ne pas clore la story
pour rattrapper le retard dans le sprint suivant
+ Client est content
M
Sprint de livraison
Endettement
Réaliser des story
'presque finie' et
dédier un sprint à la
préparation de la mise
en production.
- Casse le rythme
L
Story Technique
Endettement
● Intégrer au backlog
des Story Technique
● Valeur métier : 0
● Définir des règles
avec le PO
+ Endettement visible
Visible Invisible
Valeur
Métier
Forte
User Story Architecture
Valeur
Métier
Faible
Bug
Story
Technique
L
Livrer et oublier
Endettement
Livrer 'en l'état' à la fin du sprint
- Le code n' oubliera pas...
L
Livrer et oublier
Endettement
Livrer 'en l'état' à la fin du sprint
- Le code n' oubliera pas...
Comportements
Economies
"Definition Of Done" forte
Economies
Ne pas livrer une story qui ne respecte pas
tous les critères Done Done
+ Qualité
- Risque de paralysie
TDD
Economies
● Test
● Code
● Refactor
+ Couverture
+ Documentation
+ Design
Binomage
Economies
Revue de code à chaud
Economies
Revue sur place avant commit
+ Au plus proche
Revue de code à froid
Economies
Revue à distance
● Pull Request
● Document de revue de code
+ Outillage
- Moins formateur que Binômage
Quick Start
Economies
● Documentation proche du code
○ README / Getting started
● Utilisation de standards
○ git clone
○ vagrant up
○ mvn clean install
○ mvn jetty:run
+ Gain de temps d'intégration d'un nouveau
○ bower install
○ npm install
○ grunt server
Règles de code
Economies
● Style
● Design
○ Single Responsibility Principle
○ Couches / Couplage faible
○ Communication adaptée
+ Facilité lecture de code
+ Détection Bug simples
Comportements
Remboursement
Remboursement Opportuniste
Remboursement
Profiter d'une évolution fonctionnelle pour
rembourser
Seule la User Story est visible
Rien ne se fait sans valeur métier associée
+ Transparent
L
Remboursement Opportuniste
Remboursement
Profiter d'une évolution fonctionnelle pour
rembourser
Seule la User Story est visible
Rien ne se fait sans valeur métier associée
+ Transparent
L
Remboursement
"Le camp doit être plus
propre que lorsque l'on
est arrivé"
Baden Powell
+ Amélioration progressive
- Pas visible
SBoy Scout
Refactoring
Remboursement
Remaniement de code pour
● le rendre plus lisible
● éviter les duplications
● faciliter la maintenance
● permettre l'extension
+ Qualité
- Nécessite bonne couverture AVANT
L
Bug Day
Economie
L
Objectif de couverture
Remboursement
Définir un nouveau seuil minimum de
couverture
+ Rattrape le retard
L
Automatiser
Remboursement
● Livraison
● Tests Fonctionnels
● Documentation
● Installation Poste Dev
+ Gain temps
- Coût du Ticket d'entrée
L
Accélérer
Remboursement
Accélérer ce qui est déjà automatisé
Définir stratégie de tests automatiques
+ Gain temps
S
Migration Version
Remboursement
● Suivre les versions stables par petit pas
+ Bénéficier des corrections
S
Outils
Analyse de code
Informatif
Analyse de code (informatif)
● IDE vérification active
● IDE vérification à la demande
● Contrôle durant IC build séparé
● Outils Externe (ex: Sonar)
Distance du développeur
IDE Intégration
Continue
Outil
Externe
Build
Local
Poka Yoke
Poka Yoke
Analyse de code (Poka Yoke)
● Contrôle durant IC build principal
● Contrôle au commit
○ Server-less Continuous Integration
○ Unbreakable build
Distance du développeur
IDE Intégration
Continue
Outil
Externe
Build
Local
Do Thing Right, but...
Do
Right
Thing
Do
Thing
Right
Fast
Merci
Francois Wauquier @wokier
Aurélien Pelletier @toutantic
#AgileFrance
http://c2.com/cgi/wiki?WardExplainsDebtMetaphor
http://martinfowler.com/bliki/TechnicalDebt.html
http://www.targetprocess.com/rightthing.html
http://www.andrejkoelewijn.com/blog/2010/11/25/lac2010-technical-debt/
http://www.infoq.com/articles/managing-technical-debt
Sources

More Related Content

Viewers also liked

A Brugiere CA Riviere Drôle de rencontre techno et vieillissement
A Brugiere CA Riviere Drôle de rencontre techno et vieillissementA Brugiere CA Riviere Drôle de rencontre techno et vieillissement
A Brugiere CA Riviere Drôle de rencontre techno et vieillissementFing
 
Iar (1)
Iar (1)Iar (1)
Iar (1)titoff
 
Formation disp ot v4 meublés et 7j glissants
Formation disp ot v4 meublés et 7j glissantsFormation disp ot v4 meublés et 7j glissants
Formation disp ot v4 meublés et 7j glissantsservicelogiciel
 
Vers une science de l’intelligence collective
Vers une science de l’intelligence collectiveVers une science de l’intelligence collective
Vers une science de l’intelligence collectiveAntonio Medina
 
Mi amante y yo
Mi amante y yoMi amante y yo
Mi amante y yogloria
 
El Cmaptool Herramienta de aprendizaje virtual
El Cmaptool Herramienta de aprendizaje virtualEl Cmaptool Herramienta de aprendizaje virtual
El Cmaptool Herramienta de aprendizaje virtualguest87ccd5
 
Reflejos del alma
Reflejos del almaReflejos del alma
Reflejos del almagloria
 
Muchas flores para ti
Muchas flores para tiMuchas flores para ti
Muchas flores para tigloria
 
Las Energias
Las EnergiasLas Energias
Las EnergiasAranchaa
 
Accesibilidad Inadvertida, Paola Daniela Pérez
Accesibilidad Inadvertida, Paola Daniela PérezAccesibilidad Inadvertida, Paola Daniela Pérez
Accesibilidad Inadvertida, Paola Daniela PérezCOOPERACION 2.0 2009
 
Figurez dans le Guide pratique Emploi & Handicap de LADAPT
Figurez dans le Guide pratique Emploi & Handicap de LADAPTFigurez dans le Guide pratique Emploi & Handicap de LADAPT
Figurez dans le Guide pratique Emploi & Handicap de LADAPTLADAPT
 
4 Mariages
4 Mariages4 Mariages
4 MariagesFing
 
Visita Atipicacatedral Sevilla
Visita Atipicacatedral SevillaVisita Atipicacatedral Sevilla
Visita Atipicacatedral Sevillagueste367ffc
 
La Produccin De Energa 1227705883745199 8
La Produccin De Energa 1227705883745199 8La Produccin De Energa 1227705883745199 8
La Produccin De Energa 1227705883745199 8Aranchaa
 
Intranet, KM & IT Governance
Intranet, KM & IT GovernanceIntranet, KM & IT Governance
Intranet, KM & IT GovernancePaulin CHOUDJA
 
Amor o añoranza?
Amor o añoranza?Amor o añoranza?
Amor o añoranza?gloria
 

Viewers also liked (20)

A Brugiere CA Riviere Drôle de rencontre techno et vieillissement
A Brugiere CA Riviere Drôle de rencontre techno et vieillissementA Brugiere CA Riviere Drôle de rencontre techno et vieillissement
A Brugiere CA Riviere Drôle de rencontre techno et vieillissement
 
Iar (1)
Iar (1)Iar (1)
Iar (1)
 
Formation disp ot v4 meublés et 7j glissants
Formation disp ot v4 meublés et 7j glissantsFormation disp ot v4 meublés et 7j glissants
Formation disp ot v4 meublés et 7j glissants
 
Vers une science de l’intelligence collective
Vers une science de l’intelligence collectiveVers une science de l’intelligence collective
Vers une science de l’intelligence collective
 
Mi amante y yo
Mi amante y yoMi amante y yo
Mi amante y yo
 
El Cmaptool Herramienta de aprendizaje virtual
El Cmaptool Herramienta de aprendizaje virtualEl Cmaptool Herramienta de aprendizaje virtual
El Cmaptool Herramienta de aprendizaje virtual
 
Reflejos del alma
Reflejos del almaReflejos del alma
Reflejos del alma
 
El Moo
El MooEl Moo
El Moo
 
Muchas flores para ti
Muchas flores para tiMuchas flores para ti
Muchas flores para ti
 
Las Energias
Las EnergiasLas Energias
Las Energias
 
Accesibilidad Inadvertida, Paola Daniela Pérez
Accesibilidad Inadvertida, Paola Daniela PérezAccesibilidad Inadvertida, Paola Daniela Pérez
Accesibilidad Inadvertida, Paola Daniela Pérez
 
Figurez dans le Guide pratique Emploi & Handicap de LADAPT
Figurez dans le Guide pratique Emploi & Handicap de LADAPTFigurez dans le Guide pratique Emploi & Handicap de LADAPT
Figurez dans le Guide pratique Emploi & Handicap de LADAPT
 
Tics
TicsTics
Tics
 
Paola
PaolaPaola
Paola
 
4 Mariages
4 Mariages4 Mariages
4 Mariages
 
Visita Atipicacatedral Sevilla
Visita Atipicacatedral SevillaVisita Atipicacatedral Sevilla
Visita Atipicacatedral Sevilla
 
La Produccin De Energa 1227705883745199 8
La Produccin De Energa 1227705883745199 8La Produccin De Energa 1227705883745199 8
La Produccin De Energa 1227705883745199 8
 
4 les éléments figurés du sang
4 les éléments figurés du sang4 les éléments figurés du sang
4 les éléments figurés du sang
 
Intranet, KM & IT Governance
Intranet, KM & IT GovernanceIntranet, KM & IT Governance
Intranet, KM & IT Governance
 
Amor o añoranza?
Amor o añoranza?Amor o añoranza?
Amor o añoranza?
 

Similar to Agile france 2013 - Dette Technique

Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...Benoit St-André
 
Guillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats AgilesGuillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats Agilesagiletourbordeaux
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfboulonvert
 
meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023Frederic Leger
 
Level up your ci-cd experience
Level up your ci-cd experienceLevel up your ci-cd experience
Level up your ci-cd experienceFrederic Leger
 
Integration continue - Introduction
Integration continue - IntroductionIntegration continue - Introduction
Integration continue - IntroductionOlivier ETIENNE
 
Web perf Silicon Comte
Web perf Silicon ComteWeb perf Silicon Comte
Web perf Silicon ComteSilicon Comté
 
La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ? La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ? OCTO Technology
 
Iut lyon 1 introduction à l'agilité - 20 juin 2012
Iut lyon 1   introduction à l'agilité - 20 juin 2012Iut lyon 1   introduction à l'agilité - 20 juin 2012
Iut lyon 1 introduction à l'agilité - 20 juin 2012agnes_crepet
 
AES22-A la découverte d'Accelerate.pdf
AES22-A la découverte d'Accelerate.pdfAES22-A la découverte d'Accelerate.pdf
AES22-A la découverte d'Accelerate.pdfAgile En Seine
 
Test Driven Development (aka TDD) for agile teams
Test Driven Development (aka TDD) for agile teamsTest Driven Development (aka TDD) for agile teams
Test Driven Development (aka TDD) for agile teamsThierry Gayet
 
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelHa zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelAgile Montréal
 
Le Burn-Out Agile - Devoxx MA
Le Burn-Out Agile - Devoxx MALe Burn-Out Agile - Devoxx MA
Le Burn-Out Agile - Devoxx MACedric Moulard
 
Vincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops SherbrookeVincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops SherbrookeVincent Biret
 
Faut il avoir peur du [cloud] vendor lock-in?
Faut il avoir peur du [cloud] vendor lock-in?Faut il avoir peur du [cloud] vendor lock-in?
Faut il avoir peur du [cloud] vendor lock-in?VincentPoilvert1
 
DODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez CroesusDODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez CroesusMartin Deslongchamps
 
Le combat contre l'atrophie technique - Agile en Seine 2020
Le combat contre l'atrophie technique - Agile en Seine 2020Le combat contre l'atrophie technique - Agile en Seine 2020
Le combat contre l'atrophie technique - Agile en Seine 2020Agile En Seine
 
Developement logiciel: comment livrer de la qualite ?
Developement logiciel: comment livrer  de la qualite ?Developement logiciel: comment livrer  de la qualite ?
Developement logiciel: comment livrer de la qualite ?Innobec
 
Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...nostradamnit
 

Similar to Agile france 2013 - Dette Technique (20)

Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
 
Services & Contrats Agiles
Services & Contrats AgilesServices & Contrats Agiles
Services & Contrats Agiles
 
Guillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats AgilesGuillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats Agiles
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 
meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023
 
Level up your ci-cd experience
Level up your ci-cd experienceLevel up your ci-cd experience
Level up your ci-cd experience
 
Integration continue - Introduction
Integration continue - IntroductionIntegration continue - Introduction
Integration continue - Introduction
 
Web perf Silicon Comte
Web perf Silicon ComteWeb perf Silicon Comte
Web perf Silicon Comte
 
La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ? La Duck Conf - DevOps et Dataviz, un amour impossible ?
La Duck Conf - DevOps et Dataviz, un amour impossible ?
 
Iut lyon 1 introduction à l'agilité - 20 juin 2012
Iut lyon 1   introduction à l'agilité - 20 juin 2012Iut lyon 1   introduction à l'agilité - 20 juin 2012
Iut lyon 1 introduction à l'agilité - 20 juin 2012
 
AES22-A la découverte d'Accelerate.pdf
AES22-A la découverte d'Accelerate.pdfAES22-A la découverte d'Accelerate.pdf
AES22-A la découverte d'Accelerate.pdf
 
Test Driven Development (aka TDD) for agile teams
Test Driven Development (aka TDD) for agile teamsTest Driven Development (aka TDD) for agile teams
Test Driven Development (aka TDD) for agile teams
 
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelHa zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
 
Le Burn-Out Agile - Devoxx MA
Le Burn-Out Agile - Devoxx MALe Burn-Out Agile - Devoxx MA
Le Burn-Out Agile - Devoxx MA
 
Vincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops SherbrookeVincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops Sherbrooke
 
Faut il avoir peur du [cloud] vendor lock-in?
Faut il avoir peur du [cloud] vendor lock-in?Faut il avoir peur du [cloud] vendor lock-in?
Faut il avoir peur du [cloud] vendor lock-in?
 
DODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez CroesusDODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez Croesus
 
Le combat contre l'atrophie technique - Agile en Seine 2020
Le combat contre l'atrophie technique - Agile en Seine 2020Le combat contre l'atrophie technique - Agile en Seine 2020
Le combat contre l'atrophie technique - Agile en Seine 2020
 
Developement logiciel: comment livrer de la qualite ?
Developement logiciel: comment livrer  de la qualite ?Developement logiciel: comment livrer  de la qualite ?
Developement logiciel: comment livrer de la qualite ?
 
Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...
 

More from François Wauquier

Agile france 2014 - Juste à temps
Agile france 2014 - Juste à tempsAgile france 2014 - Juste à temps
Agile france 2014 - Juste à tempsFrançois Wauquier
 
Un backlog public - Agile France 2012
Un backlog public - Agile France 2012 Un backlog public - Agile France 2012
Un backlog public - Agile France 2012 François Wauquier
 
Agile Tour Nantes 2011 frontieres de equipe
Agile Tour Nantes 2011 frontieres de equipeAgile Tour Nantes 2011 frontieres de equipe
Agile Tour Nantes 2011 frontieres de equipeFrançois Wauquier
 
Les Frontieres de L'equipe - Agile france 2011
Les Frontieres de L'equipe - Agile france 2011Les Frontieres de L'equipe - Agile france 2011
Les Frontieres de L'equipe - Agile france 2011François Wauquier
 
Domain Driven Design - Agile France 2010
Domain Driven Design - Agile France 2010Domain Driven Design - Agile France 2010
Domain Driven Design - Agile France 2010François Wauquier
 
Domain Driven Design - Agile Tour Lille 2009
Domain Driven Design - Agile Tour Lille 2009Domain Driven Design - Agile Tour Lille 2009
Domain Driven Design - Agile Tour Lille 2009François Wauquier
 

More from François Wauquier (10)

Agile france 2014 - Juste à temps
Agile france 2014 - Juste à tempsAgile france 2014 - Juste à temps
Agile france 2014 - Juste à temps
 
GWT no-dto
GWT no-dtoGWT no-dto
GWT no-dto
 
Un backlog public - Agile France 2012
Un backlog public - Agile France 2012 Un backlog public - Agile France 2012
Un backlog public - Agile France 2012
 
Agile Tour Nantes 2011 frontieres de equipe
Agile Tour Nantes 2011 frontieres de equipeAgile Tour Nantes 2011 frontieres de equipe
Agile Tour Nantes 2011 frontieres de equipe
 
Les Frontieres de L'equipe - Agile france 2011
Les Frontieres de L'equipe - Agile france 2011Les Frontieres de L'equipe - Agile france 2011
Les Frontieres de L'equipe - Agile france 2011
 
Domain Driven Design - Agile France 2010
Domain Driven Design - Agile France 2010Domain Driven Design - Agile France 2010
Domain Driven Design - Agile France 2010
 
Jump4 It Gwt Mvc
Jump4 It Gwt MvcJump4 It Gwt Mvc
Jump4 It Gwt Mvc
 
Domain Driven Design - Agile Tour Lille 2009
Domain Driven Design - Agile Tour Lille 2009Domain Driven Design - Agile Tour Lille 2009
Domain Driven Design - Agile Tour Lille 2009
 
Planning Game Xp Days 2009
Planning Game Xp Days 2009Planning Game Xp Days 2009
Planning Game Xp Days 2009
 
Agile Tour Lille 2008
Agile Tour Lille 2008Agile Tour Lille 2008
Agile Tour Lille 2008
 

Agile france 2013 - Dette Technique