SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
lundi 12 octobre 2009
        agiletour.org/fr/at2009_geneve.html




                         B4
     Coding Dojo - Kata sur le pilotage
     par les tests d'acceptances (ATDD)
Emmanuel HUGONNET & Rémy SANLAVILLE
Coding Dojo – Kata sur le pilotage
              par les tests d'acceptances (ATDD)

Rémy Sanlaville                                            Emmanuel Hugonnet
Expert Senior en Ingénierie Logicielle                     Architecture J2EE
remy.sanlaville@gmail.com                                  emmanuel.hugonnet@silverpeas.com
                                                           +33-(0)476248658




                                           www.clubagile.org
Contrat de la session

                    Ce que vous verrez pendant cette session
                      [ 5'] Rapide présentation du coding-dojo

                      [ 5'] Présentation du défi

                      [35'] Codage en binôme avec cuke4duke

                      [15'] Rétrospective




www.clubagile.org
Contrat de la session

                    Ce que vous ne verrez pendant cette session
                    L'intérêt du coding-dojo
                           On The Benefits of Dojo (Arnaud Bailly)

                    Présentation des spécifications exécutables
                          Session Soigner sa schizophrénie MOA / MOE

                    Comment mettre en place un coding-dojo dans sa ville
                        Coding Dojo: un retour d'expérience

                    Comment devenir Chuk Norris


www.clubagile.org
Présentation



www.clubagile.org
Historique



                   Si je veux apprendre le Judo, je vais m'inscrire au dojo du
           coin et y passer une heure par semaine pendant deux ans, au bout
           de quoi j'aurai peut-être envie de pratiquer plus assidument.

                   Si je veux apprendre la programmation objet, mon
           employeur va me trouver une formation de trois jours à Java dans
           le catalogue 2004.

                    Cherchez l'erreur.
                                                         -- Laurent Bossavit


www.clubagile.org
Objectifs


               Chacun doit pouvoir s'améliorer à son rythme
                Le but n'est pas de terminer l'exercice mais bien d'apprendre

                                             • Espace sûr
                                                 – Pas de compétition
                                                 – Collaboration
                                                 – Tout le monde participe
                                             • Apprentissage continu/régulier
                                             • Apprentissage par petits pas
                                             • L’erreur est humaine



www.clubagile.org
Kata




                                         from Dojo@SP (São Paulo)


                               pilote
                    Binôme               Participants
                             co-pilote



www.clubagile.org
Charte Coding Dojo
                                          Kata

                    Objectifs                                  Acteurs

        Présentation      d'une
        solution pour un défi
                                      Un       présentateur     (un    seul     Le secrétaire prend des
                                      programmeur ou un binôme)                 notes lors de la séance. Il
           Le but n'est pas de        présente sa solution du défi. Le défi
                                      est réalisé en entier en TDD.
                                                                                n'intervient pas pendant la
                                                                                phase de développement.
           trouver la meilleure       Il explique continuellement son
                                      cheminement et il affiche sa
           solution mais de           progression         en
                                      fréquemment les tests
                                                                  déroulant

           comprendre         la
           solution proposée par                           L'assistance doit comprendre en tout temps la
           l'animateur.                                    présentation. Un participant peut interrompre
                                                           le présentateur dans le seul cas où il ne
                                                           comprend plus le déroulement de la solution.


www.clubagile.org
Charte Coding Dojo
                                                             Kata
     Règles
              Restructuration du code                                  Le test est au rouge
                    Toute restructuration doit être                               Si le test ne passe pas, le présentateur doit
                    expliqué                                                      expliquer aux participants la raison de
                                                                                  l'échec.
                                                        TDD

                                                Le test est au vert

                                  Le présentateur peut souligner de bonnes ou de mauvaises pratiques


                                  La salle peut interrompre le présentateur dans le seul cas où il ne
                                  comprend plus le déroulement de la solution.…


www.clubagile.org
Défi



www.clubagile.org
Jeu Du Pendu




www.clubagile.org
Jeu Du Pendu v1.0

          Succès en début de partie
                    Soit le mot à trouver "SANGLIER"
                    Et le nombre de coups restants est 6
                    Et le mot affiché est "********"
                    Lorsque je tape la lettre "S"
                    Alors le nombre de coups restants devrait être 6
                    Et le mot affiché devrait être "S*******"


          Coup perdant
                    Soit le mot à trouver "SANGLIER"
                    Et le nombre de coups restants est 6
                    Et le mot affiché est "S*******"
                    Lorsque je tape la lettre "Z"
                    Alors le nombre de coups restants devrait être 5
                    Et le mot affiché devrait être "S*******"

www.clubagile.org
Jeu Du Pendu v1.0

          Succès avec état
                    Soit le mot à trouver "SANGLIER"
                    Et le nombre de coups restants est 5
                    Et le mot affiché est "S*******"
                    Lorsque je tape la lettre "N"
                    Alors le nombre de coups restants devrait être 5
                    Et le mot affiché devrait être "S*N*****"


           Succès avec plusieurs occurrences d'une même lettre
                    Soit le mot à trouver "ALOUETTE"
                    Et le nombre de coups restants est 5
                    Et le mot affiché est "A*******"
                    Lorsque je tape la lettre "T"
                    Alors le nombre de coups restants devrait être 5
                    Et le mot affiché devrait être "A****TT*"

www.clubagile.org
Jeu Du Pendu v1.0

          L'utilisateur tape une lettre déjà proposée
                    Soit le mot à trouver "SANGLIER"
                    Et le nombre de coups restants est 5
                    Et le mot affiché est "S*N*****"
                    Lorsque je tape la lettre "S"
                    Alors le nombre de coups restants devrait être 5
                    Et le mot affiché devrait être "S*N*****"

          Coup perdant avec compteur coups restants à 0
                    Soit le mot à trouver "ALOUETTE"
                    Et le nombre de coups restants est 0
                    Et le mot affiché est "A***ETTE"
                    Lorsque je tape la lettre "S"
                    Alors le nombre de coups restants devrait être 0
                    Et le mot affiché devrait être "A***ETTE"

www.clubagile.org
Codage
                    Le code source est disponible à l'adresse
                    http://github.com/ehsavoie/dojo_agiletour_2009




www.clubagile.org
Rétrospective



www.clubagile.org
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

www.clubagile.org
Annexes



www.clubagile.org
Coding Dojo à Grenoble

           Site web http://clubagile.org/evenements/coding-dojo/




           Liste de diffusion
           http://groups.google.fr/group/cara-dojo
www.clubagile.org
Randori




                                                    from Dojo@SP (São Paulo)


                               pilote
                    Binôme                          Participants
                             co-pilote

                                  On tourne (5 – 7 mn)

www.clubagile.org
Remerciements


      • Pragmatic Dave Thomas
      • Laurent Bossavit
      • Emmanuel Gaillot
      • Alfredo Goldman
      • Hugo Corbucci, Mariana Bravo
      • Membres du Coding Dojo de Grenoble


      Références :
      • CodeKata
      • Coding Dojo @ Agile 2008
      • CodingDojo.org
      • Le Dojo Parisien

www.clubagile.org
merci aux sponsors !

Más contenido relacionado

Similar a Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)

Agilité et modèles de changement
Agilité et modèles de changementAgilité et modèles de changement
Agilité et modèles de changement
Mathieu Gandin
 
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam CranfordAgile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
ENSIBS
 
Bonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meetingBonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meeting
Céline Stauder
 

Similar a Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD) (20)

AT2010 Dojo TDD
AT2010 Dojo TDDAT2010 Dojo TDD
AT2010 Dojo TDD
 
Software Craftsmanship, le métier de faiseurs de logiciels
Software Craftsmanship, le métier de faiseurs de logicielsSoftware Craftsmanship, le métier de faiseurs de logiciels
Software Craftsmanship, le métier de faiseurs de logiciels
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDD
 
Session mons 22 mars
Session mons 22 marsSession mons 22 mars
Session mons 22 mars
 
Développement piloté par les tests - DDD
Développement piloté par les tests - DDDDéveloppement piloté par les tests - DDD
Développement piloté par les tests - DDD
 
Coder propre !
Coder propre !Coder propre !
Coder propre !
 
La solution-a-la-dette-technique
La solution-a-la-dette-techniqueLa solution-a-la-dette-technique
La solution-a-la-dette-technique
 
La solution-a-la-dette-technique
La solution-a-la-dette-techniqueLa solution-a-la-dette-technique
La solution-a-la-dette-technique
 
Ameliorez vous qu ils disaient 2019
Ameliorez vous qu ils disaient 2019Ameliorez vous qu ils disaient 2019
Ameliorez vous qu ils disaient 2019
 
Agilité et modèles de changement
Agilité et modèles de changementAgilité et modèles de changement
Agilité et modèles de changement
 
Kaizen ou l'amélioration continue
Kaizen ou l'amélioration continueKaizen ou l'amélioration continue
Kaizen ou l'amélioration continue
 
'il y avait vraiment du gâteau" , Pair Programming un retour d'expérience
'il y avait vraiment du gâteau" , Pair Programming un retour d'expérience'il y avait vraiment du gâteau" , Pair Programming un retour d'expérience
'il y avait vraiment du gâteau" , Pair Programming un retour d'expérience
 
Iut lyon 1 introduction à l'agilité - 20 juin 2012
Iut lyon 1   introduction à l'agilité - 20 juin 2012Iut lyon 1   introduction à l'agilité - 20 juin 2012
Iut lyon 1 introduction à l'agilité - 20 juin 2012
 
At2009 Coding Dojo ATDD
At2009 Coding Dojo ATDDAt2009 Coding Dojo ATDD
At2009 Coding Dojo ATDD
 
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam CranfordAgile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
 
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
 
Au secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguerAu secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguer
 
Des mots, des maux ? Démo !
Des mots, des maux ? Démo !Des mots, des maux ? Démo !
Des mots, des maux ? Démo !
 
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
 
Bonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meetingBonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meeting
 

Más de Agile Tour Genève

La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")
La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")
La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")
Agile Tour Genève
 
Soigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutables
Soigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutablesSoigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutables
Soigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutables
Agile Tour Genève
 

Más de Agile Tour Genève (12)

Maitrise d'Ouvrage et Agilité
Maitrise d'Ouvrage et AgilitéMaitrise d'Ouvrage et Agilité
Maitrise d'Ouvrage et Agilité
 
Vers une infrastructure plus agile avec le Cloud Computing
Vers une infrastructure plus agile avec le Cloud ComputingVers une infrastructure plus agile avec le Cloud Computing
Vers une infrastructure plus agile avec le Cloud Computing
 
Rétrospective - Alchimiste-Agile.com
Rétrospective - Alchimiste-Agile.comRétrospective - Alchimiste-Agile.com
Rétrospective - Alchimiste-Agile.com
 
Accompagner la transition vers l'agilité
Accompagner la transition vers l'agilitéAccompagner la transition vers l'agilité
Accompagner la transition vers l'agilité
 
Gestion des coûts et Projets Agiles
Gestion des coûts et Projets AgilesGestion des coûts et Projets Agiles
Gestion des coûts et Projets Agiles
 
La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")
La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")
La parabole du trafic urbain (ou "Comment expliquer l'Agilité à grand-maman?")
 
Les défis de Scrum pour une grande organisation
Les défis de Scrum pour une grande organisationLes défis de Scrum pour une grande organisation
Les défis de Scrum pour une grande organisation
 
Spécifications et Planning : éxecution dans un monde Agile
Spécifications et Planning : éxecution dans un monde AgileSpécifications et Planning : éxecution dans un monde Agile
Spécifications et Planning : éxecution dans un monde Agile
 
Pour passer la crise, remboursez votre dette technique !
Pour passer la crise, remboursez votre dette technique !Pour passer la crise, remboursez votre dette technique !
Pour passer la crise, remboursez votre dette technique !
 
Soigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutables
Soigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutablesSoigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutables
Soigner sa schizophrénie MOA/MOE - Voyage au pays des spécifications exécutables
 
La face cachée de la mesure : une opportunité pour votre amélioration continue
La face cachée de la mesure : une opportunité pour votre amélioration continueLa face cachée de la mesure : une opportunité pour votre amélioration continue
La face cachée de la mesure : une opportunité pour votre amélioration continue
 
Convergences entre CMMI et SCRUM / XP
Convergences entre CMMI et SCRUM / XPConvergences entre CMMI et SCRUM / XP
Convergences entre CMMI et SCRUM / XP
 

Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)

  • 1. lundi 12 octobre 2009 agiletour.org/fr/at2009_geneve.html B4 Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD) Emmanuel HUGONNET & Rémy SANLAVILLE
  • 2. Coding Dojo – Kata sur le pilotage par les tests d'acceptances (ATDD) Rémy Sanlaville Emmanuel Hugonnet Expert Senior en Ingénierie Logicielle   Architecture J2EE remy.sanlaville@gmail.com emmanuel.hugonnet@silverpeas.com +33-(0)476248658 www.clubagile.org
  • 3. Contrat de la session Ce que vous verrez pendant cette session [ 5'] Rapide présentation du coding-dojo [ 5'] Présentation du défi [35'] Codage en binôme avec cuke4duke [15'] Rétrospective www.clubagile.org
  • 4. Contrat de la session Ce que vous ne verrez pendant cette session L'intérêt du coding-dojo On The Benefits of Dojo (Arnaud Bailly) Présentation des spécifications exécutables Session Soigner sa schizophrénie MOA / MOE Comment mettre en place un coding-dojo dans sa ville Coding Dojo: un retour d'expérience Comment devenir Chuk Norris www.clubagile.org
  • 6. Historique Si je veux apprendre le Judo, je vais m'inscrire au dojo du coin et y passer une heure par semaine pendant deux ans, au bout de quoi j'aurai peut-être envie de pratiquer plus assidument. Si je veux apprendre la programmation objet, mon employeur va me trouver une formation de trois jours à Java dans le catalogue 2004. Cherchez l'erreur. -- Laurent Bossavit www.clubagile.org
  • 7. Objectifs Chacun doit pouvoir s'améliorer à son rythme Le but n'est pas de terminer l'exercice mais bien d'apprendre • Espace sûr – Pas de compétition – Collaboration – Tout le monde participe • Apprentissage continu/régulier • Apprentissage par petits pas • L’erreur est humaine www.clubagile.org
  • 8. Kata from Dojo@SP (São Paulo) pilote Binôme Participants co-pilote www.clubagile.org
  • 9. Charte Coding Dojo Kata Objectifs Acteurs Présentation d'une solution pour un défi Un présentateur (un seul Le secrétaire prend des programmeur ou un binôme) notes lors de la séance. Il Le but n'est pas de présente sa solution du défi. Le défi est réalisé en entier en TDD. n'intervient pas pendant la phase de développement. trouver la meilleure Il explique continuellement son cheminement et il affiche sa solution mais de progression en fréquemment les tests déroulant comprendre la solution proposée par L'assistance doit comprendre en tout temps la l'animateur. présentation. Un participant peut interrompre le présentateur dans le seul cas où il ne comprend plus le déroulement de la solution. www.clubagile.org
  • 10. Charte Coding Dojo Kata Règles Restructuration du code Le test est au rouge Toute restructuration doit être Si le test ne passe pas, le présentateur doit expliqué expliquer aux participants la raison de l'échec. TDD Le test est au vert Le présentateur peut souligner de bonnes ou de mauvaises pratiques La salle peut interrompre le présentateur dans le seul cas où il ne comprend plus le déroulement de la solution.… www.clubagile.org
  • 13. Jeu Du Pendu v1.0 Succès en début de partie Soit le mot à trouver "SANGLIER" Et le nombre de coups restants est 6 Et le mot affiché est "********" Lorsque je tape la lettre "S" Alors le nombre de coups restants devrait être 6 Et le mot affiché devrait être "S*******" Coup perdant Soit le mot à trouver "SANGLIER" Et le nombre de coups restants est 6 Et le mot affiché est "S*******" Lorsque je tape la lettre "Z" Alors le nombre de coups restants devrait être 5 Et le mot affiché devrait être "S*******" www.clubagile.org
  • 14. Jeu Du Pendu v1.0 Succès avec état Soit le mot à trouver "SANGLIER" Et le nombre de coups restants est 5 Et le mot affiché est "S*******" Lorsque je tape la lettre "N" Alors le nombre de coups restants devrait être 5 Et le mot affiché devrait être "S*N*****" Succès avec plusieurs occurrences d'une même lettre Soit le mot à trouver "ALOUETTE" Et le nombre de coups restants est 5 Et le mot affiché est "A*******" Lorsque je tape la lettre "T" Alors le nombre de coups restants devrait être 5 Et le mot affiché devrait être "A****TT*" www.clubagile.org
  • 15. Jeu Du Pendu v1.0 L'utilisateur tape une lettre déjà proposée Soit le mot à trouver "SANGLIER" Et le nombre de coups restants est 5 Et le mot affiché est "S*N*****" Lorsque je tape la lettre "S" Alors le nombre de coups restants devrait être 5 Et le mot affiché devrait être "S*N*****" Coup perdant avec compteur coups restants à 0 Soit le mot à trouver "ALOUETTE" Et le nombre de coups restants est 0 Et le mot affiché est "A***ETTE" Lorsque je tape la lettre "S" Alors le nombre de coups restants devrait être 0 Et le mot affiché devrait être "A***ETTE" www.clubagile.org
  • 16. Codage Le code source est disponible à l'adresse http://github.com/ehsavoie/dojo_agiletour_2009 www.clubagile.org
  • 18. 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 www.clubagile.org
  • 20. Coding Dojo à Grenoble Site web http://clubagile.org/evenements/coding-dojo/ Liste de diffusion http://groups.google.fr/group/cara-dojo www.clubagile.org
  • 21. Randori from Dojo@SP (São Paulo) pilote Binôme Participants co-pilote On tourne (5 – 7 mn) www.clubagile.org
  • 22. Remerciements • Pragmatic Dave Thomas • Laurent Bossavit • Emmanuel Gaillot • Alfredo Goldman • Hugo Corbucci, Mariana Bravo • Membres du Coding Dojo de Grenoble Références : • CodeKata • Coding Dojo @ Agile 2008 • CodingDojo.org • Le Dojo Parisien www.clubagile.org