Font Size: a A A

The Research Of Software Fault Location Based On Multi-layer Spectra

Posted on:2015-02-21Degree:MasterType:Thesis
Country:ChinaCandidate:Y B HeFull Text:PDF
GTID:2268330428972978Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Nowadays, computer software is closely related to people’s lives in society, and people has higher requirement for the quality of software. When failure occurs at run time, how to achieve the rapid, efficient and accurate software fault location is still the key problem in the academic and industrial field.Software fault localization method based on statements spectra often collects statement coverage information generated from the process when program run the test case sets, and then calculates suspicious of all the statements, order all the statements by suspicious descending, finally locates all the faulty statements. However, the efficiency and accuracy of software fault localization would be limited by the two problems existed in this method. One is that the method must calculates suspicious of all the statements because of lacking of certain statements screening mechanism, another one is that the method neglect the relation of dependence between statements. In order to solve the above problems, this paper proposes a software fault localization method based on multi-layer and multi-spectra. This method can be divide into two layer,including functions fault localization layer and statements fault localization layer. A fault report based on functions and fault report based on statements will be generate in two layers. We can achieve fault localization by the way of search statements by the rank of fault report based on statements, the contributions are:1)In the layer of functions fault localization, firstly,we use the sets of functions call pair as spectra to construct the functions call pair successful behavior diagrams and faulty behavior diagrams; then calculates suspicious of functions from variance analysis in these two diagrams; finally order all the functions by suspicious descending. We can actively screen functions that will most likely be faulty, generate fault report based on functions.2) In the layer of statements fault localization, firstly,we choose the function in the front of fault report, and then calculates suspicious of statements which exist in the function, secondly, we consider data dependency and control dependency relation between statements, thirdly, we will calculates suspicious of statement from suspicious of statement in data dependency and suspicious of statement in control dependency, finally, we order all the statements by suspicious descending, achieving fault localization by the way of search statements by the rank of fault report based on statements.3) We design experimental examples and the corresponding test cases, we also validate the method proposed in this paper by examples. It turns out the method can minimize code reviewed area and has higher efficiency compared with the Tarantula method and Ochiai method.
Keywords/Search Tags:multi-layer, spectra, software fault localization, suspicious
PDF Full Text Request
Related items