SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Par Nicolas Jozwiak

Maîtrisez votre dette
technique
Biographie

Nicolas Jozwiak
8 ans d’expérience
Coach et craftsman

2
3
Agenda
A

Définition dette financière / dette technique

B

Vocabulaire agile

C

Conséquences sur les projets

D
E
F

Mécanismes sous jacents
Résorber la dette
Stratégies

4
Définitions
1
Définitions
Dette financière

6
Définitions
Dette technique

• Code Smell
• Dette naturelle
• Dette intentionnelle

Ward Cunningham

7
Vocabulaire
2
Un peu de vocabulaire
• Vélocité
‣ Représente la capacité d’une équipe à délivrer un certain
nombre de fonctionnalités, exprimée en Story Point pour
une période définie

• Story Point
‣ Unité de mesure relative pour connaître la difficulté des
fonctionnalités

• Itération / Sprint
‣ Période de travail

9
Conséquences
3
Les conséquences

11
Les conséquences

12
Les conséquences

13
Mécanismes
4
Les mécanismes sous jacents

15
Les mécanismes sous jacents

• Prise de conscience en catastrophe
‣ Maintenances longues
‣ Evolutions difficiles à mettre en place
‣ Manque de fiabilité

16
Les mécanismes sous jacents
• Pourquoi une maintenance ou évolution peut
prendre beaucoup de temps à développer ?

‣

La tolérance aux changements

17
Tolérance aux changements
• Comment juger de la tolérance aux
changement d’un code ?
‣ La conception
‣ La lisibilité du code
‣ Les tests

18
Tolérance aux changements
• Conception
‣ SOLID
‣ Domain Driven Design

• Découpage cohérent et clair de l’application

19
Tolérance aux changements
• Lisibilité
‣ Interaction humain / machine

• Tests
‣ Garants de l’application
‣ Mise en place prend du temps

20
Tolérance aux changements
• Le Test Driven
Development (TDD)
‣ Ecrire les tests avant
les développements

21
Résorber
la dette
5
Les bonnes pratiques de développements
• Extreme programming (XP)
‣ Refactoring
‣ Pair Programming
‣ Revue de code

23
Refactoring

24
Pair programming

25
Revue de code

26
27
28
Stratégies
6
Les stratégies
• Démarrage d’un nouveau projet

30
Les stratégies
• Intervention sur des
projets existants
‣ À quel moment appliquer les
bonnes pratiques ?
‣ Quelles stratégies s’offrent à
nous ?

31
Les stratégies
• Gérer la dette au quotidien
‣ Appliquer les bonnes pratiques dans les cycles de
développements
‣ Stratégie à long terme

32
Les stratégies
• Refactorings mineurs
‣ Intégration au fil de l’eau
» Peu de conséquences sur le comportement de
l’application
» Renommages, factorisations, etc

33
Les stratégies
• Refactorings majeurs
‣ Impacts importants
» Ne pas mettre en péril l’application

34
Les stratégies
• Refactorings de longues durées
‣ Migration d’une technologie
» Outils de gestion de versions (SVN, GIT)

35
Les stratégies
• Recoder

36
Conclusion
6
Conclusion
• Réduire la dette au quotidien
• Dette introduite au quotidien
‣ Dette toxique

• Impossible à supprimer totalement
‣ Bonnes pratiques, outils et stratégies nous permettent
de grandement l’atténuer

38
Conclusion

• Restreindre les livraisons
‣ Garder un niveau de qualité
suffisant

• Craftsmanship

39
Conclusion

40
THANK
YOU

FOR watching

Merci!
Bibliographie
• Kyle Brown - Paying back technical debt, 2010
http://www.ibm.com/developerworks/websphere/techjournal/1001_col_brown/ 1001_col_brown.html

• Martin Fowler – Technical Debt, 2009 - http://martinfowler.com/bliki/TechnicalDebt.html
• Steve McConnell – Technical Debt, 2007 http://blogs.construx.com/blogs/stevemcc/archive/2007/11/01/technical-debt-2.aspx

