a1qa aide les entreprises à gérer les risques, à améliorer la qualité des logiciels et à accélérer les mises en production
DESCRIPTION DU PRODUIT
Le client développait un système web permettant aux entreprises B2B d'assurer des entreprises ou des personnes contre les risques ou les cas de force majeure. Les utilisateurs peuvent remplir un formulaire contenant des questions sur les données de leur entreprise et envoyer une demande. Celle-ci est traitée par un tiers ou envoyée à Salesforce pour être traitée par les courtiers du client. Le système affiche ensuite aux utilisateurs finaux les offres d'assurance disponibles à la souscription.
Les propriétaires de produits et l'ingénieur AQ étaient responsables des tests manuels, et un fournisseur AQ externe était responsable des tests automatisés. Cependant, les processus n'étaient pas assez efficaces et des défauts continuaient à apparaître dans l'environnement de production, ce qui a conduit le client à se tourner vers a1qa.
PORTÉE DU PROJET
a1qa a rapidement constitué une équipe de spécialistes du test, qui a ensuite été élargie à la demande du client. En peu de temps, les ingénieurs AQ ont été intégrés dans les processus de travail basés sur Scrum avec des sprints hebdomadaires et ont initié les améliorations de processus suivantes :
Optimisation des cycles de lancement
La sortie de nouvelles fonctionnalités était souvent chaotique et les processus de contrôle de la qualité n'étaient pas suffisamment efficaces, ce qui entraînait des erreurs. Pour résoudre ce problème, l'a1qa a pris plusieurs mesures :
- L'équipe d'assurance qualité a créé un tableau de bord pour montrer les défauts clés et critiques. Cela a permis de garantir la transparence du niveau de qualité actuel de l'application et de mieux gérer les processus de développement.
- Les ingénieurs ont introduit la planification des versions. Au lieu de publier des fonctionnalités instables, les spécialistes d'a1qa ont aidé le client à hiérarchiser les scénarios d'utilisation clés à ajouter au calendrier de publication. Si les développeurs ont terminé les tâches dans les derniers jours du sprint, a1qa a effectué des tests de régression et a stabilisé le logiciel. S'il restait suffisamment de temps, le développement pouvait se poursuivre. Cela a permis au client de publier des mises à jour stables toutes les trois semaines.
- Les ingénieurs de l'assurance qualité ont proposé de renoncer aux versions du vendredi, car les utilisateurs pouvaient soumettre des demandes le week-end. a1qa a également tiré parti du décalage horaire avec le client et s'est mis d'accord avec les développeurs pour publier les nouvelles fonctionnalités le soir. Cela a permis à l'équipe d'ingénieurs de détecter rapidement les défauts et à l'équipe de développeurs de les corriger rapidement.
Améliorer le processus de gestion des défauts
Initialement, le processus de gestion des défauts était organisé de manière inefficace : un seul ticket pouvait contenir jusqu'à 20 erreurs et les données sur les corrections étaient mises à jour de manière irrégulière. a1qa a proposé une approche qui a simplifié de manière significative le processus de suivi et de résolution des défauts.
Configuration de Jira pour la gestion de projet et le suivi des défauts
L'équipe d'a1qa a proposé d'utiliser Jira en raison de ses capacités étendues de suivi des défauts, de la flexibilité de la configuration du flux de travail, de la disponibilité de rapports intégrés et de la possibilité d'intégration avec d'autres outils de développement. Jira a été adapté aux spécificités du projet et des instructions ont été créées pour l'équipe du client concernant son utilisation.
Améliorer la stratégie de branchement du code
Un ingénieur DevOps a été chargé de gérer les branches Git et d'assurer des transitions fluides entre les environnements. Cela a permis d'accélérer les cycles de publication, d'améliorer le suivi des modifications du code et de réduire le nombre de conflits lors de la fusion.
Assurer une communication efficace avec le client
Pour une exécution efficace des tâches, malgré le décalage horaire, des réunions quotidiennes et des revues du planning ont été organisées pour les ingénieurs d'assurance qualité. Ils ont utilisé les chevauchements de temps pour résoudre rapidement les questions et, dans le cas de versions rapides, pour être prêts à tester la nouvelle fonctionnalité immédiatement après sa sortie.
a1qa a réalisé des tests de logiciels. Lors des tests de sécurité, effectués à la demande du client, les spécialistes ont identifié les problèmes critiques qui empêchaient le logiciel de fonctionner correctement et ont proposé des tests fonctionnels.
Après une courte période d'essai, le client a été satisfait des résultats et a demandé l'extension des services fournis :
Tests de sécurité
Afin d'éviter les vulnérabilités du système de sécurité et de protéger les informations confidentielles des utilisateurs, l'a1qa a effectué des tests de sécurité conformément à l'OWASP.
Pendant les travaux, il a été réalisé :
- Recherche d'informations sensibles dans les dépôts Git
- Analyse statique du code
- Test de l'authentification, de l'autorisation, de la validation des entrées, de la logique commerciale et de la gestion des sessions.
Cela a permis de déterminer le niveau de sécurité du logiciel et de l'améliorer sur la base des recommandations fournies.
Tests fonctionnels
Pour une vérification complète de la fonctionnalité du logiciel et la prévention des problèmes dans l'environnement de production, les ingénieurs AQ ont effectué un certain nombre de tâches.
Ils ont créé une documentation de test pour assurer la cohérence des processus de test et la couverture de test nécessaire. Afin de déterminer si un nouveau logiciel est prêt pour les activités d'assurance qualité suivantes, des tests de fumée ont été effectués.
Chaque fois qu'une nouvelle fonctionnalité était prévue, les ingénieurs la testaient sur la base de la couverture AT. Les tests de régression effectués avant chaque sortie ont permis de s'assurer que les nouvelles fonctionnalités n'affectaient pas le bon fonctionnement des fonctionnalités existantes. En outre, l'équipe d'a1qa a procédé à la validation des défauts pour confirmer que tous les bogues détectés avaient été corrigés par les développeurs.
En outre, les ingénieurs d'a1qa ont rédigé des cas de test pour un autre département du client, responsable des tests automatisés, qui ont servi de base à l'écriture de scripts.
Le produit testé était intégré à Salesforce: les demandes soumises y étaient transférées pour traitement, y compris la création de nouveaux utilisateurs, comptes et autres enregistrements. Afin de garantir la qualité de cette intégration et d'éviter toute perte de données, a1qa a proposé de la tester. Le client a été satisfait des résultats des tests et a demandé l'affectation d'un ingénieur qualité supplémentaire pour tester directement le système Salesforce.
Tests de performance
Le produit logiciel n'étant pas conçu pour un grand nombre d'utilisateurs simultanés, il n'était pas nécessaire de procéder à des tests côté serveur. Cependant, les ingénieurs d'a1qa ont observé que les pages de l'application se chargeaient lentement, ce qui dégradait l'expérience de l'utilisateur (UX). Ils ont suggéré d'effectuer des tests de performance sur le client. Cela leur a permis d'identifier les éléments les plus lourds des pages et d'optimiser leur temps de chargement.
Analyse métier
L'équipe d'a1qa a été confrontée à un défi majeur : les exigences du produit logiciel n'étaient pas claires, voire absentes.
Pour éviter que les ingénieurs aient à déterminer séparément ce qu'il fallait faire pour chaque ticket et que les flux de travail du projet souffrent d'un manque de cohérence, a1qa a désigné un analyste commercial, qui a contacté le chef de produit afin derassembler les exigences de chaque fonction et de les documenter.
Cela a permis d'améliorer l'efficacité du développement et des tests et de s'assurer qu'ils étaient alignés sur les objectifs de l'entreprise.
SERVICES FOURNIS
- Analyse de l'activité
- Tests de sécurité
- Tests de performance
- Tests fonctionnels
TECHNOLOGIES ET OUTILS
- Jira
- Confluence
- TestRail
- Postman
- DevTools
- Firebase
RÉSULTATS
-
Création d'un système stable de contrôle de la qualité pour une livraison en temps voulu d'une fonctionnalité stable, qui ne nécessite pas de modifications coûteuses après le lancement.
-
Amélioration de la qualité du produit informatique en optimisant le travail avec les exigences et les tests, en évitant les problèmes critiques.
-
Amélioration de l'expérience utilisateur grâce à l'optimisation de la vitesse de chargement des pages.
EN CHIFFRES
-
2,5années de durée du projet
-
10des ingénieurs chargés du contrôle de la qualité pendant les heures de pointe
-
250cas d'utilisation développés par les analystes commerciaux de l'a1qa
-
4K+les défauts détectés et corrigés