Más contenido relacionado La actualidad más candente (13) Similar a Esclave de votre dette technique? (20) Esclave de votre dette technique?1. Esclave de votre
dette technique ?
Agile Tour Québec
6 novembre 2013
© 2013 Elapse Technologies
Image par JefferyTurner / Flickr
3. Félix-Antoine
Bourbonnais
Ing. jr, PSM-I, M.Sc.
Formateur et Coach
Tests
Qualité
Pascal Roy
Code propre
Ing., PMP, PSM-I.
Vice-président et Coach
Agilité
Scrum et
Pratiques de développement
Architecture
Design testable
© 2013 Elapse Technologies
TDD
BDD et ATDD
7. C’est quoi ?
Mais au moins, avec une carte de
crédit, vous pouvez connaître
exactement votre
niveau d’endettement
Image par barsen / Flickr
List designed by Nicholas Menghini from The Noun Project
8. La dette technique est tout ce qui
rend le code difficile à
La
Image par jsj1771 / Flickr
manipuler
viscosité du code !
10. Imaginez un monde sans…
Ah ouin ça
fait ça ?
C’est pas ma
faute !
C’est où ça ?
Ça va faire la
job!
Hey! Touche
pas à ça !
C’tait pas réglé ce
bogue là ?!?
Comprends pas…
Donnez donc ça au
gars qui l’a fait….
© 2013 Elapse Technologies
Ça va toucher
X, Y, Z,
la BD puis la GUI
J’sais pas pourquoi
mais ça marche
Mhehhh!
11. Exemples: causes et symptômes
Architecture
couplée
Duplications
SQL dans
le UI
Pas d’abstraction
Petite rustine
(patch)
Plein de
méthodes
statiques
Spaghetti
Code qui ne
parle pas…
Domaine
anémique
On se dépêche à
corriger la tonne
de bogues
© 2013 Elapse Technologies
Mauvais
nommage
Code pas propre
13. © 2013 Elapse Technologies
POURQUOI ACCUMULONS-NOUS DE LA DETTE?
15. Facteurs techniques
influençant la dette technique ?
Les outils
changent
souvent
Manque
d’expertise
Manque de
rigueur et de
discipline
Pas de tests
Réusinage
tardif ou
manquant
Oui mais ça
marche…
Cowboy
coding
© 2013 Elapse Technologies
Architecture
Stratégie de
tests
16. Facteurs de gestion
influençant la dette technique ?
Pression d’affaires
Estimés imposés ou
irréalistes
Manque de
collaboration
Non confiance
envers les
développeurs
Ignorer les
avertissements de
l’équipe
Considérer les
développeurs
comme des
ressources…
Peur des
développeurs
reliée à la relation
de pouvoir
Pas d’emphase sur
la qualité interne
© 2013 Elapse Technologies
Méconnaissance
de la dette
20. © 2013 Elapse Technologies
Votre promesse à vos clients est
basée sur quelle courbe ?
21. Compétitivité et prédictibilité
Vous pensez avoir…
Vous ignorez la dette…
Vous avez…
© 2013 Elapse Technologies
Agilité
Rétroaction
Vous voulez…
Image par nasmac, willg willg.photography, Jemal / Flickr
Vous payez votre dette…
Vous avez…
22. Développeurs:
Aimez-vous vivre cela ?
Des heures de
déverminage
sous pression
Stress des
livraisons
Impression de
tourner en rond
Ce qui devrait
prendre 5
minutes prend 3h
Confiance dans le
travail produit ?
© 2013 Elapse Technologies
S’arracher les
cheveux pour
comprendre
23. En résumé…
-- Attribué à Marty Cagan @Agile2013
Image par michael pollak / Flickr
© 2013 Elapse Technologies
« If you don't spend 20% of your time
paying down technical debt, you'll spend
100% chasing problems »
27. Outils pour la repérer et la communiquer ?
Outils d’analyse
• Duplication
• Métriques
• Respect des normes
© 2013 Elapse Technologies
Pratiques
• TDD
• Revues
• Binômes
Intégration continue
28. Un défi
© 2013 Elapse Technologies
Demain, prenez 30 minutes
pour rouler un
outil d’analyse sur votre
code…
31. Écrire vite ou lire vite ?
temps à lire du code
qu’à en écrire…
© 2013 Elapse Technologies
Un développeur passe plus de
34. Pour être prêt à y faire face
Collaborer
avoir des
tests
propriété du code
YAGNI et
DRY
architecturaux
• SOLID
• MVC/MVP/MVVM
• Abstraction-Instabilité
• Tell Don’t Ask
•…
© 2013 Elapse Technologies
Se vacciner contre la peur
Partager la
Maîtriser les
principes
35. (valorisation de la qualité interne)
Image par Alan Cleaver / Flickr
© 2013 Elapse Technologies
Évaluez les développeurs en
fonction de la qualité du code
36. Le développement logiciel…
C’est un marathon
pas un sprint courte piste !
Image par Peter Mooney / Flickr
© 2013 Elapse Technologies
Ne créez pas un contexte
propice à la dette…
37. Ne pas négocier la dette
Aimeriez-vous cela?
© 2013 Elapse Technologies
On pourrait sauver du
temps en sautant cette
étape…
38. De bonnes raisons d’en créer?
© 2013 Elapse Technologies
Cela reposerait sur le principe qu’il
serait plus long de bien faire…
40. Communiquez et écoutez !
Relevé de
dette
© 2013 Elapse Technologies
Regarder le produit
final n’est pas
suffisant
Image de stockimages / FreeDigitalPhotos.net
List designed by Nicholas Menghini from The Noun Project
41. Comment ??
© 2013 Elapse Technologies
Maintenant vous devez vous
entendre avec votre créancier…
44. © 2013 Elapse Technologies
Comment planifier votre
réusinage?
45. Question
© 2013 Elapse Technologies
Avez-vous de la difficulté à passer
un User Story technique
à votre PO ?
46. Ce n’est pas un User Story
1
© 2013 Elapse Technologies
Ne devrait pas être traité comme
un User Story
47. En pratique…
Ce qui n’est pas au niveau du PO
© 2013 Elapse Technologies
C’est une tâche dans
un User Story
48. Ça ne sera pas fini demain!
2
© 2013 Elapse Technologies
Petit à petit et en continu
49. Constat
© 2013 Elapse Technologies
Le coût de la dette sera plus élevé
sur ce que vous touchez souvent
50. Suivre le principe…
(pour chaque Story)
Tout le monde…
Continuellement…
© 2013 Elapse Technologies
Laisser le terrain plus propre
que quand vous y êtes arrivé
51. Pas de Big Bang !
© 2013 Elapse Technologies
Image de imagerymajestic / FreeDigitalPhotos.net
Image par Shalf / Flickr
55. Vous avez deux choix…
© 2013 Elapse Technologies
Image de wwarby et Arlington County / Flickr
56. Si vous préférez faire l’autruche…
Image de Paragon Inspections
© 2013 Elapse Technologies
Trouvez-vous que c’est
une bonne idée ?
57. « La seule façon d’aller vite
est de bien faire »
-- Robert C. Martin
Image de Paul Bica / Flickr
58. Ne demandez pas la permission…
prenez-la !
© 2013 Elapse Technologies
C’est votre responsabilité de
limiter la dette pour aller
rapidement
59. « Patrimonialite aiguë »
Vous ne voulez pas l’attraper!
Patrimonialite n.f.
Infection du système vieillissant
Image de Y / Flickr
© 2013 Elapse Technologies
Lavez-vous les mains
62. Elapse Technologies
Votre allié en développement logiciel Agile
Formation
Accompagnement (coaching)
Agilité (Scrum, Lean, XP)
Qualité et tests automatisés
Architecture Agile
Pratiques de développement
© 2013 Elapse Technologies
Conseils et diagnostics