• Tom Brazier - Managing Technical Debt, 2007 - http://accu.org/index.php/journals/1301
• Kane Mar – Technical Debt and Design Death, 2006 http://www.scrumalliance.org/articles/14-technical-debt-and-design-death

• Principle of OOD - http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod
• Working Effectively with Legacy Code, Michael Feathers, 2004
42

Weitere ähnliche Inhalte

Was ist angesagt?

Prince2 Présentation globale
Prince2 Présentation globalePrince2 Présentation globale
Prince2 Présentation globale
Joseph SZCZYGIEL
 
La vie après le diplôme UTC -16 avril 2013
La vie après le diplôme UTC -16 avril 2013La vie après le diplôme UTC -16 avril 2013
La vie après le diplôme UTC -16 avril 2013
Cyrille Deruel
 

Was ist angesagt? (12)

Mise un oeuvre d'un projet Mobile chez Cetelem en Scrum
Mise un oeuvre d'un projet Mobile chez Cetelem en ScrumMise un oeuvre d'un projet Mobile chez Cetelem en Scrum
Mise un oeuvre d'un projet Mobile chez Cetelem en Scrum
 
La chaîne critique - Osez terminer tous vos projets à l'heure !
La chaîne critique - Osez terminer tous vos projets à l'heure !La chaîne critique - Osez terminer tous vos projets à l'heure !
La chaîne critique - Osez terminer tous vos projets à l'heure !
 
PMI LQ colloque 2017 Carl M. Gilbert-pmbok2016
PMI LQ colloque 2017 Carl M. Gilbert-pmbok2016PMI LQ colloque 2017 Carl M. Gilbert-pmbok2016
PMI LQ colloque 2017 Carl M. Gilbert-pmbok2016
 
Prince2 Présentation globale
Prince2 Présentation globalePrince2 Présentation globale
Prince2 Présentation globale
 
Soirée corporative du PMI-Montréal - Analytique de données et visualisation d...
Soirée corporative du PMI-Montréal - Analytique de données et visualisation d...Soirée corporative du PMI-Montréal - Analytique de données et visualisation d...
Soirée corporative du PMI-Montréal - Analytique de données et visualisation d...
 
Projet agile arrêtez les derives - ATLille2014
Projet agile arrêtez les derives - ATLille2014Projet agile arrêtez les derives - ATLille2014
Projet agile arrêtez les derives - ATLille2014
 
La vie après le diplôme UTC -16 avril 2013
La vie après le diplôme UTC -16 avril 2013La vie après le diplôme UTC -16 avril 2013
La vie après le diplôme UTC -16 avril 2013
 
La vie après le diplôme UTC -24 septembre 2013
La vie après le diplôme UTC -24 septembre 2013La vie après le diplôme UTC -24 septembre 2013
La vie après le diplôme UTC -24 septembre 2013
 
Conférence RMCQ : La fameuse liste de risque(s) - Quoi, comment, quand, qui, ...
Conférence RMCQ : La fameuse liste de risque(s) - Quoi, comment, quand, qui, ...Conférence RMCQ : La fameuse liste de risque(s) - Quoi, comment, quand, qui, ...
Conférence RMCQ : La fameuse liste de risque(s) - Quoi, comment, quand, qui, ...
 
2015-04-28 April Cloutier Vézina CARRA
2015-04-28 April Cloutier Vézina CARRA2015-04-28 April Cloutier Vézina CARRA
2015-04-28 April Cloutier Vézina CARRA
 
2015-04-28 Bruno Guay Sécurité des projets informatiques
2015-04-28 Bruno Guay Sécurité des projets informatiques2015-04-28 Bruno Guay Sécurité des projets informatiques
2015-04-28 Bruno Guay Sécurité des projets informatiques
 
G Presentation 0802 Paris
G Presentation 0802 ParisG Presentation 0802 Paris
G Presentation 0802 Paris
 

Andere mochten auch

OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...
OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...
OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...
Fing
 
Revuepresse09
Revuepresse09Revuepresse09
Revuepresse09
ramondiaz
 
