3. Client
• Chiffre d’affaires : 1,85 millards de dollars US
• Employés : 37 000
• Utilisateurs de notre produit : 18 000
• Coût d’un arrêt de l’environement de production : > 100 000 $ par jour
4. Projet
Première livraison :
• Réécriture d’une application mobile roulant sur Windows Mobile 6
• Porter l’application vers Android et iOs
• Le temps est important : refaire en 2 ans une application faite sur 10 ans
Deuxième livraison :
• Réécriture d’une seconde application basée sur la première
• Création d’une troisième application
• Le temps est important
Livraison subséquente :
• Ajout de fonctionnalités aux applications
5. Démarrage du projet
• Tests unitaires automatisés
• Tests automatisés des règles
d’affaires
• Revue de code
• Intégration continue
• Équipe d’assurance qualité
• Tests de charge automatisés
6. Défis à surmonter
• Équipe(s) en constante évolution
• Introduction à la méthodologie Agile : Scrum
• Utilisation de nouvelles technologies
• Mise en place de l’environnement de développement
• Développement multisite
7. Première livraison
• Distrait par les problèmes
immédiats
• Stabilisation longue par rapport au
temps de développement
• Manque de confiance face au
livrable
• Livraisons de hotfix suivant la
livraison
8. Tournant
• L’équipe est plus mature
• L’environnement de développement est
plus mature
• Période morte
10. Backlog Grooming
Problèmes :
• Préparation des stories incomplètes
• Des exit criteria manquants lors de la revue de sprint
11. Backlog Grooming
Personnes impliquées :
• Product Owner
• Assurance qualité
• Développeur
Objectif :
• S’assurer que la logique d’affaires est bien comprise par tous
• Challenger les stories par différents points de vue
• Trouver des cas limites
14. Architecture Grooming
Clean Code: Handbook of Agile Software Craftsmanship - What is the ultimate code quality
measurement? WFTs/minute :) http://t.co/qj2z3RFtya
Problèmes :
• Architecture disparate entre les
modules
• Maitrise des principes architecturaux
différents entre les membres de
l’équipe
15. Architecture Grooming
Personnes impliquées :
• Architecture Owner
• L’équipe de développement
Objectifs :
• Prendre des décisions architecturales qui feront consensus
• Que tous les membres de l’équipe comprennent les choix architecturaux retenus
Note:
• Les modules les plus importants seront examinés durant la revue du sprint
16. Architecture Grooming
Résultat :
• Architecture plus uniforme
• La meilleure architecture à chaque
problème
• Connaissance transmise à l’équipe
Clean Code: Handbook of Agile Software Craftsmanship - What is the ultimate code quality
measurement? WFTs/minute :) http://t.co/qj2z3RFtya
19. Tests automatisés de la logique d’affaires
Problèmes :
• Les tests de la logique d’affaires mal
exploités
• Utilisation des tests de logique d’affaires
exclusivement par les développeurs
• Implémentation très difficile des tests
automatisés
20. Tests automatisés de la logique d’affaires
Solution :
• Arrêt de la création des tests automatisés de la logique d’affaires
• Rédaction des scénarios de tests
• Utilisation d’un outil de suivi des scénarios
21. Résultat :
• Élimination d’un irritant
• L’équipe s’est approprié les scénarios de tests
• Les tests sont devenus des exit criteria
• L’utilisation d’un outil de suivi des scénarios de tests a augmenté la
Note :
• Recherche d’une technologie pour automatiser les scénarios
Tests automatisés de la logique
d’affaires
23. Assurance qualité par les pairs
Problèmes :
• L’intégration continue brise fréquemment
• L’application ne roule pas sur certains environnements
• Manque de membres dédiés à l’assurance qualité
24. Assurance qualité par les pairs
Objectifs :
• S’assurer que la branche de développement compile sur un nouvel environnement
• S’assurer que la branche de développement roule sur un nouvel environnement
• S’assurer que tous les aspects de la story ont bien été implémentés
• Détecter les défectuosités le plus tôt possible
25. Assurance qualité par les pairs
Résultat :
• Moins de compilation brisée
• Moins de défectuosités
• Moins de modifications après la revue de sprint
26. Cycle d’une story
Spécifications & Grooming
Ready to Sprint
Développement
Ready to QA Dev
QA Dev
Ready to QA
QA d’une story
Ready to Release
QA d’une release
Ready to Deploy
Déploiement
28. QA War Room
Problèmes :
• L’équipe d’assurance qualité décalée par rapport aux développeurs
• Plus de défectuosités trouvées pendant les sprints de stabilisation
• Défectuosités introduites durant le sprint
Bugs Improvements
29. QA War Room
Objectifs :
• Coordination des efforts
• Transmission rapide des informations
• Fait en fin de sprint, permet de voir l’interaction entre les stories livrées
Note :
• Se fait plus de 24 h avant la fin du sprint, ce qui permet de régler des défectuosités
mineures avant la revue de sprint
30. QA War Room
Résultat :
• Détection des défectuosité plus
tôt
• Livrable de fin sprint plus stable
• Meilleur portrait du livrable
31. Cycle d’une livraison
Spécifications
Backlog Grooming
Architecture Grooming
Planification de sprint
Mêlée quotidienne
(Daily Scrum)
QA War Room
Revue de sprint
Rétrospective
Produit livrable
Livraison
32. Méthodologie
• Chaque étape est optionnelle
• Une méthodologie en constante évolution
• Offrir un environnement efficace et agréable aux développeurs
• Rétrospective : une occasion d’identifier les problèmes et de trouver les solutions
33. Conclusion
• Temps de développement d’une story plus long
• Vélocité sensiblement pareille
• Baisse des défectuosités détectées après la livraison d’une feature
• Baisse du temps nécessaire à la stabilisation
• Réduction du nombre de livraisons de type hotfix
• Augmentation de la confiance face au produit
• La qualité à un coût, qu’il soit exposé ou non