Tests Agile 2010 Lyon

Cette page à pour objectif de préparer la session Tests Agiles du 9 Novembre 2010. 

Horaire : 19h à 20h30
Lieu : Campus de l'INSA, 6, avenue des Arts, 69621 Villeurbanne


NB : Franck assurera les transitions entre chaque interlocuteur.

Introduction (5', Franck)

Introduction du sujet
Indicateurs du contexte : bug est coûteux et retour d'expérience sur les pratiques courantes,
Démarche pour améliorer les tests : catégorisation par type de tests, où mettre les tests ??

Voir les premières diapositives, avec type de test, leur volume

Coût d'un bug (5', Benoit)

Détail des sources de coût
   - Détection 
      Td = (Origine du bug - Détection du bug) ; impact / propagation du bug dépendant de Td...
      Interruption de service
   - Rémontée & communication : temps client et temps support
   - Compréhension Ti = (1' à ... l'infini ?) : temps R&D
   - Résolution : temps R&D
         - Hors contexte - contournement Thc = (Solution + Intégration + Livraison)
         - Dans le contexte - correction Tc = (Remise en contexte + Correction + Intégration + Livraison)
   - Estimation du coût d'un bug sorti dans une version (prix support, prix chez le client). Ex : Arkoon / Sbox

Avoir en tête le débat sur le Cost of Change : Barry Boehm, Kent Beck... Le délai de la boucle de détection de la non qualité est critique http://www.ambysoft.com/essays/whyAgileWorksFeedback.html
   - Quelles conclusions tirer de la courbe de Cost of Change ? Emphase sur les phases amont vs Emphase sur la granularité ?
   - Quelle est la pente de mon Cost of Change ?

The Economic Impacts of Inadequate Infrastructure for Software Testing http://www.cse.lehigh.edu/~gtan/bug/localCopies/nistReport.pdf

En résumé : 
   - Le temps est votre ennemi
   - Tout est question de granularité :
      o Granularité des tests dans le temps
      o Granularité de l'architecture
      o Granularité des versions
      o Granularité de l'environnement
   - Des choix et des compromis sont nécessaires


Cycle en V, les tests décorrelés (5', Nicolas)

Slide 1 : Tests dans le cadre du cycle en V ou en waterfall
  • Spécifications = documentation lourde
  • La gestion du changement pose des problème au niveau du process
  • On fait de grosses releases assez rarement, la QA teste après le dev
  • Rôle de "last line of defense"
  • Tests exhaustifs ? difficile voire impossible à mettre en oeuvre
Slide 2 : Tests en agilité
Retours sur les principes agiles et mise en application
  • QA & Dev travaillent ensemble pour arriver au Done (on favorise le dialogue entre les teams plutôt que le process)
  • On fait des releases régulières en essayant de:
    • Tester au plus tot => TDD
    • Tester plus vite => Automatisation des tests
    • Tester plus souvent => Intégration continue
    • + faciliter le refactoring (revue de code, analyse de code, non-regression & couverture des TU)
  • Rôle de "service provider"
    • Collaboration avec les devs pour améliorer la testabilité
    • Boucles d'interaction courtes avec les devs (tests de petites features
    • Automatisation de tout ce qu'on peut (tests regression, Unit test, livraison)
    • Impliquer les clients dans l'écriture des tests d'acceptance.
    • Tester ce qui est important (Priorisation des test, Risk Based Testing?)
Sources:
http://www.slideshare.net/jubehr/prsentation-agile-testing
http://www.agilistas.org/presentations/pycon05/

 
Testing agile / Brian Marick's test categorisation (10' + QR, Alexandre)


Présentation de ce carré en faisant référence au  livre Agile testing.

Quelle réponse apporte l'Agilité ? (10', Benoit, Nicolas, Franck)

Diagramme du process Agile et indicateurs qui poussent à faire des tests en début de spec / de dev, pour minimiser les coûts.
Bonne pratiques: revue de code, intégration continue
Voir les points ici : http://www.ambysoft.com/essays/agileTesting.html

Indicateurs de qualité agiles (10', Sylvain)

Slide 1 : Attention à l'automatisation des tests
 (vrai pour les TU de code comme pour les tests fonctionnels)
  - A quel niveau on automatise ??
  - Coût de maintenance
  - Temps d'exécution
  -> prioriser les tests selon leur ROI
     Exemple du TestRelevancyIndex du Cockpit

Slide 2 : Anticiper les changements
  - Différences entre les specs / stories et le dev implémenté
  - Changements certifiés "sans risques" de dernière minute
  -> mieux identifier les modules fonctionnels impactés

Slide 3 : Sécuriser la mise en prod
  - Plus fréquentes dans des projets Agile, nécessite donc que le processus tests/livraison soit encore plus fiable/rapide
  - Besoin d'indicateurs pour vérifier le DONE. Exemples : qualité du code, nombre de livraison, nombre de régressions durant le test, ...
   
Test driven development (20', Jean-Michel)

   - Principe (5')
   - Démonstration (15') : Cucumber - http://cuke4ninja.com

Références

The Economic Impacts of Inadequate Infrastructure for Software Testing http://www.cse.lehigh.edu/~gtan/bug/localCopies/nistReport.pdf
What does it cost you to fix a defect ? And why you should care ? http://www.jrothman.com/Papers/Costtofixdefect.html
Tips to encourage collaborative testing    http://blog.testyredhead.com/
Test-Driven Development Is Not About Testing http://java.sys-con.com/node/37795
Test-driven Development Is Not About Testing http://parlezuml.com/blog/?postid=517
How test-driven development works (and more!) http://blog.jbrains.ca/permalink/how-test-driven-development-works-and-more
TDD is not test-first. TDD is specify-first and test-last. http://blog.orfjackal.net/2009/10/tdd-is-not-test-first-tdd-is-specify.html
TDD en video : http://jamesshore.com/Blog/Lets-Play/
Retour de l'échange AAFTT par Elizabeth Hendrickson http://www.infoq.com/interviews/elizabeth-hendrickson-aaftt
Elle dit qu'il n'y a pas de wiki pour l'instant, mais qu'il y a un groupe Yahoo http://tech.groups.yahoo.com/group/aa-ftt/

Autres sujets

Actualités du mois :
    - Agenda de l'agilité : http://www.agenda-agile.org
    - Agile Grenoble 2010, le programme des sessions : http://agile-grenoble.org/programme
    - Demie-Journée Agile à Lyon en 2011 : Une utopie ?




Voici les présentations de la soirée

20101007_cara_test_agile



Comments