Las Energias
Las EnergiasLas Energias
Las Energias
Aranchaa
 
Busco una mujer
Busco una mujerBusco una mujer
Busco una mujer
gloria
 
Hip Hop
Hip HopHip Hop
Hip Hop
kenomc
 
08 perú hoy valderrama 2009 a
08 perú hoy valderrama 2009 a08 perú hoy valderrama 2009 a
08 perú hoy valderrama 2009 a
Indira Florian
 
Código abierto y Cloud Computing
Código abierto y Cloud ComputingCódigo abierto y Cloud Computing
Código abierto y Cloud Computing
hdanniel
 

Andere mochten auch (20)

Le manifeste agile e(s)t l’opium du peuple
Le manifeste agile e(s)t l’opium du peupleLe manifeste agile e(s)t l’opium du peuple
Le manifeste agile e(s)t l’opium du peuple
 
La fin de la hiérarchie
La fin de la hiérarchieLa fin de la hiérarchie
La fin de la hiérarchie
 
OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...
OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...
OPEN DATA WEEK // Présentation de projets : Fluidifier les partenariats par u...
 
Truco contra las quemaduras
Truco contra las quemadurasTruco contra las quemaduras
Truco contra las quemaduras
 
Salud Laboral
Salud LaboralSalud Laboral
Salud Laboral
 
Revuepresse09
Revuepresse09Revuepresse09
Revuepresse09
 
Las Energias
Las EnergiasLas Energias
Las Energias
 
Poême la vie en théorèmes
Poême la vie en théorèmesPoême la vie en théorèmes
Poême la vie en théorèmes
 
Busco una mujer
Busco una mujerBusco una mujer
Busco una mujer
 
Hip Hop
Hip HopHip Hop
Hip Hop
 
Un backlog public - Agile France 2012
Un backlog public - Agile France 2012 Un backlog public - Agile France 2012
Un backlog public - Agile France 2012
 
De Tarracone Exhibitio Photographica
De Tarracone Exhibitio PhotographicaDe Tarracone Exhibitio Photographica
De Tarracone Exhibitio Photographica
 
Dossier de présentation cie 2016
Dossier de présentation cie 2016Dossier de présentation cie 2016
Dossier de présentation cie 2016
 
08 perú hoy valderrama 2009 a
08 perú hoy valderrama 2009 a08 perú hoy valderrama 2009 a
08 perú hoy valderrama 2009 a
 
Dominios de Internet
Dominios de InternetDominios de Internet
Dominios de Internet
 
Propuesta metodologica matematic
Propuesta metodologica matematicPropuesta metodologica matematic
Propuesta metodologica matematic
 
Connie CV
Connie CVConnie CV
Connie CV
 
XebiConFr 15 - À la découverte des mécanismes internes de Cassandra
XebiConFr 15 - À la découverte des mécanismes internes de Cassandra XebiConFr 15 - À la découverte des mécanismes internes de Cassandra
XebiConFr 15 - À la découverte des mécanismes internes de Cassandra
 
Conversatorio USMP
Conversatorio USMPConversatorio USMP
Conversatorio USMP
 
Código abierto y Cloud Computing
Código abierto y Cloud ComputingCódigo abierto y Cloud Computing
Código abierto y Cloud Computing
 

Ähnlich wie Open XKE - Maîtrisez votre dette technique par Nicolas Jozwiak

Pmilq colloque 2018 r. brassard la qualite totale par la gestion des risques
Pmilq colloque 2018 r. brassard la qualite totale par la gestion des risquesPmilq colloque 2018 r. brassard la qualite totale par la gestion des risques
Pmilq colloque 2018 r. brassard la qualite totale par la gestion des risques
PMI Lévis-Québec
 
Conférence #nwx2014 - Nicolas Saillard - Agilité en SSII
Conférence #nwx2014 - Nicolas Saillard - Agilité en SSIIConférence #nwx2014 - Nicolas Saillard - Agilité en SSII
Conférence #nwx2014 - Nicolas Saillard - Agilité en SSII
Normandie Web Xperts
 
Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...
Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...
Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...
PMI Lévis-Québec
 
