Automatisation de tests à grande échelle et solution de tests de régression pour Siemens PLM Software

Contexte et défis

Siemens PLM Software est l’un des principaux fournisseurs mondiaux de logiciels et de services dédiés à la gestion du cycle de vie des produits (Product Lifecycle Management – PLM), avec 69 500 clients dans le monde.

Les 100 plus gros clients de Siemens utilisent leur technologie en moyenne depuis 18 ans, soit bien avant l’existence même de la plupart des sociétés de logiciels. Le produit va continuer à se développer. De nouvelles versions sont déployées tous les six mois et des correctifs sont distribués encore plus fréquemment. Parfois, il existe des variations spécifiques à un client.

En outre, en fonction des variations de plateformes d’un client à l’autre, les mises à jour du produit doivent être appliquées à divers systèmes d’exploitation et navigateurs. Le nombre total de tests élémentaires pour un produit aussi complexe s’élève à plusieurs dizaines de milliers.

Tandis que des modifications telles que des corrections de bugs et de nouvelles fonctionnalités sont introduites avec succès dans chaque version, il est presque impossible de terminer les tests de régression de tous les scénarios de test dans le temps disponible avant la date de publication. Cela entraîne des problèmes de qualité rencontrés par les utilisateurs finaux ou des retards de publication. De manière générale, les tests reposent sur des tests sélectifs effectués par des experts. Mais, étant donné la taille et la complexité du produit, le nombre d’experts n’est jamais suffisant et leur disponibilité n’est pas garantie.

Il a été parfaitement compris et accepté depuis longtemps que l’automatisation était la solution à ce problème de tests de régression. L’automatisation avait déjà été tentée dans le passé par les meilleures ressources internes qui connaissaient le produit et le processus d’automatisation. Un programme pilote a abouti, réalisant avec succès des centaines de tests élémentaires.

Le véritable défi a cependant consisté à adapter l’automatisation de la régression à des dizaines de milliers de tests. Siemens a choisi de discuter de ses exigences avec les spécialistes Testing chez Expleo.

Solution et résultats

La solution d’Expleo à ce problème d’automatisation de tests à grande échelle est Test Automation FaQtory®.

Utilisation de la chaîne de montage

Après avoir analysé le problème, Expleo a conclu que la réalisation de tests à grande échelle pouvait être obtenue en utilisant le modèle de « chaîne de montage » utilisé en fabrication. Le travail d’automatisation a été divisé en trois « stations » :

  • Experts – connaissent le produit, mais n’ont pas besoin de connaître l’automatisation.
  • Concepteurs de framework – experts en automatisation, mais ayant également besoin de connaître le produit dans une certaine mesure.
  • Équipe d’automatisation – experts en automatisation, mais qui n’ont pas besoin de connaître le produit.

Toutes les stations ont des interfaces clairement définies, ce qui facilite l’efficacité globale de la chaîne de montage.

Le succès de la réalisation de ces tests à grande échelle a été obtenu en élargissant l’équipe d’automatisation – simple à réaliser pour un partenaire d’assurance qualité comme Expleo – et en maintenant des équipes d’experts et de concepteurs de framework relativement petites.

Les experts proviennent de Siemens PLM et l’équipe de conception de framework est composée du personnel de Siemens PLM et d’Expleo.

Développement d’outils

Poursuivant l’analogie de la chaîne de montage, l’équipe Expleo a développé un certain nombre d’outils pour les différentes équipes, afin d’augmenter leur cohérence et leur productivité, tout en réduisant la dépendance humaine.

Tarification basée sur les résultats

L’une des caractéristiques les plus importantes de ce modèle est la tarification basée sur les résultats. La grille tarifaire comprend uniquement le prix de l’automatisation, de l’exécution et de la maintenance d’un scénario de test. Expleo n’a chargé Siemens PLM que pour ce qui a été livré.

Phase d’étalonnage

La mission a été précédée d’une phase d’étalonnage au cours de laquelle un ensemble de tests complexes a été automatisé, non seulement pour valider l’outil et le framework, mais également pour calibrer les prix unitaires. L’étalonnage prend en compte le nombre de tests à automatiser et le calendrier de publication du produit ou de l’application, ce qui détermine la fréquence d’exécution de la suite de régression automatisée.

Engagement pluriannuel selon la méthodologie Agile

L’engagement est pluriannuel, mais utilise le paradigme agile des sprints mensuels et du développement et du déploiement incrémentiels de la suite d’automatisation. Cela permet de choisir chaque mois des cas pilotes pour l’automatisation et de maintenir la suite d’automatisation à jour avec les versions les plus récentes du produit testé.

Avantages pour le client

Véritable partenariat

Cette approche a permis de créer un véritable partenariat entre le client et Expleo, chaque partenaire se concentrant sur le noyau de leurs compétences. L’automatisation de ces tests à grande échelle n’a été possible que grâce à la forte expertise Testing d’Expleo.

Transfert des risques à Expleo

Le risque lié au déploiement réussi de l’automatisation a été transféré de manière équitable à Expleo, par opposition à un modèle d’engagement basé sur l’effectif, dans lequel les risques demeurent principalement avec le client. Siemens PLM n’a donc payé que ce qui a été délivré avec succès.

La tarification basée sur les résultats incite à l’efficacité

Mais l’avantage réel de la tarification basée sur la production est encore plus subtil. Dans un modèle basé sur les effectifs, l’efficacité peut ne pas être souhaitable, car elle pourrait réduire l’effectif du prestataire. Avec le modèle basé sur les résultats, le prestataire trouve le moyen d’améliorer régulièrement les résultats livrés. Ainsi, cette approche encourage l’efficacité tout au long du processus. Siemens PLM peut donc s’attendre à ce que cette approche soit bénéfique, année après année, soit en atteignant un volume d’automatisation plus important, soit en obtenant une réduction des coûts pour le même volume.

Case studies