PSP-Finder: A Defect Detection Method Based on Mining Correlations from Function Call Paths
-
Graphical Abstract
-
Abstract
Large scale programs usually imply many programming rules, which are missing from the specification documents. However, if programmers violate these rules in the process of programming, it is possible to introduce software defects. Previous works on mining function call correlation patterns only use structural information of the program, while control flow, data flow or other semantic information of the program are not exploited in those approaches. As a result, the defect detecting ability is restricted and high false rate is caused. This paper proposes a defect detection method based on mining function call association rules from program paths, which can be provided by simple static analysis. Then, the programs are automatically checked against the function call association rules for detecting suspicious defects. Based on this approach, experiments are carried out on a group of open source projects. The experiment results show that this approach can improve the capability of detecting defects and find more bugs related to program execution path. In addition, the false positive function call patterns and the overhead for manually validating suspicious defects are reduced.
-
-