www.focusintelligence.ca
blog.focusintelligence.ca
Conférence donné par
Georges Saad de Focus Intelligence sur l'assurance qualité en mode Agile.
Le 12-05-2009 Pour la communauté Agile de Québec.
La qualité au service de vos projets digitaux ! Retour sur le PDJ co-organisé...
Conférence: L'assurance qualité au-delà de la qualité logicielle
1. « Sans technique un don
n'est rien qu'une
ATTEIGNEZ VOS OBJECTIFS.
sale manie. »
Georges Brassens
L’UTILITÉ DE L’ASSURANCE QUALITÉ
AU-DELÀ DE LA QUALITÉ LOGICIELLE
Georges Saad
2. Les critiques d’AGILE
1. Manque d’architecture
2. Manque de documentation
3. Manque de structure et de contrôle
ATTEIGNEZ VOS OBJECTIFS.
3. ACTE I : MISE EN CONTEXTE
Une perspective de la situation actuelle du
développement logiciel.
ATTEIGNEZ VOS OBJECTIFS.
4. Les chiffres
61% of successful projects costing less than
$750,000 [...]
And 19% of projects from $750,000 to $3
million were successful [...]
Projects over $10 million only have a 2%
chance of coming in on time and on budget
Chaos report 2009,
of The Standish Group Internationall
ATTEIGNEZ VOS OBJECTIFS.
5. 1. L’ingénierie logicielle ?!
« … forecast their behaviour under specific operating conditions; all
as respects an intended function …»
ATTEIGNEZ VOS OBJECTIFS.
6. L’état actuel
Un état artisanal et imprévisible. Il faut avancer en balisant comme
lors de l’utilisation des mousquetons en escalade.
ATTEIGNEZ VOS OBJECTIFS.
7. 2. La dimension humaine (RH)
Les gens en informatique
sont intelligents et
critiques
(Je sais que certains ne seront pas d’accord avec l’exemple)
ATTEIGNEZ VOS OBJECTIFS.
8. 3. Les estimés et la planification
TOUT prévoir le jour 1!
ATTEIGNEZ VOS OBJECTIFS.
10. ACTE II : Agile et le processus de QA
Quelques notions d’Agile et les 5 facteurs de
succès du processus d’assurance qualité Agile.
ATTEIGNEZ VOS OBJECTIFS.
15. 1. AUCUN compromis de qualité
Ignaz Semmelweis en 1847, a été accusé de
folie pour avoir demandé aux médecins de se
laver les mains afin de diminuer les mortalités
lors des accouchements.
« Wash your hands »
Robert C. Martin, Agile 2008
ATTEIGNEZ VOS OBJECTIFS.
16. 2. Une responsabilité d’ÉQUIPE
Réussir en équipe ou échouer en équipe
ATTEIGNEZ VOS OBJECTIFS.
17. 3. Un processus AUTOMATISÉ
À tout moment, chaque membre de l’équipe doit
être en mesure d’exécuter TOUS les tests
unitaires et fonctionnels
ATTEIGNEZ VOS OBJECTIFS.
18. 4. Un processus CONTINU
Du début à la fin du projet
Test
Test
Test
Test
ATTEIGNEZ VOS OBJECTIFS.
19. 5. AUCUN compromis de qualité
« we value craftsmanship over crap »
Robert C. Martin, Agile 2008
ATTEIGNEZ VOS OBJECTIFS.
20. Le processus
• Automatiser tous les tests nécessaires
Fonctionnalité
• Ces tests sont une garantie de non-régression
• Automatiser un test qui reproduit le bogue
Bogue
• Le bogue est réglé lorsque le test passe
ATTEIGNEZ VOS OBJECTIFS.
24. Oui mais, moi mon logiciel…
Peu importe la complexité de la solution !
Peu importe les dépendances externes de la solution !
Peu importe les technologies et l’environnement !
ATTEIGNEZ VOS OBJECTIFS.
25. Un petit mot sur le BDD
BDD : Behavior Driver Development
Générer des tests à partir de la rédaction des
spécifications fonctionnelles
As a [X]
I want [Y]
so that [Z]
ATTEIGNEZ VOS OBJECTIFS.
26. ACTE III : L’UTILITÉ
Comment justifier ce processus et à quoi ca peut
servir exactement
ATTEIGNEZ VOS OBJECTIFS.
27. 1. Pour la conformité
Tout fonctionne comme prévu
ATTEIGNEZ VOS OBJECTIFS.
28. 2. Pour la non-régression
Ce qui marchait, marche encore
ATTEIGNEZ VOS OBJECTIFS.
29. 3. Comme filet de sécurité
Legacy code : Ce n’est pas du vieux code. C’est
du code pas testé peu importe la beauté. C’est
du code qu’on est pas à l’aise de modifier
rapidement.
Extrait de
Test
« Working Effectively With Legacy Code »
Test Test
LEGACY
Test Test
CODE
Test Test
Test
ATTEIGNEZ VOS OBJECTIFS.
30. 4. Pour la documentation et la communication
Un petit mot sur la documentation rédigée.
L’assurance qualité : une documentation fiable,
exécutable et dynamique.
ATTEIGNEZ VOS OBJECTIFS.
31. ACTE IV : UN OUTIL DE GESTION
L’utilisation de l’assurance qualité comme outil de
gestion de projet et de compte
ATTEIGNEZ VOS OBJECTIFS.
32. La vélocité et les user stories
User story : Une fonctionnalité élémentaire ayant
une valeur ajoutée au logiciel
Vélocité : C’est vitesse d’avancement logiciel
qu’une équipe est capable de faire durant une
itération f(projet, équipe)
ATTEIGNEZ VOS OBJECTIFS.
33. Le réel avancement et non l’estimé
Une mesure binaire : Accepté ou non.
Fini les pourcentages bidons!
TERMINÉ ≠ ACCEPTÉ
ATTEIGNEZ VOS OBJECTIFS.
34. Une meilleure gestion du risque
Permet de minimiser les risques
ATTEIGNEZ VOS OBJECTIFS.
35. L’accès à l’information
Tout le monde à accès à la même information.
ATTEIGNEZ VOS OBJECTIFS.
36. Sommaire exécutif
L’assurance qualité est votre meilleur outil de
mesure et de gestion
Obtenir le réel état et non l’estimé
Améliorer votre gestion du risque
Accéder à l’information juste et vite
ATTEIGNEZ VOS OBJECTIFS.
37. Réponses aux critiques d’AGILE
1. Manque d’architecture
Si livrer à chaque itération de la qualité est
possible, la question est réglée
2. Manque de documentation
Effectivement, pas de documentation rédigée,
mais plutôt exécutable et générée
3. Manque de structure et de contrôle
Aucune régression n’est possible, le risque est
au minimum et l’information est juste.
Vrai : Sans le QA intégré, continu et automatisé
ATTEIGNEZ VOS OBJECTIFS.
38. ÉPILOGUE : UN OUTIL LÉGAL
Un bref survol.
ATTEIGNEZ VOS OBJECTIFS.
39. Aspect contractuel
Forfaitaire
Bonis à la livraison
Horaire
Itératif
PS 2000
Par « user point »
Les tests automatisés doivent faire parti du livrable
ATTEIGNEZ VOS OBJECTIFS.
40. Conflit et litige
Ca ne marche pas ! Y’a plein de bogues!
Ca n’a pas été livré tel que convenu !
Chaque fonctionnalité est accompagnée de sa
suite de tests automatisés.
Accepté ou non, pas de flou.
ATTEIGNEZ VOS OBJECTIFS.