Déploiement et mise en oeuvre des pratiques de Test

Just-Tech-IT
Just-Tech-IT
Published in
5 min readMay 10, 2019

Par Emilie-Anne Guerch, Lionel Brat, Pascal Cugnet, David Esteves Da Fonte,Vincent Dugarin, Emmanuel Lehmann et Bruno Pedotti

Depuis 2011, les collaborateurs ont dû modifier leurs pratiques (agiles et ingénierie), ils ont vu leur organisation et leurs rôles évoluer. Si ces changements ont modifié leur quotidien, ils ont surtout dû acquérir un nouveau mindset.
En effet, une transformation agile est avant tout une transformation culturelle qui s’accompagne d’une forte conduite du changement. Cette transformation est basée sur les valeurs et principes agiles, en privilégiant la collaboration directe et l’amélioration continue. Afin d’être plus engagés au quotidien, les collaborateurs doivent gagner en autonomie, en responsabilisation et saisir le lien entre leurs activités et le bénéfice utilisateur apporté.

Pour déployer cette transformation, AXA a créé un Agile Center d’une quinzaine de coachs agiles qui accompagnent tribus et guildes sur les changements culturels et sur l’évolution du processus de delivery. Les coachs interviennent opérationnellement dans le delivery quotidien des squads et supportent les Responsables de Tribus et les Product Managers dans le cadrage des besoins avec le Métier et la définition de la roadmap produit. Ils dispensent aussi des formations agiles à l’ensemble de la DSI.

A l’instar des autres métiers d’ingénierie de la DSI, la Guilde Test met en place pour ses collaborateurs des formations spécialisées sur son métier, afin de renforcer les connaissances et les expertises sur les méthodologies (formations ISTQB, Agile) et sur les outils (webcast, dojos et accompagnements sur les automates ou la mise en oeuvre des services virtuels). Ces formations individualisées se complètent par des communautés de pratiques sur la tribu d’intervention (Chapter) ou sur l’expertise (automatisation et méthodologie de test).

Pour garantir un certain niveau de qualité et l’homogénéité des activités de test, un cadre de référence a été établi, basé sur des bonnes pratiques à mettre en oeuvre.

Pour prioriser et coordonner les actions à mettre en oeuvre, chaque Engineering Manager Test évalue le niveau de maturité de son périmètre et co-construit un plan d’action avec le responsable de la tribu.

Ce niveau de maturité dépend également du contexte (niveau de maturité agile de la tribu et des autres guildes).

1- Difficultés VS gains.

La mise en oeuvre des pratiques a été progressive pour permettre l’adaptation et la montée en compétence des équipes de développement et de test.

La mise en place des pratiques agiles (3 amigos et Pair-Test principalement) a permis de réduire de moitié le nombre de bugs en recette et d’accentuer la collaboration au sein des équipes :
«On ne démarre pas un projet sans un Test Engineer intégré», affirment désormais les Software Engineers.

Le déploiement du TDD couplé à la mise en oeuvre des parcours orientés clients a renforcé notre approche de « shift left testing».

Enfin, l’intégration du BDD et l’automatisation des tests d’acceptation par les développeurs a limité les phases de recette et a permis de bâtir un harnais de test des scénarios exécutés lors de chaque Build. La recette se concentre désormais sur les tests de bout en bout et l’exécution automatisée des tests des parcours clés. La mise en place du modèle crée ipso facto des silos contre lesquels il faut lutter en intensifiant les échanges au sein des guildes. Nous avons donc mis en place des communautés de pratiques sur l’automatisation et la méthodologie et avons nommé des référents pour faciliter l’appropriation et l’homogénéité des pratiques. Il faut également s’assurer via des mesures régulières de la bonne mise en oeuvre des pratiques. Un modèle de maturité permettant d’en suivre l’évolution au sein des squads et des tribus a été déployé. Ces actions nécessitent un fort investissement en formation et coaching des équipes de développement et de test.

Les équipes sont focalisées sur les engagements opérationnels et il est toujours difficile de les mobiliser sur les travaux d’amélioration continue.

Un des bénéfices importants a été la valorisation du métier du test. La DSI AXA France a engagé une internalisation des compétences et un plan de recrutement ambitieux a été lancé pour faire face à la montée en charge de l’activité du test.

En synthèse et à titre d’exemple avec le site internet public axa.fr :

• Nombre de bugs par US réduit de 80% en 6 mois (passage de 1 à 0,2 bugs/US).
• Time to Market inférieur à 2 mois.
• Fréquence de livraison en production hebdomadaire.
• Réduction du nombre d’incidents majeurs en production.

2- Et demain ?

Le déploiement du modèle Feature Team met en exergue la nécessité de renforcer la polyvalence des acteurs d’une squad. En effet, l’équipe étant de taille réduite, il est primordial que le test engineer puisse être remplacé par un software engineer pour l’automatisation, que le test engineer puisse remplacer un Business Analyst ou un Product Owner pendant ses congés et réciproquement. Cela nécessite un accompagnement des collaborateurs de la squad sur les domaines de compétence ou les changements de rôle sont réalistes : Test Engineer Automaticien /Software Engineer ; Test Engineer/ Business Analyst ou Product Owner ; Test Engineer / Scrum Master.

Nous avons initié le « shitf left » et renforcé les tests en amont du cycle de développement. Il reste encore beaucoup de travail pour optimiser la pyramide des tests et limiter la durée des phases de recette et de préproduction à leur strict minimum. Cela passe par une généralisation de l’Intégration Continue et de DevOps ; de l’accroissement de l’automatisation des tests pour réduire au maximum la nécessité du test manuel qui force une rupture dans le process de livraison.
Bien sûr, cet effort est à pondérer au regard de la nécessité Métier de livrer rapidement et souvent : ce besoin de réactivité n’est évidemment pas le même entre notre espace client et une application back-end de gestion, par exemple.

Le monde de l’assurance s’intéresse également de plus en plus aux objets connectés dans le domaine de la santé et aux chatbots dans les centres d’appels. Des stratégies de tests spécifiques seront à mettre en oeuvre pour faire face à ces technologies.

L’Intelligence Artificielle devrait également nous permettre d’optimiser nos plans de test et de maximiser la couverture de test à moindre coût.

Et bien sûr, l’évolution technologique rapide sur les métiers du test (outils et pratiques) doit être suivie pour que nous adaptions nos outils et nos pratiques. Une veille technique permanente est indispensable.

--

--