62
Pour passer la crise, rembourser votre dette technique Rémy Sanlaville Expert Sénior en Ingénierie Logicielle Orange Labs [email protected] Freddy Mallet Créateur de Sonar SonarSource [email protected]

Pour passer la crise, rembourser votre dette technique

Embed Size (px)

DESCRIPTION

Présentation donnée en binôme avec Rémy Sanlaville en octobre 2009 sur Genève durant l'Agile Tour.

Citation preview

Page 1: Pour passer la crise, rembourser votre dette technique

Pour passer la crise,rembourser

votre dette technique

Rémy SanlavilleExpert Sénior en Ingénierie LogicielleOrange [email protected]

Freddy MalletCréateur de [email protected]

Page 2: Pour passer la crise, rembourser votre dette technique

� Deux informaticiens qui discutent à la caféteria...

� Des problèmes du momentgrippe A, crise financière…

mais également de NOS problèmesdettes techniques, qualité, chaîne de développement…

� Des réflexions et des solutions pour vous désendetter applicables par tous et donc par vous !

Sonar, Hudson, JIRA, Lean...

Contrat : Ce que vous verrez…

Page 3: Pour passer la crise, rembourser votre dette technique

� PDCA ou d'autres méthodes pour la mise en place d'action d'amélioration continue.

Cf. Session C6 La face cachée de la mesure...

� Méthodes de gestion de projet (Scrum...)

� Les problèmes de communicationsCf. Session B6 Schizophrénie MOA/MOE...

� Tout ce qu'on voulait vous raconter et qu'on aura pas le temps d'aborder... Venez nous rencontrer après pour en discuter !

� Une potion magique pour rembourser toutes vos dettes…

Contrat : Ce que vous ne verrez pas…

Page 4: Pour passer la crise, rembourser votre dette technique

La Une du jour

Grippe A :L'Europe fait face au risque de pandémie

Page 5: Pour passer la crise, rembourser votre dette technique

La grippe porcine : les symptômes

Page 6: Pour passer la crise, rembourser votre dette technique

Difficile de lutter contre la pandémie

ou

Page 7: Pour passer la crise, rembourser votre dette technique

Et si seulement...

Page 8: Pour passer la crise, rembourser votre dette technique

La grippe A en informatique ?

Page 9: Pour passer la crise, rembourser votre dette technique

Nos symptômes ?

Ouille !

Argh !

Aïe !

maman !

Même pas mal !

Page 10: Pour passer la crise, rembourser votre dette technique

La peur du changement…

Page 11: Pour passer la crise, rembourser votre dette technique

Sans une personne on est bloqué

Au fin fond de l'Univers, à des années et des années-lumière de la Terre,Veille celui que le gouvernement intersidéral appelle quand il n'est plusCapable de trouver une solution àses problèmes, quand il ne reste plusAucun espoir :

le Capitaine FLAM !

Page 12: Pour passer la crise, rembourser votre dette technique

Un code pas toujours "propre"

Page 13: Pour passer la crise, rembourser votre dette technique

Un défaut corrigé pour un défaut ajouté

Page 14: Pour passer la crise, rembourser votre dette technique

Peu ou pas de nouvelles versions…

Page 15: Pour passer la crise, rembourser votre dette technique

Ça marche chez moi !

Page 16: Pour passer la crise, rembourser votre dette technique

Et c’est pas mon problème !

Page 17: Pour passer la crise, rembourser votre dette technique

L'application n'est pas testable

Page 18: Pour passer la crise, rembourser votre dette technique

Les tests ne fonctionnent pas sur mon poste

Page 19: Pour passer la crise, rembourser votre dette technique

Je n'ai pas le temps ! Je suis en retard !

Page 20: Pour passer la crise, rembourser votre dette technique

Une journée n'a que 24h

Page 21: Pour passer la crise, rembourser votre dette technique

Syndrome du pompier…

Page 22: Pour passer la crise, rembourser votre dette technique

Il y a quoi dans ma release ?

Page 23: Pour passer la crise, rembourser votre dette technique

