La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

TDD & Legacy By Agile4Techos.

Présentations similaires


Présentation au sujet: "TDD & Legacy By Agile4Techos."— Transcription de la présentation:

1 TDD & Legacy By Agile4Techos

2 Qui sommes nous? Bernard Huguet Luc Jeanniard Johan Martinsson
Cyrille Roy

3 YES, WE TDD Vous verrez Pourquoi le TDD sur du legacy code
Un binôme travaille sur du code réaliste écrit sans test Comment il s'appuie sur le TDD pour  Corriger un bug (Mock) Implémenter une nouvelle fonctionnalité tout en dormant bien la nuit ;o) Vous repartirez avec le sentiment que c'est possible YES, WE TDD

4 NO, WE WON’T Vous ne verrez PAS Beaucoup de slides ;-p
Une Nème justification du TDD Encore le l'exemple de base (string calculator) Toutes les recettes NO, WE WON’T

5 Il faut comprendre le code C’est plus long
Il faut payer un ticket d’entrée : infrastructure Il faut convaincre les équipes et le Mgt Pas toujours applicable? Pas toujours possible? Pas les bon outils . . . Quelles sont les difficultés ques l’on rencontre à tester das du legacy code? 5 Min Time Box Noter les réponses sur un post-it géant Compréhension du code Peur / hésitation

6 UNE VRAIE APPLICATION Traduction Questions Réponses Client lourd
Configuration Utilisateurs Resources Client Q/R Client mi-lourd ServiceQ/R Client U ServiceU - Qui n’a jamais eu de problème à programmer un wizard - Démo rapide en live Stockage Statistiques Client S

7 CORRECTION D’UN BUG

8 TDD TOUJOURS LE MEME CYCLE RED GREEN REFACTOR Write a test that fails
Make the code work Eliminate Redundancy

9 On retient Reproduction du bug avec un test RED, GREEN, REFACTOR
Pas besoin des dépendances externes pour tester Utilisation de doublures (mock, stub) pour s’en affranchir Peu de lancements de l’application Capitalisation C’est pas si difficile !

10 AJOUT DE VALEUR

11 TDD TOUJOURS LE MEME CYCLE RED GREEN REFACTOR Write a test that fails
Make the code work Eliminate Redundancy

12 On retient Approche itérative, aide à la réflexion
RED, GREEN, REFACTOR Refactoring couvert par les tests Utilisation de matcher  Clarté des messages Pas de lancement de l’application ↘ Coût

13 Pourquoi du TDD sur du Legacy code?
Besoin de modifier une application existante Besoin de modifier sans casser le code existant Besoin de tester efficacement les modifications Exemple :  Je veux corriger un bug J’exécute 30 fois le scénario de reproduction pour vérifier si ma correction est valide : long + fastidieux + fatiguant ! Bonnes raisons d'essayer le TDD Pourquoi du TDD sur du Legacy code Besoin de modifier une application existante Besoin de modifier sans casser le code existant Besoin de tester efficacement les modifications Exemple :  Je veux corriger un bug J’exécute 30 fois le scénario de reproduction pour vérifier si ma correction est valide : long + fastidieux + fatiguant ! --> Bonnes raisons d'essayer le TDD sur du legacy code

14 Pourquoi cette session?
TDD sur nouveau code On sait que ça marche On sait faire On se casse tous les dents au début ... et même plus tard ! ;o) Des techniques existent : cf Référence Il faut se jeter à l'eau pour apprendre à nager Après les premiers obstacles ça va vite Pourquoi cette session? TDD sur nouveau code On sait que ça marche On sait faire TDD sur du code existant non testé = Legacy code On se casse tous les dents au début ... et même plus tard ! Des techniques existent Il faut se jeter à l'eau pour apprendre à nager Après les premiers obstacles ça va vite

15 LA REFERENCE

16 Questions By Agile4techos

17 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


Télécharger ppt "TDD & Legacy By Agile4Techos."

Présentations similaires


Annonces Google