Article Preview
Top1. Introduction
Delivery of quality of service to the customers is the main concentration of the software development companies. Whereas, guaranteeing the fault-free software is one of the major factors among the other parameters of quality management to evaluate the customers’ satisfaction towards the reliability of the software. Fault prediction of the software deals with the improvement of software quality by discovering the fault-prone modules in a timely manner using software metrics classification (Lessmann et al., 2008). Predicting the faults and discovering their locations in the early stage of the system development lifecycle reduces the computational cost and time and as well as it makes the maintenance process easy and improves the resource utilization. This study concerns how effective and practical, the learning-based fault prediction is in an SOA-based system in terms of web service metrics utilization.
The unprecedented surge of machine learning in the systems solves problems and supports automation in widespread domains. The success of ML depends on the availability of data, advancement in computing technologies. Machine learning techniques became flexible and resilient in their possible applicability to various real-world scenarios (Boutaba et al., 2018). Likewise, ML is implemented for the purpose of software quality measurement, resource and fault management. Fault prediction in a software system using machine learning has become one of the common areas, whereas, ML for fault predictions in SOA-based systems using the source code of the services is a less explored research area.
In this work, we have applied deep learning techniques to predict the faults of SOA-based systems by analyzing the web services and calculating the metrics. The web services datasets are constructed by injecting the faults into it and metrics are extracted for both faulty and nonfaulty data for training and testing purpose. Some of the commonly used performance measuring parameters are inspected to check the validity of the fault predictability of our proposed model. Experimental output validates that the proposed fault prediction model can overcome existing difficulties and then presents its novelty to the state-of-the-art ways.
The major contributions of the proposed model are summarized as follows:
- 1.
An attempt has been made to make use of deep neural networks to discover the faults in SOA-based systems;
- 2.
We extract the metrics from web services in proposed fault prediction model, which helps to locate the possible faults in SOA-based systems effectively; and
- 3.
Conducted several experiments on four real-world web services systems (three eBay web services and one from Web Ontology Language for Services-OWL-S Technical Chart (OWLS-TC4)) to check the validity of the proposed model which has shown its effectiveness and great promise in applying deep neural networks with the utilization of web service metrics.
The remainder of the paper is organized as follows. Section 2 mentions the works related to the fault-proneness prediction of SOA. Research background of the present work is explained in Section 3. Section 4 discusses the research methodology we followed to conduct this study. Section 5 and Section 6 present deep learning techniques and performance measures respectively. Section 7 shows the results of the different fault-proneness prediction experiments of our proposed model. Section 8 includes the discussion of the proposed model along with the possible threats to the validity of the study. Finally, Section 9 concludes the paper by summarizing the major contributions and future work directions.
TopThe concept of the machine learning technique to discover and recover the software faults has obtained the high attention of the researchers over the past two decades. Some of the studies (Sharma & Kakkar, 2016) which have measured on the performance of machine learning techniques in web services for the security management purpose. Complexity and quality (Coscia et al., 2012), log-based fault prediction (He et al., 2016) (Kholy & Fatatry, 2016), maintainability (Kumar et al., 2017), semantics-based service classification (Kamath & Ananthanarayana, 2016) and change-proneness (Kumar et al., 2017) are some of the fields and the studies observed in the literature. Several researchers (Chen et al., 2014) (Dai et al., 2011) (Khan, R. & Hasan, 2015) (Halkidis et al., 2008) have utilized fuzzy set theory as diagnosing technique that deals with the uncertain and complex environment.