Font Size: a A A

Research On Dynamic Software Fault Prediction Based On Complex Network

Posted on:2017-04-13Degree:MasterType:Thesis
Country:ChinaCandidate:Q S LiuFull Text:PDF
GTID:2308330503982067Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the rapid development of software industry, the scale and complexity of software systems have been increased substantially, which makes software difficultly and costly to be maintained and optimized. Software fault prediction is a technology which can locate the fault-prone modules before software test to optimize software more efficiently. It constructs prediction model based on machine learning technologies using feature of software.In this dissertation, directed function call network is modeled according to the call relationships between functions, and prediction model based on network metrics is constructed to predict fault-prone module. Furthermore, static software analysis and dynamic function execution sequence analysis are integrated together to study software system more comprehensively.Firstly, call relationships between functions are obtained by tracing the function execution sequence, and software is mapped to directed function call networks. The structure of software network is analyzed, and metrics are calculated.Secondly, correlations between every network measure and software defects are analyzed. Prediction model is constructed using network metrics data to predict defects in the target software system. Scale metrics model and complexity metrics model are used as control subjects to evaluate the performance of network metrics model.Thirdly, high risk fragment mining algorithm HRFM is proposed to overcome the shortcomings of current software analysis methods that they just study the software from a single aspect. HRFM integrates static analysis and dynamic execution sequence analysis together to analyze software in a more comprehensive way. A structure called index-map is designed to describe execution sequence in a different way to accelerate the processing speed of HRFM. An algorithm based on index-map is proposed to locate execution intervals of program fragments. A pre-pruning strategy based on downward closure property is proposed to reduce the number of fragment candidates.Finally, experiments on open source software are conducted to test the validity of algorithms proposed in the dissertation.
Keywords/Search Tags:software fault prediction, complex network, software network, software execution sequence, logistic regression
PDF Full Text Request
Related items