Pour passer la crise, rembourser votre dette technique

1,303 views
1,130 views

Published on

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

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,303
On SlideShare
0
From Embeds
0
Number of Embeds
29
Actions
Shares
0
Downloads
23
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Pour passer la crise, rembourser votre dette technique

  1. 1. Pour passer la crise, rembourser votre dette technique Freddy Mallet Rémy Sanlaville Créateur de Sonar Expert Sénior en Ingénierie SonarSource Logicielle freddy.mallet@sonarsource.com Orange Labs remy.sanlaville@orange-ftgroup.com
  2. 2. Contrat : Ce que vous verrez… Deux informaticiens qui discutent à la caféteria... Des problèmes du moment grippe A, crise financière… mais également de NOS problèmes dettes 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...
  3. 3. Contrat : Ce que vous ne verrez pas… 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 communications Cf. 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…
  4. 4. La Une du jour Grippe A : L'Europe fait face au risque de pandémie
  5. 5. La grippe porcine : les symptômes
  6. 6. Difficile de lutter contre la pandémie ou
  7. 7. Et si seulement...
  8. 8. La grippe A en informatique ?
  9. 9. Nos symptômes ? Ouille ! Aïe ! Argh ! maman ! Même pas mal !
  10. 10. La peur du changement…
  11. 11. 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 plus Capable de trouver une solution à ses problèmes, quand il ne reste plus Aucun espoir : le Capitaine FLAM !
  12. 12. Un code pas toujours "propre"
  13. 13. Un défaut corrigé pour un défaut ajouté
  14. 14. Peu ou pas de nouvelles versions…
  15. 15. Ça marche chez moi !
  16. 16. Et c’est pas mon problème !
  17. 17. L'application n'est pas testable
  18. 18. Les tests ne fonctionnent pas sur mon poste
  19. 19. Je n'ai pas le temps ! Je suis en retard !
  20. 20. Une journée n'a que 24h
  21. 21. Syndrome du pompier…
  22. 22. Il y a quoi dans ma release ?
  23. 23. Quels sont vos symptômes ?
  24. 24. La Dette Technique
  25. 25. Syndrome du WTFs/minute
  26. 26. Dette technique : maladie mortelle ? Le coût d'ajout d'une fonctionnalité augmente au fil du temps jusqu'à devenir intolérable
  27. 27. De la dette au surendettement
  28. 28. Etes-vous surendetté ? Il faut rendre visible le surendettement technique
  29. 29. Les outils de premier niveau
  30. 30. Est-ce suffisant ?
  31. 31. Les outils de deuxième niveau
  32. 32. 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
  33. 33. Les 7 péchés capitaux du développeur
  34. 34. La Démo avec Sonar Dette Technique
  35. 35. Reprenons de la hauteur
  36. 36. D'autres causes ? La Dette Technique
  37. 37. Y a-t-il d'autres causes ?
  38. 38. Du code à la chaîne de développement Chaîne de développement Code source
  39. 39. Votre build est-il reproductible ? ou ou
  40. 40. Supervision du build ?
  41. 41. Supervision du build ?
  42. 42. Supervision du build ? Hudson's growth chart http://f.hatena.ne.jp/images/fotolife/s/ssogabe/20090506/20090506081325.png
  43. 43. Intégration continue http://www.agitar.com/solutions/why_unit_testing.html
  44. 44. Etes-vous "Stop the Line" ? ou http://www.agile-swiss.org/wiki/index.php?title=Integration_continue
  45. 45. Etes-vous "Stop the Line" ?
  46. 46. Votre fréquence de commit ? 18:00 17:00 14:00 11:00 ou 09:00 Lundi Mardi Mercredi S41 S42 S43
  47. 47. Supervision de la Gestion de Conf. ? http://www.life-ends.com/at/johloemoe/developers.html
  48. 48. Où en est votre Tracker ?
  49. 49. Quelles sont vos priorités ?
  50. 50. Votre fréquence de release ? Itération toutes les deux semaines Production ou 1 fois par an plusieurs fois par an
  51. 51. Management de la dette La Dette Technique
  52. 52. Management de la dette Un robinet qui goutte 4 litres par heures, soit 35 000 litres par an soit 35 m3 sur ma facture annuelle ! Un mince filet d’eau 16 litres par heures, soit 140 000 litres par an soit 140 m3 sur ma facture annuelle ! Une chasse d’eau qui fuit 25 litres par heures, soit 220 000 litres par an soit 220 m3 sur ma facture annuelle ! consommation annuelle d’une famille de 5 personnes
  53. 53. Le gaspillage au quotidien Combien d'argent perdez-vous à cause de votre dette technique ?
  54. 54. Dictature des nouvelles fonctionnalités
  55. 55. Endetté ou Surendetté ? Scénario Modification Défaut # Scénarios # Scénarios ou Itérations Itérations http://www.xprogramming.com/xpmag/BigVisibleCharts.htm
  56. 56. La Conclusion Dette Technique
  57. 57. D'où vient la dette technique ? Management des équipes Code Source Chaî Chaîne de Développement … Management de la dette
  58. 58. Vous n'avez que vos yeux pour pleurer ? C'est l'humain qui trouve les remèdes ! De l'importance de former les personnes
  59. 59. Bibliographie Lean Lean Primer http://www.leanprimer.com/downloads/lean_primer.pdf The 7 Software Development Wastes http://agilesoftwaredevelopment.com/blog/jackmilunsky The Seven Wastes http://agileinaflash.blogspot.com/2009/02/seven-wastes.html 5S http://fr.wikipedia.org/wiki/5S Autonomation http://en.wikipedia.org/wiki/Autonomation
  60. 60. Bibliographie Qualité de code A Solid Definition for Quality in Software http://javadots.blogspot.com/2008/07/finally-definition-for-good-program.html Programmers top 10 sentences http://www.makinggoodsoftware.com/2009/09/01/programmers-top-10-sentences/ In pursuit of code quality: Monitoring cyclomatic complexity http://www.ibm.com/developerworks/java/library/j-cq03316/index.html?S_TACT=105AGX02&S_CMP=EDU A Lesson In Low-Defect Software http://www.sqlite.org/talks/wroclaw-20090310.pdf Meet My Dog, Patches http://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
  61. 61. Bibliographie Intégration Continue, Build, Tests, Gestion de Conf… Speed up your buildbox, Part I: Introduction & Harddisk http://schneide.wordpress.com/2009/09/15/speed-up-your-buildbox-part-i-introduction-harddisk/ Ruining your Test Automation Strategy http://blog.objectmentor.com/articles/2009/09/29/ruining-your-test-automation-strategy Deployment is the Goal http://www.infoq.com/articles/deployment-is-the-goal Version Control for Multiple Agile Teams http://www.infoq.com/articles/agile-version-control
  62. 62. ROTI (Return On Time Invested) 5 doigts : Excellente Super c'est exactement ce qu'il me fallait ! 4 doigts : Bonne Très intéressant, j’ai gagné plus que le temps que j’y ai passé. 3 doigts : Juste Moyenne Intéressant, sans plus. Je n’ai pas perdu mon temps. 2 doigts : Utile Bof ! J'ai perdu du temps. 1 doigt : Inutile Je n'ai rien appris. J’ai vraiment perdu mon temps

×