Quels sont vos symptômes ?

Page 24: Pour passer la crise, rembourser votre dette technique

La Dette Technique

Page 25: Pour passer la crise, rembourser votre dette technique

Syndrome du WTFs/minute

Page 26: Pour passer la crise, rembourser votre dette technique

Dette technique : maladie mortelle ?

Le coût d'ajout d'une fonctionnalité augmente au fil du temps jusqu'à devenir intolérable

Page 27: Pour passer la crise, rembourser votre dette technique

De la dette au surendettement

Page 28: Pour passer la crise, rembourser votre dette technique

Il faut rendre visible le surendettement technique

Etes-vous surendetté ?

Page 29: Pour passer la crise, rembourser votre dette technique

Les outils de premier niveau

Page 30: Pour passer la crise, rembourser votre dette technique

Est-ce suffisant ?

Page 31: Pour passer la crise, rembourser votre dette technique

Les outils de deuxième niveau

Page 32: Pour passer la crise, rembourser votre dette technique

Docteur, pourquoi j'ai mal ?

� Un symptôme est une alarme

� Un symptôme n'est pas une cause

� Un symptôme demande un diagnostic

� Un symptôme appelle un plan d'actions

Page 33: Pour passer la crise, rembourser votre dette technique

Les 7 péchés capitaux du développeur

Page 34: Pour passer la crise, rembourser votre dette technique

La Dette TechniqueDémo avec Sonar

Page 35: Pour passer la crise, rembourser votre dette technique

Reprenons de la hauteur

Page 36: Pour passer la crise, rembourser votre dette technique

La Dette TechniqueD'autres causes ?

Page 37: Pour passer la crise, rembourser votre dette technique

Y a-t-il d'autres causes ?

Page 38: Pour passer la crise, rembourser votre dette technique

Du code à la chaîne de développement

Code sourc

e

Chaîn

e d

e d

éve

loppem

ent

Page 39: Pour passer la crise, rembourser votre dette technique

Votre build est-il reproductible ?

ou ou

Page 40: Pour passer la crise, rembourser votre dette technique

Supervision du build ?

Page 41: Pour passer la crise, rembourser votre dette technique

Supervision du build ?

Page 42: Pour passer la crise, rembourser votre dette technique

Supervision du build ?

Hudson's growth charthttp://f.hatena.ne.jp/images/fotolife/s/ssogabe/20090506/20090506081325.png

Page 43: Pour passer la crise, rembourser votre dette technique

Intégration continue

http://www.agitar.com/solutions/why_unit_testing.html

Page 44: Pour passer la crise, rembourser votre dette technique

Etes-vous "Stop the Line" ?

http://www.agile-swiss.org/wiki/index.php?title=Integration_continue

ou

Page 45: Pour passer la crise, rembourser votre dette technique

Etes-vous "Stop the Line" ?

Page 46: Pour passer la crise, rembourser votre dette technique

Votre fréquence de commit ?

ou

Lundi Mardi Mercredi

09:00

11:00

14:00

17:0018:00

S41 S42 S43

Page 47: Pour passer la crise, rembourser votre dette technique

Supervision de la Gestion de Conf. ?

http://www.life-ends.com/at/johloemoe/developers.html

Page 48: Pour passer la crise, rembourser votre dette technique

Où en est votre Tracker ?

Page 49: Pour passer la crise, rembourser votre dette technique

Quelles sont vos priorités ?

Page 50: Pour passer la crise, rembourser votre dette technique

Votre fréquence de release ?

ouProduction

Itération

toutes les deux semaines

1 fois par an plusieurs fois par an

Page 51: Pour passer la crise, rembourser votre dette technique

La Dette TechniqueManagement

de la dette

Page 52: Pour passer la crise, rembourser votre dette technique

Management de la dette

Un robinet qui goutte4 litres par heures, soit 35 000 litres par an soit 35 m3 sur ma facture annuelle !

Un mince filet d’eau16 litres par heures, soit 140 000 litres par ansoit 140 m3 sur ma facture annuelle !

