STAMP - Test logiciel AMPlification
Coordinateur : KUNGLIGA TEKNISKA HOEGSKOLAN, Suède
Partenaire : Inria de l’Université de Lille CRIStAL
Équipe : Spirals du Groupe Thématique : Génie Logiciel
Dates : 01/12/16 - 30/11/19
Résumé :
Libérez tôt, libérez souvent. Tel est le mantra des géants de l’informatique comme Twitter ou Netflix. Les pionniers de l’ingénierie des applications qui s’exécutent dans le cloud effectuent désormais régulièrement des centaines de mises à jour de code par jour dans ce qui est devenu une poussée de livraison continue 24 heures sur 24. Cette agilité étonnante est un avantage concurrentiel décisif. Il réduit les délais de mise sur le marché et augmente les revenus. Derrière l’exploit se cache DevOps. Cette méthodologie de développement puissante apporte des degrés élevés d’automatisation à toutes les étapes de la construction et du déploiement.
Le DevOps a gagné plus de terrain aux États-Unis qu’en Europe et des inquiétudes sont exprimées quant au fait que les entreprises européennes pourraient « manquer le train ». On pense que leur inclination reflète une attitude culturelle différente à l’égard du risque. En effet, un déploiement hâtif peut propager un bug de régression en production en raison d’un manque de tests suffisants. La peur de casser les choses est d’autant plus justifiée que les tests dans DevOps reposent principalement sur un effort manuel.
S’appuyant sur la recherche avancée dans la génération de tests automatiques, STAMP vise à pousser l’automatisation dans DevOps un peu plus loin grâce à des méthodes innovantes d’amplification des tests. Il réutilisera les ressources existantes (cas de test, descriptions d’API, modèles de dépendance), afin de générer plus de cas de test et de configurations de test à chaque mise à jour de l’application. Agissant à toutes les étapes du cycle de développement, il apportera des services d’amplification au niveau de l’unité, au niveau de la configuration et au stade de la production.
STAMP renforcera la confiance et favorisera l’adoption de DevOps par l’industrie informatique européenne. Le projet rassemble 3 partenaires académiques disposant d’une solide expertise en matière de tests logiciels, 5 sociétés de logiciels (en : e-Health, Content Management, Smart Cities and Public Administration) et un consortium open source. Cette recherche proche de l’industrie porte sur des objectifs concrets et axés sur les entreprises. Toutes les solutions sont open source et développées en tant que microservices pour faciliter l’exploitation, avec un objectif à TRL 6.
Abstract :
Release early, release often. Such is the mantra of IT giants like Twitter or Netflix. Pioneers in the engineering of applications that run in the cloud now routinely perform hundreds of code updates per day in what has become a thrust of continuous delivery around the clock. This stunning agility is a decisive competitive edge. It cuts time-to-market and hikes revenue. Behind the feat lies DevOps. This powerful development methodology brings high degrees of automation at all steps of construction and deployment.
DevOps has gained more traction in the USA than in Europe and concern is raised that European companies may be “missing the train”. Their disinclination is thought to reflect a different cultural attitude toward risk. Indeed, a hasty deployment may propagate a regression bug into production due to lack of sufficient testing. Fear of breaking things is all the more justified as testing in DevOps mostly relies on manual effort.
Leveraging advanced research in automatic test generation, STAMP aims at pushing automation in DevOps one step further through innovative methods of test amplification. It will reuse existing assets (test cases, API descriptions, dependency models), in order to generate more test cases and test configurations each time the application is updated. Acting at all steps of development cycle, it will bring amplification services at unit level, configuration level and production stage.
STAMP will raise confidence and foster adoption of DevOps by the European IT industry. The project gathers 3 academic partners with strong software testing expertise, 5 software companies (in : e-Health, Content Management, Smart Cities and Public Administration), and an open source consortium. This industry-near research addresses concrete, business-oriented objectives. All solutions are open source and developed as microservices to facilitate exploitation, with a target at TRL 6.