Font Size: a A A

Research And Implementation Of Software Fault Location Method Based On Intelligent Technology

Posted on:2022-09-06Degree:MasterType:Thesis
Country:ChinaCandidate:F GuoFull Text:PDF
GTID:2518306752997559Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the increasing demand for software in various fields and the sharp increase in the amount of information processing,the scale of software systems has become increasingly large and the structure has become increasingly complex.How to locate software faults in a targeted manner,detect defective programs quickly and accurately,and improve the debugging efficiency of software programs is still facing challenges.Aiming at the problems of low-efficiency and low-accuracy fault location for large-scale software and upgrades of the same software,this article uses the source code of the program as the research object,oriented to two different scenarios of software single fault location and software multiple fault location,using traditional machine learning technology And the recent deep learning technology as the basic component of the solution,carry out the software fault location method research,the specific research content is as follows:1.In the software single fault location scenario,the existing neural network-based software fault location methods have problems such as large coverage feature matrix and repeated information.The software fault location method based on a convolutional neural network is studied.This method designs a coverage feature matrix of function and branch granularity to remove redundant information in the original coverage feature matrix.Furthermore,a software fault location model based on a convolutional neural network is proposed,which uses the feature extraction capability of deep learning to learn the features of the execution information of the program test case set,and then realize the suspicious evaluation of the program statement.Experiments were conducted on 7 benchmark program data sets and compared with other representative software fault location methods.The experimental results show that the proposed method can reduce the amount of code inspection by an average of 9.16%,which is performed in 85.71% of the experimental scenarios.Higher fault location efficiency verifies the effectiveness of the method.2.In the software multi-fault location scenario,the existing clustering algorithm-based fault location method ignores the problem of ranking influence when measuring the distance between test cases,and proposes a clustering algorithm for software multi-fault location.In this algorithm,a distance measurement method based on ranking weight is designed,and a new cluster number estimation algorithm is proposed.Experiments were performed on 7benchmark program data sets and compared with the other two representative methods.Experimental results show that the method proposed in this paper can reduce the amount of code inspection by 29.6% on average,and shows higher fault location efficiency in 93.45%of the experimental scenarios,which verifies the effectiveness of the method.3.Based on the above research results,a software fault location system is designed and implemented.The system is divided into two parts: software program processing and program statement suspicious evaluation.The former is responsible for the collection and preprocessing of program execution information,and the latter is responsible for the realization of software fault location methods in single fault and multiple fault scenarios,and the implementation is given.result.
Keywords/Search Tags:Software fault location, convolutional neural network, clustering algorithm, parallel debugging, multiple faults
PDF Full Text Request
Related items