Software Fault Prediction Using Machine-Learning Techniques

Machine-learning techniques are used to find the defect, fault, ambiguity, and bad smell to accomplish quality, maintainability, and reusability in software. Software fault prediction techniques are used to predict software faults by using statistical tec

  • PDF / 308,402 Bytes
  • 9 Pages / 439.37 x 666.142 pts Page_size
  • 0 Downloads / 297 Views

DOWNLOAD

REPORT


Abstract Machine-learning techniques are used to find the defect, fault, ambiguity, and bad smell to accomplish quality, maintainability, and reusability in software. Software fault prediction techniques are used to predict software faults by using statistical techniques. However, Machine-learning techniques are also valuable in detecting software fault. This paper presents an overview of software fault prediction using machine-learning techniques to predict the occurrence of faults. This paper also presents the conventional techniques. It aims at describing the problem of fault proneness.

1 Introduction Software fault prediction (SFP) is a mechanism which can be used for software metrics to improve the software quality (SQ). SFP comes into vast research practice in Computer Science for locating fault [1]. In the current scenario, software applications have become an attraction of its users because it consists of attractive features and users want to access those features without knowing anything. However, the point of fascination is that it has become a public requirement where human beings can connect themselves and share data. In this article, our intuition is to explain application areas of machine learning techniques (MLT) for improving results of software faults (SF) and software quality (SQ) [2]. Moreover, future scope in which effective use of MLT is made in SFP. Figure 1 shows that software faults in terms of reliability, security, maintainability, etc., can be predicted with MLT as well as statistical techniques (ST) for improving SQ.

D. Sharma (&)  P. Chandra University School of Information and Communication Technology, Guru Gobind Singh Indraprastha University, Dwarka 110078, Delhi, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2018 S.C. Satapathy et al. (eds.), Smart Computing and Informatics, Smart Innovation, Systems and Technologies 78, https://doi.org/10.1007/978-981-10-5547-8_56

541

542

D. Sharma and P. Chandra

Fig. 1 Software fault prediction

Fig. 2 Alternating hexagon of statistical techniques

2 Conventional Fault Prediction Techniques In SFP, some of the traditional ST are used which includes logistic regression (LR), linear regression (LIR), univariate regression (UR), and multivariate regression (MR) [2] have become reliable for researchers in locating faults but these techniques are not useful for the novel research. Thus, researchers came up with the use of artificial intelligence (AI) [3] and its techniques [4]. Also researchers are exploring various aspects of AI to solve SFP [5]. The ST has their own profits [6] means they are highly efficient in finding the known faults [7] but the Statistical Technique [8] for SFP [9] is less helpful as numbers of incorrect faults are low. Figure 2 illustrates the types of ST which have been proposed in the literature.

Software Fault Prediction Using Machine-Learning Techniques

543

3 SFP Using MLT This research aims to hybrid such MLT which improves the SQ and fault prediction. MLT includes decision tree (DT), ba