Software development is a process in which a developer produces specified functionality as well as software errors, called bugs. The process of finding and fixing those errors, called debugging, is one of the most expensive and time-consuming parts of software development which is the main reason why many automatic fault localization methods have been developed.
The main goal of this master thesis is to compare multiple software fault localization methods and to determine which provides the best results. We have developed a repository of faulty test programs and led it into the application FaultLocalization, which returns a ranking list of chosen methods as its output. The results of the analysis performed as part of the thesis prove that the main reference method Tarantula provides very good results, while the best results are achieved by the Overlap method.
|