Développement piloté par les tests - DDD

2 219 vues

Publié le

Présentation à l'Agile Tour - Nantes - 14 octobre 2009 - Eric Mignot / Bob

Publié dans : Technologie, Voyages, Business
0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
2 219
Sur SlideShare
0
Issues des intégrations
0
Intégrations
46
Actions
Partages
0
Téléchargements
56
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Développement piloté par les tests - DDD

  1. 1. Développement piloté par les tests Bob - Pyxis Technologies
  2. 2. Moi, quand j'ai commencé à bosser... ...ça se passait comme ça :
  3. 3. Quand j'y repense... ...on écrivait l'application plusieurs fois :-(
  4. 4. Quand j'y repense... ...on écrivait l'application plusieurs fois :-(
  5. 5. Quand j'y repense... ...on écrivait l'application plusieurs fois :-(
  6. 6. Quand j'y repense... ...on écrivait l'application plusieurs fois :-(
  7. 7. Ca marchait pas si mal On faisait des nuits uniquement vers la fin On arrivait à reporter les fautes sur les clients On s'en sortait grâce aux avenants
  8. 8. Ah bien sur... on était fatigué on était stressé on croisait les doigts à chaque livraison ... on envisageait sérieusement d'aller élever des chèvres
  9. 9. En plus... ...c'était la faute à personne
  10. 10. En plus... ...c'était la faute à personne
  11. 11. En plus... ...c'était la faute à personne
  12. 12. En plus... ...c'était la faute à personne
  13. 13. Autrement dit... ...la faute au client !
  14. 14. STOP !!! C'était vraiment n'im-por-te quoi
  15. 15. Souvent, il y a eu un choc, un déclic... Certains ont lu un livre D'autres ont pris une bière avec des amis Pour d'autres ça a été la nuit de trop
  16. 16. Par exemple, il y a ceux... ...qui ont lu ce livre une première fois... ...puis une deuxième ...puis une troisième ...
  17. 17. Il y a aussi ceux... ...qui ont lu ce livre une première fois... ...puis une deuxième ...puis une troisième ...
  18. 18. Et il y a ceux... ...qui ont pris ça très au sérieux.
  19. 19. Et il y a ceux... ...qui ont pris ça très au sérieux.
  20. 20. Développement piloté par les tests Bob - Pyxis Technologies
  21. 21. Une idée maîtresse Faire collaborer les différents intervenants
  22. 22. Si on simplifie un brin... ...on rencontre principalement 3 types d'intervenants Ceux qui "spécifient" Ceux qui "codent" Ceux qui "testent"
  23. 23. Malheureusement, la plupart du temps Ils ne parlent pas le même langage Ils ne travaillent pas ensemble Ils ne se connaissent parfois même pas
  24. 24. Retroussons nos manches ! Il faut les aider à travailler ensemble à rendre le travail de chacun utile à se sentir ensemble dans cette aventure à prendre du plaisir ?
  25. 25. Bonne nouvelle ! On a inventé tout ce qu'il faut pour ça :-)
  26. 26. Et si on ne parlait plus de "tests"... Une spécification évoque un comportement générique Un test décrit un exemple d'utilisation Un test peut être un programme qui exécute le code
  27. 27. ...mais de spécifications exécutables ?? Contient des exemples Liée au code Lieu de rencontre et d'échanges
  28. 28. Alors ? Test ou Spec ? Vous les lancez pour vérifier une non-régression ? -> on dirait des tests Vous les écrivez pour décrire un comportement attendu ? -> on dirait des specs
  29. 29. Test -Driven Development Cela veut dire plusieurs choses Spécifier les comportements via des exemples Lier les spécifications au code de production Ecrire des tests avant le code Echanger des idées en écrivant des tests Partager un résultat attendu avant de coder Faire des tests les stars Se mettre d'accord sur ce que l'on veut puis coder Capitaliser les conversations dans des tests Documenter l'utilisation d'un code dans des tests Se lever le matin et penser aux tests que l'on va écrire Se coucher le soir et penser aux tests que l'on a fait passer ...
  30. 30. Vous entendrez souvent parler... ...du "cycle" du TDD
  31. 31. Une vision simple du cycle 1 : Test écrire un test et voir qu'il échoue il faut ajouter au code la valeur décrite dans le test 2 : Code faire passer le test rapidement 3 : Refactor on n'ajoute pas de fonctionnalité on améliore la qualité interne du code
  32. 32. TDD & Qualité Qu'est-ce qu'un logiciel de qualité ?
  33. 33. TDD & Qualité Quel est notre engagement en tant que professionnels de l'informatique ?
  34. 34. TDD & Qualité
  35. 35. "Faire émerger le modèle pendant le refactoring" Pendant un cours de TDD, les participants s'interrogent Dois-je écrire des tests pour les classes qui émergent en refactoring ? Si je le fais, ne suis-je pas en train d'éluder le refactoring pour continuer ?
  36. 36. Que pensez-vous de ça ?
  37. 37. Et si je le dessine comme ça ? ça vous rappelle quelque chose ?
  38. 38. "Test-Driven Scrum" ?
  39. 39. "Show me the code!"
  40. 40. "Show me the code!"
  41. 41. Merci Bons tests ! ;-)

×