a1qa teste une importante plateforme SaaS pour la gestion des programmes de logement social
Lorsque la responsable de l'assurance qualité a rejoint l'équipe, on avait l'impression qu'elle avait suivi le projet toute sa vie. Elle comprenait tous les rôles que nous ajoutions, rédigeait la documentation adéquate, organisait des réunions de manière efficace et analysait rapidement les problèmes dès qu'ils se présentaient. Il a fait preuve d'excellentes compétences en matière de communication écrite et orale, expliquant avec simplicité des détails techniques complexes. Il sait écouter et trouver les bonnes informations. C'est très important lorsque nous discutons de questions et que tout le monde comprend les problèmes que nous devons résoudre. Pour chaque problème, l'équipe détermine indépendamment le vecteur de mouvement approprié. Elle s'adresse à nous pour obtenir des réponses aux questions dont elle a besoin pour mener à bien une tâche particulière.
DESCRIPTION DU PRODUIT
Le client américain a demandé à a1qa de réaliser un cycle complet de tests du système. Le produit était un système ERP SaaS à grande échelle destiné à gérer tous les processus de fourniture de logements subventionnés :
- l'introduction et le traitement des demandes, la vérification des conditions nécessaires à l'octroi d'un logement subventionné
- la gestion de l'occupation et de l'inoccupation des logements, l'inspection de l'état des logements
- répartition des tâches, notifications et gestion du temps.
Le client s'est fixé les objectifs suivants :
- automatiser les processus commerciaux actuels
- augmenter la satisfaction des utilisateurs en réduisant le temps nécessaire au traitement des documents
- permettre aux utilisateurs de remplir eux-mêmes les formulaires pour continuer à travailler avec les agences d'aide au logement
- recueillir des statistiques sur le service à la clientèle afin d'améliorer les processus opérationnels existants
- établir un processus de collecte d'informations financières pour informer les investisseurs.
DESCRIPTION DU PROJET
Pour garantir la qualité de tous les processus du système, les spécialistes d'a1qa ont mis au point un ensemble personnalisé de services de test (essais à cycle complet), en tenant compte des plans de lancement du produit sur le marché ainsi que des spécifications du produit et du public cible.
Différents types de tests ont été effectués à différents moments, en fonction de la phase de développement. Par exemple, dans la phase de croissance active de la fonctionnalité, les spécialistes de a1qa ont effectué des tests fonctionnels parallèlement aux tests de performance et à l'automatisation des tests.
Un audit de convivialité a également été ajouté afin d'améliorer le produit et de le rendre facile à utiliser et à comprendre malgré sa complexité.
Avant de lancer le produit, des tests de bout en bout ont été effectués pour évaluer la capacité globale du système à s'adapter au marché.
L'APPROCHE DES ESSAIS
Un ensemble de cas de test a été développé pour vérifier la mise en œuvre des exigences fonctionnelles. Pour s'assurer que les cas de test couvraient toutes les exigences, l'équipe de l'a1qa a mis en œuvre une phase de révision croisée dans laquelle chaque testeur transmettait chaque cas de test qu'il ou elle avait créé à un autre membre de l'équipe pour révision.
La matrice des cas de test a été introduite pour permettre un travail efficace :
- s'assurer que les cas de test couvrent toutes les exigences du système
- combiner plusieurs vérifications et donc réduire plusieurs fois le nombre de cas de test
Le développement du système s'est accompagné de changements de fonctionnalité qui ont nécessité la mise à jour des cas de test. Afin que l'ingénieur AQ ne doive pas passer beaucoup de temps à sélectionner les cas de test affectés par les changements, il a été décidé d'utiliser la matrice des composants.
La matrice des composants comprend des matrices de cas de test pour un composant (module) du système.
Lorsque de nouvelles fonctionnalités ont été développées, la matrice des cas de test a été ajoutée à la matrice des composants correspondants.
Élaboration de la documentation technique
Le client a fait appel à l'équipe de rédacteurs techniques d'a1qa pour créer et mettre à jour un ensemble complet de documents d'aide. Les documents devaient tenir compte des différentes caractéristiques du système et décrire toutes les fonctionnalités.
L'équipe de rédacteurs techniques de l'a1qa a effectué les tâches suivantes :
- créer une aide contextuelle
- l'élaboration d'instructions pratiques et de pages de questions fréquemment posées
- la préparation de la documentation pour les sessions de formation.
Au cours du projet, les rédacteurs techniques de l'a1qa ont produit plus de 90 documents totalisant plus de 1000 pages.
Le produit a été décrit en détail dans la documentation. Le client a apprécié l'approche souple et personnalisée adoptée pour fournir la documentation nécessaire à toutes les exigences, ainsi que l'expérience et l'expertise considérables des rédacteurs techniques.
Tests d'acceptation (UAT)
Avant chaque lancement d'un nouveau produit, l'équipe d'assurance qualité a effectué des tests d'acceptation selon des scénarios préparés par l'analyste commercial et le représentant du client.
Difficultés :
- beaucoup de temps pour préparer les scénarios de tests d'acceptation
- la nécessité de modifier/créer des scénarios d'essai pour chaque UTC.
Après deux séries de tests d'acceptation, il a été constaté que la plupart des défauts de régression étaient liés à l'algorithme de base des actions de l'utilisateur et à l'introduction de nouvelles fonctionnalités. En outre, la nouvelle fonctionnalité a obligé l'équipe de test à modifier les scénarios de test d'acceptation existants ou à en créer de nouveaux.
Solution :
L'équipe d'assurance qualité a développé une nouvelle approche de l'écriture de scripts pour les tests d'acceptation. Il a été décidé de créer des scripts UAT décrivant les actions de base de l'utilisateur et, pour les nouvelles fonctionnalités, d'utiliser des cas de test pré-créés pour tester les exigences de l'utilisateur.
Ainsi, la préparation des tests d'acceptation a été réduite à la sélection de cas de test appropriés. Ensuite, tous les cas de test QSC et BAS (Business Analyst Scenarios) ont été automatisés. Le comportement de chaque fonction a été décrit par les analystes commerciaux dans les scénarios BAS. Ceux-ci ont été développés par l'équipe d'assurance qualité et transférés à l'équipe d'automatisation. Chaque fonction testée avait au moins un test automatisé, ce qui a permis d'économiser 3 heures de test par fonction au cours de la phase UAT.
Transition de Scrum à SAFe
Au départ, le projet a été développé en utilisant la méthodologie Scrum. Mais après plusieurs années, il a été décidé de passer au Scaled Agile Framework (SAFe). SAFe est destiné aux grandes entreprises et permet une gestion plus efficace du développement de logiciels, y compris des projets impliquant plusieurs équipes.
L'équipe d'a1qa avait besoin de mieux comprendre les valeurs et les principes sous-jacents du développement SAFe.
L'avantage le plus évident du passage à SAFe a été le travail coordonné de toutes les équipes et la livraison rapide du produit final.
Mesures d'essai
En concertation avec le client, les ingénieurs AQ ont suivi la dynamique des mesures sélectionnées.
Exemple :

