Evaluation of EPL mutation operators with the MuEPL mutation system

•The definition of specific mutation operators for an Event Processing Language.•A new system, MuEPL, which applys mutation testing to this Event Processing Language.•A quantitative evaluation of the mutants in five open-source programs.•The publication of the corresponding system as Open Source Sof...

Full description

Saved in:
Bibliographic Details
Published in:Expert systems with applications Vol. 116; pp. 78 - 95
Main Authors: Gutiérrez-Madroñal, L., Medina-Bulo, I., Domínguez-Jiménez, J.J.
Format: Journal Article
Language:English
Published: New York Elsevier Ltd 01-02-2019
Elsevier BV
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:•The definition of specific mutation operators for an Event Processing Language.•A new system, MuEPL, which applys mutation testing to this Event Processing Language.•A quantitative evaluation of the mutants in five open-source programs.•The publication of the corresponding system as Open Source Software. The expert systems (ESs) have been developed to facilitate the users their tasks, to enhance the productivity and reduce losses. In order to replicate the behaviour of a human expert, they generate output using their stored knowledge base. In a ES, the accumulation of knowledge from different sources is a very important factor. Nowadays, we are living in a world where two crucial processes need to be perform quickly: decision-making and problem solving. The complexity of the decisions and problems lays on the different factors, situations and data that are involved. The Internet of Things (IoT) has been created to address these situations and helps the users to make correct decisions in real time according to the received data. In the concept of IoT, daily life objects are connected to each other so they can transfer data over the internet without a human to human interaction. The combination of IoT and ESs is a step further for the decision making problem, the received data from the IoT system will be sent to the ES, then the ES will process the information and send the results or decisions to the user. Given that correct decisions-making and problem solving are critical processed, these complex systems need to be tested. Mutation testing, which is a technique used in fault testing, has been examined in a range of studies where different programming languages have been used as well as in IoT expert systems evaluations. However, this technique has not been applied to an IoT programming language, which is noteworthy in the case of event processing languages (EPLs), that have been designed to address the main problems of IoT systems. Among the existing EPLs, the EPL of EsperTech is used the most often. In this paper, we apply mutation testing using MuEPL to EPL of EsperTech programs in order to simulate the common errors of the developers and to avoid the wrong decisions before moving out to ES in the IoT network.
ISSN:0957-4174
1873-6793
DOI:10.1016/j.eswa.2018.09.003