Emmanuel Vergé (Smartesting) : "Les tests logiciels peuvent aussi être générés à partir de modèles UML"

Encore trop souvent sous-estimé, le test logiciel tient une place de plus en plus importante dans un projet. Positionné sur ce terrain, l'éditeur français avance un outil pour industrialiser cette phase critique.

Quelle a été votre démarche pour créer la solution Test Designer ? 

Nous sommes un éditeur franco-français. Le moteur de notre outil principal est issu de la recherche de l'INRIA et du CNRS. En 2003, Smartesting est né d'un essaimage du laboratoire informatique de l'université de Franche-Comté. Les travaux de recherche ont abouti à une implémentation de l'outil qui est aujourd'hui commercialisé. Test Designer détecte automatiquement les tests à réaliser sur un projet. Il a demandé un volume de développement important, 100 années-homme pour le cœur du produit. C'est une belle success-story à la française. 

 

Quel type de projet vise Smartesting ?

En 2004, les dépenses pour la phase de développement d'un projet représentaient 47% du budget et la qualité 22%. Nous prévoyons en 2010 une part de 24% pour le développement et de 30% pour le test. La part de développement baisse à l'inverse de celle du test. C'est une tendance très forte du marché. La raison ? Le code est de plus en plus facile et rapide à développer grâce aux frameworks, mais le test reste le parent pauvre. Nous proposons une solution face à la problématique de la qualité logicielle. 

 

Notre outil est destiné aux centres de test, aux centres de compétences, aux experts dans les grandes organisations, ou aux SSII qui développent une spécialisation dans le test. Nous visons plutôt les experts en test que les développeurs, et leur proposons d'industrialiser leurs processus. Test Designer est complémentaire d'autres outils. Il permet de générer des tests plus rapidement.

 

Quelles méthodes de test utilisez-vous ?

Nous utilisons l'approche du "model based testing", le test basé sur les modèles. C'est une approche connue, beaucoup de documentation existe mais il n'y a pas de solutions sur le marché. Son principe repose sur la génération automatique de tests par rapport à des modèles UML. L'utilisateur construit le comportement attendu de l'application sous la forme de diagrammes UML. Test Designer parcourt le modèle et génère automatiquement la totalité des tests nécessaires pour couvrir 100 % de ce modèle. Cet outil rend la phase de test plus rapide, surtout dans une approche itérative, d'où des gains de productivité.

 

Test Designer exécute-il aussi les tests ?

Non, Test Designer détecte et génère les tests mais il ne les exécute pas, d'où le nom de Smartesting. L'utilisateur gère la phase de publication des modèles puis il les exporte vers son propre outil de test, par exemple Junit pour Java ou encore les outils de test HP ou IBM. Notre outil est donc complémentaire des technologies d'exécution de tests. On peut faire un parallèle avec le développement. Test Designer fonctionne comme un outil de génération automatique de code, mais pour les tests.

 

Pourquoi avoir choisi l'Inde dans votre stratégie de développement ?

Comme nous sommes une petite entreprise (30 personnes) nous avons une stratégie d'essaimage, de partenariats. Nous sommes éditeur, nous ne déployons pas les produits. L'Inde a une maturité très grande, avec des équipes déjà constituées. De par son historique, l'Inde fut un des premiers pays pour l'offshoring, et l'outsourcing y est très important. Sa première activité fut la maintenance, les tests.

Ce pays a développé au fur et à mesure ses compétences et a construit une expertise au sein d'équipes de grande taille. Aujourd'hui, l'Inde possède d'importantes plates-formes de test, il y a un véritable potentiel pour nos produits. Nous équipons les centres de test dans une approche industrielle.

 

Le développement et les tests vont-ils de plus en plus être délocalisés ?

Une partie du développement se fera toujours en France car un projet nécessite une proximité avec le client. C'est particulièrement le cas pour les applications complexes, où les équipes ont besoin d'être proches du client. Cela permet un meilleur suivi des besoins. Des raisons culturelles, de communication, de langages entrent aussi en compte. Mais un certain nombre d'étapes dans un projet se font désormais ailleurs. Au début, cela a été mal vécu par les développeurs, notamment aux Etats-Unis.

 

Aujourd'hui, on comprend qu'il y a de la place pour tout le monde. L'Inde développe des briques logicielles et la gestion des parties critiques d'un projet se fait proche du client. C'est d'ailleurs là où il y a le plus de valeur ajoutée. Il va falloir formaliser les échanges, développer les outils de communication entre les pays. Néanmoins, la délocalisation n'est pas une généralité. Certaines entreprises françaises industrialisent leurs tests en France.  

 

Quels sont les futurs projets de Smartesting ?

Suite au changement du nom de notre société [ndlr : anciennement appellée Leirios] le 20 mai 2008, nous procédons à une refonte complète de notre offre, et de notre identité. Nous sommes dans la phase de lancement de notre nouvelle marque et nous passons à l'échelon international. Nous cherchons donc à faire le plus de bruit possible autour de notre marque "label complémentaire", et à nous associer avec le maximum d'acteurs dans le maximum de domaines.

 

Nous travaillons à faciliter l'intégration avec les outils de test existants. Nous développons un programme Smartesting de certification. Nous proposons des formations, une assistance technique et une certification pour les partenaires. Notre sentiment aujourd'hui, c'est qu'il y a une réelle industrialisation des tests. Le test est une nouvelle activité très importante que les développeurs doivent avoir en ligne de mire. A l'avenir, les demandes en tests vont continuer d'augmenter.