Explication :
Rejetés, % de défauts sur le nombre total de tous les défauts vérifiés.
Qualité de la correction des défauts :
- 0 % à 3,9 % des défauts rouverts - élevé
- 4 % à 9,9 % des défauts rouverts - moyenne
- 10 % ou plus de défauts rouverts - faible.
Objectif : maintenir à moins de 10 % la réouverture de tous les défauts corrigés.
Défauts du sprint par gravité - le nombre de tous les défauts associés aux exigences de l'utilisateur du sprint actuel, triés par gravité. Le nombre de défauts ouverts est indiqué entre parenthèses.
Équipe de contrôle de la qualité
Au départ, une équipe de contrôle de la qualité (2 ingénieurs et 1 chef d'équipe) a été impliquée dans le projet.
En 2014, l'assurance qualité a été assurée par 7 équipes, dont un coordinateur de projet, un chef de projet, des chefs d'équipe, des ingénieurs de test, des ingénieurs d'automatisation des tests, une équipe de tests de performance, des rédacteurs techniques et des experts UX.
Avant la fin du projet, l’équipe a été élargie à trois spécialistes d’a1qa chargés d’assurer le support produit, de valider les défauts et de tester les fonctionnalités supplémentaires développées selon les besoins des utilisateurs.
Contribution de a1qa
L'équipe a1qa a été impliquée dans le processus d'assurance qualité du produit dès le début de son développement. Les processus de travail parallèles clairement structurés de plusieurs équipes d'assurance qualité ont permis une répartition efficace des tâches à accomplir et des problèmes de travail à résoudre.
Tout au long de la période de test, plus de 12000 défauts graves et critiques qui ont été corrigés avec succès.
L'équipe d'a1qa a assuré une migration de qualité vers le nouveau système ERP.
Les spécialistes d'a1qa ont organisé une série de formations pour les employés du client et les responsables d'a1qa ont conseillé le client pour le recrutement de nouveaux ingénieurs de contrôle de la qualité.
Grâce à l'implication de l'équipe de rédacteurs techniques d'a1qa et à la préparation d'une documentation détaillée, il a été possible d'optimiser considérablement le processus de transfert des connaissances, ce qui a permis de gagner du temps et d'économiser des ressources pour les essais.
Tous les objectifs du projet ont été atteints dans les délais et le produit a été lancé avec succès et dans les temps.
SERVICES FOURNIS
- Automatisation des tests
- Tests fonctionnels
- Tests de localisation
- Tests de compatibilité
- Tests d'utilisabilité
- Tests de performance
TECHNOLOGIES ET OUTILS
- .NET
- KendoUI
- ASP.NET
- Azure
- VSTests
- NLog
- Autofac
- MVC
- Thinktecture Identity Server
- Entity Framework
- WCF
- MSSQL (SSRS, SSIS)
RÉSULTATS
EN CHIFFRES
-
9années de durée du projet
-
12K+les défauts majeurs et critiques détectés
-
90les documents préparés par les rédacteurs techniques