MIDAS - Model and Inference Driven Automated testing of Services architectures
The 2016-2017 Work Programme should focus on: (i) Radically new and native cloud applications as services, (ii) Test-driven Software Development Life Cycle (SDLC) methods and tools for these applications.
We mean by “radically new” those applications in all relevant sectors (Health, Logistics, Energy…) whose functionalities are made available firstly through simple and powerful service APIs. These applications cannot even be conceived without: (i) “radical” elasticity – massive upsize and downsize (e.g. ten thousand servers) in seconds and automatically, (ii) “radical” pay per use - if you do nothing, you pay nothing, and costs are decreasing on quantity, (iii) “radical” availability – 0.999999 – no service interruption for maintenance, (iv) “radical” fault-tolerance – the unavailability of even critical data and algorithms is treated at the functional level, (iv) “radical” security – no disruption, no leaking, extreme privacy of data and processes.
Test-driven SDLC tools must sustain the shift from “specify, design and implement components” towards “select, evaluate and integrate services through APIs”. They must support: (i) both agile and contract-driven (model-driven) service design interweaved from the beginning with automated (model-based) test of large services architectures, (ii) massive collaborative editing of very large scale services architectures models, (iii) incremental continuous integration of services architectures, (iv) continuous delivery without service interruption in large scale distributed architectures.
The aim of this recommendation is to foster the EU presence at the hearth of the digital service economy.
A SOA/API testing facility whose key innovation points are:
(1) Extreme automation of services architecture testing (grey-box testing of service compositions). Functional, security and usage-based testing. Model-based automation of all testing tasks - test case/oracle generation, test execution, arbitration, reporting, scheduling and planning. Model checking for test case/oracle generation. Probabilistic (Bayesian) reasoning for test planning and scheduling (failure seeking and troubleshooting).
(2) Testing As A Service on cloud. Self-provisioning, elasticity of resource allocation, pay per use, security of access, integrity and privacy of data. On-line learning. Coping with multi-owner services architecture. User community tools.
(3) Programmable testing facility through APIs. Functionalities fully available through APIs on the Internet. Easy integration of MIDAS services by external modelling tools, IDEs, ALM tools, CAST tools, SOA governance tools, API management tools, for automated, background testing of services architectures within the Test Driven SDLC.
(4) Evolutionary registry/repository of test methods. Test researchers and practitioners can easily package their implemented test methods for uploading, registering and deploying - after certification - on the MIDAS registry/repository. The new registered test methods are proposed as such to the MIDAS users through the MIDAS APIs. Test method developer community tools.
The MIDAS testing facility will be offered in the Software As A Service modality, probably driven by a dedicated start-up integrating partners’ spin-offs. The service pricing will be “extreme” pay per use: the user opens an account with a credit card and if s/he does nothing, s/he pays nothing. Research users – e.g. MIDAS other partners, European projects - will be billed for the mere cost of utilised underlying cloud resources. Industrial customers will be billed for the cost of utilised cloud resources plus a transparent margin. Fair accounting tools and cost simulation tools - that allows estimating test campaign costs - will be supplied. Lower costs of the cloud resources will be passed to prices. A collaboration policy with researchers and practitioners for new enhanced test methods (e.g. with European projects) will be put in practice for an evolutionary service testing facility. The first target business sectors will be healthcare and logistics (experience within project pilots), with dedicated test methods and tools.
At the end of the second year:
A) Collaboration and clustering
1) EC funded projects: (i) Contrail (Open computing infrastructure for elastic services), (ii) Cassandra (Common Assessment and analysis of risk in global supply chains), (iii) e-Freight (European e-Freight capabilities for Co-modal transport).
2) Italian Smart City initiatives: (i) ADAPT (Accessible Data for Accessible Proto-Types in Social Sector) and (ii) SMART AGING (Personal mobile services platform for data acquisition and processing for prolongation of active life, wellness, disease prevention and care in aging population everywhere).
3) Proposed as testing framework in two proposals: i) FOLLOWER - Proposal submitted to the call PHC 26 of Horizon 2020, ii) Proposal submitted to the call for Tender in the framework of the FP7 DECIPHER PCP Project (http://decipherpcp.eu).
1) Contribution to the OMG UML Testing Profile (UTP) 2.0 standard.
2) Contribution to the TTCN-3 standard: ETSI standardization project (STFs) on TTCN-3, e.g. (i) Extension of Conformance tests for TTCN-3 tools (09/13 – 05/14) and (ii) Conformance test suite for using XML schema with TTCN-3 (01/14 – 12/14).
3) Contribution to the standardization on ETSI Test Description Language (TDL): MTS Specialist Task Force (STF) for Test Description Language (TDL) – Phase 2.