2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec
2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec
2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec
PMI Lévis-Québec
 

Ähnlich wie Open XKE - Maîtrisez votre dette technique par Nicolas Jozwiak (20)

Pmilq colloque 2018 r. brassard la qualite totale par la gestion des risques
Pmilq colloque 2018 r. brassard la qualite totale par la gestion des risquesPmilq colloque 2018 r. brassard la qualite totale par la gestion des risques
Pmilq colloque 2018 r. brassard la qualite totale par la gestion des risques
 
Transformation des pratiques lors de la période de confinement due à la COVID-19
Transformation des pratiques lors de la période de confinement due à la COVID-19Transformation des pratiques lors de la période de confinement due à la COVID-19
Transformation des pratiques lors de la période de confinement due à la COVID-19
 
Cours 5_Gestion de projets.ppt
Cours 5_Gestion de projets.pptCours 5_Gestion de projets.ppt
Cours 5_Gestion de projets.ppt
 
Cours 5_Gestion de projets Cours 5_Gestion de projets.ppt
Cours 5_Gestion de projets Cours 5_Gestion de projets.pptCours 5_Gestion de projets Cours 5_Gestion de projets.ppt
Cours 5_Gestion de projets Cours 5_Gestion de projets.ppt
 
Introduction scrum
Introduction scrumIntroduction scrum
Introduction scrum
 
Services & Contrats Agiles
Services & Contrats AgilesServices & Contrats Agiles
Services & Contrats Agiles
 
Surmonter les anti-patrons culturels nuisant à DevOps
Surmonter les anti-patrons culturels nuisant à DevOpsSurmonter les anti-patrons culturels nuisant à DevOps
Surmonter les anti-patrons culturels nuisant à DevOps
 
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
 
Methodologies agiles
Methodologies agilesMethodologies agiles
Methodologies agiles
 
2001-03-29 Renée Thibeault Terminer vos projets en beauté
2001-03-29 Renée Thibeault Terminer vos projets en beauté2001-03-29 Renée Thibeault Terminer vos projets en beauté
2001-03-29 Renée Thibeault Terminer vos projets en beauté
 
La Conduite de projet
La Conduite de projetLa Conduite de projet
La Conduite de projet
 
Conférence #nwx2014 - Nicolas Saillard - Agilité en SSII
Conférence #nwx2014 - Nicolas Saillard - Agilité en SSIIConférence #nwx2014 - Nicolas Saillard - Agilité en SSII
Conférence #nwx2014 - Nicolas Saillard - Agilité en SSII
 
Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...
Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...
Pmilq colloque 2018 e. maquennehan la gestion de la valeur mettons la en prat...
 
Introduction à la méthodologie Prince2
Introduction à la méthodologie Prince2Introduction à la méthodologie Prince2
Introduction à la méthodologie Prince2
 
2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec
2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec
2015-04-28 Paquet Rochette Agilité organisationnelle - Revenu Québec
 
Reprise projet Drupal Drupagora2013
Reprise projet Drupal Drupagora2013Reprise projet Drupal Drupagora2013
Reprise projet Drupal Drupagora2013
 
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
 
Implémentation d'un nouveau système d'information pour la comptabilité généra...
Implémentation d'un nouveau système d'information pour la comptabilité généra...Implémentation d'un nouveau système d'information pour la comptabilité généra...
Implémentation d'un nouveau système d'information pour la comptabilité généra...
 
Methode Agile
Methode Agile Methode Agile
Methode Agile
 
Management de projet (agilité et design thinking)
Management de projet (agilité et design thinking)Management de projet (agilité et design thinking)
Management de projet (agilité et design thinking)
 

Mehr von Publicis Sapient Engineering

Mehr von Publicis Sapient Engineering (20)

XebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humain
XebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humainXebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humain
XebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humain
 
Xebicon'18 - IoT: From Edge to Cloud
Xebicon'18 - IoT: From Edge to CloudXebicon'18 - IoT: From Edge to Cloud
Xebicon'18 - IoT: From Edge to Cloud
 
Xebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveur
Xebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveurXebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveur
Xebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveur
 
XebiCon'18 - Modern Infrastructure
XebiCon'18 - Modern InfrastructureXebiCon'18 - Modern Infrastructure
XebiCon'18 - Modern Infrastructure
 
XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...
XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...
XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...
 
XebiCon'18 - Des notebook pour le monitoring avec Zeppelin
XebiCon'18 - Des notebook pour le monitoring avec Zeppelin XebiCon'18 - Des notebook pour le monitoring avec Zeppelin
XebiCon'18 - Des notebook pour le monitoring avec Zeppelin
 
XebiCon'18 - Event Sourcing et RGPD, incompatibles ?
XebiCon'18 - Event Sourcing et RGPD, incompatibles ?XebiCon'18 - Event Sourcing et RGPD, incompatibles ?
XebiCon'18 - Event Sourcing et RGPD, incompatibles ?
 
XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?
XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?
XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?
 
XebiCon'18 - Boostez vos modèles avec du Deep Learning distribué
XebiCon'18 - Boostez vos modèles avec du Deep Learning distribuéXebiCon'18 - Boostez vos modèles avec du Deep Learning distribué
XebiCon'18 - Boostez vos modèles avec du Deep Learning distribué
 
XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...
XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...
XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...
 
XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !
XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !
XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !
 
XebiCon'18 - Comment fausser l'interprétation de vos résultats avec des dataviz
XebiCon'18 - Comment fausser l'interprétation de vos résultats avec des datavizXebiCon'18 - Comment fausser l'interprétation de vos résultats avec des dataviz
XebiCon'18 - Comment fausser l'interprétation de vos résultats avec des dataviz
 
XebiCon'18 - Le développeur dans la Pop Culture
XebiCon'18 - Le développeur dans la Pop Culture XebiCon'18 - Le développeur dans la Pop Culture
XebiCon'18 - Le développeur dans la Pop Culture
 
XebiCon'18 - Architecturer son application mobile pour la durabilité
XebiCon'18 - Architecturer son application mobile pour la durabilitéXebiCon'18 - Architecturer son application mobile pour la durabilité
XebiCon'18 - Architecturer son application mobile pour la durabilité
 
XebiCon'18 - Sécuriser son API avec OpenID Connect
XebiCon'18 - Sécuriser son API avec OpenID ConnectXebiCon'18 - Sécuriser son API avec OpenID Connect
XebiCon'18 - Sécuriser son API avec OpenID Connect
 
XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...
XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...
XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...
 
XebiCon'18 - Spark NLP, un an après
XebiCon'18 - Spark NLP, un an aprèsXebiCon'18 - Spark NLP, un an après
XebiCon'18 - Spark NLP, un an après
 
XebiCon'18 - La sécurité, douce illusion même en 2018
XebiCon'18 - La sécurité, douce illusion même en 2018XebiCon'18 - La sécurité, douce illusion même en 2018
XebiCon'18 - La sécurité, douce illusion même en 2018
 
XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...
XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...
XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...
 
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
 

Open XKE - Maîtrisez votre dette technique par Nicolas Jozwiak

Hinweis der Redaktion

  1. Attention! Before opening this template be sure that you have the following fonts installed: Novecento wide font family (6 free weight) http://typography.synthview.com Abattis Cantarell http://www.fontsquirrel.com/fonts/cantarell Icon Sets Fonts: raphaelicons-webfont.ttf from this page: http://icons.marekventur.de iconic_stroke.ttf from this page: http://somerandomdude.com/work/iconic modernpics.otf from this page: http://www.fontsquirrel.com/fonts/modern-pictograms general_foundicons.ttf, social_foundicons.ttf, accessibility_foundicons.ttf from this page: http://www.zurb.com/playground/foundation-icons Entypo.otf from this page: http://www.fontsquirrel.com/fonts/entypo sosa.ttf from this page: http://www.tenbytwenty.com/sosa.php All fonts are permitted free use in commercial projects