Une chasse d’eau qui fuit25 litres par heures, soit 220 000 litres par an soit 220 m3 sur ma facture annuelle !consommation annuelle d’une famille de 5 personnes

Page 53: Pour passer la crise, rembourser votre dette technique

Le gaspillage au quotidien

Combien d'argent perdez-vous à cause de votre dette technique ?

Page 54: Pour passer la crise, rembourser votre dette technique

Dictature des nouvelles fonctionnalités

Page 55: Pour passer la crise, rembourser votre dette technique

Endetté ou Surendetté ?

http://www.xprogramming.com/xpmag/BigVisibleCharts.htm

# S

céna

rios

Itérations

ScénarioModificationDéfaut

# S

céna

rios

Itérations

ou

Page 56: Pour passer la crise, rembourser votre dette technique

La Dette TechniqueConclusion

Page 57: Pour passer la crise, rembourser votre dette technique

D'où vient la dette technique ?

Code SourceCode SourceCode SourceCode Source

ChaChaChaChaîîîîne de ne de ne de ne de

DDDDééééveloppementveloppementveloppementveloppement

Management de la dette

Management des équipes

Page 58: Pour passer la crise, rembourser votre dette technique

Vous n'avez que vos yeux pour pleurer ?

C'est l'humain qui trouveles remèdes !

De l'importance de formerles personnes

Page 59: Pour passer la crise, rembourser votre dette technique

Bibliographie

� Lean

� Lean Primerhttp://www.leanprimer.com/downloads/lean_primer.pdf

� The 7 Software Development Wasteshttp://agilesoftwaredevelopment.com/blog/jackmilunsky

� The Seven Wasteshttp://agileinaflash.blogspot.com/2009/02/seven-wastes.html

� 5Shttp://fr.wikipedia.org/wiki/5S

� Autonomationhttp://en.wikipedia.org/wiki/Autonomation

Page 60: Pour passer la crise, rembourser votre dette technique

Bibliographie

� Qualité de code

� A Solid Definition for Quality in Softwarehttp://javadots.blogspot.com/2008/07/finally-definition-for-good-program.html

� Programmers top 10 sentenceshttp://www.makinggoodsoftware.com/2009/09/01/programmers-top-10-sentences/

� In pursuit of code quality: Monitoring cyclomatic complexityhttp://www.ibm.com/developerworks/java/library/j-cq03316/index.html?S_TACT=105AGX02&S_CMP=EDU

� A Lesson In Low-Defect Softwarehttp://www.sqlite.org/talks/wroclaw-20090310.pdf

� Meet My Dog, Patcheshttp://www.gamasutra.com/view/feature/4111/dirty_coding_tricks.php?print=1

� An Idea Whose Time Has Come and Gone?http://www2.computer.org/cms/Computer.org/ComputingNow/homepage/2009/0709/rW_SO_Viewpoints.pdf

Page 61: Pour passer la crise, rembourser votre dette technique

Bibliographie

� Intégration Continue, Build, Tests, Gestion de Conf…

� Speed up your buildbox, Part I: Introduction & Harddiskhttp://schneide.wordpress.com/2009/09/15/speed-up-your-buildbox-part-i-introduction-harddisk/

� Ruining your Test Automation Strategyhttp://blog.objectmentor.com/articles/2009/09/29/ruining-your-test-automation-strategy

� Deployment is the Goalhttp://www.infoq.com/articles/deployment-is-the-goal

� Version Control for Multiple Agile Teamshttp://www.infoq.com/articles/agile-version-control

Page 62: Pour passer la crise, rembourser votre dette technique

ROTI (Return On Time Invested)

� 5 doigts : ExcellenteSuper c'est exactement ce qu'il me fallait !

� 4 doigts : BonneTrès intéressant, j’ai gagné plus que le temps que j’y ai passé.

� 3 doigts : Juste MoyenneIntéressant, sans plus. Je n’ai pas perdu mon temps.

� 2 doigts : UtileBof ! J'ai perdu du temps.

� 1 doigt : InutileJe n'ai rien appris. J’ai vraiment perdu mon temps