Title :
Mining Sequential Patterns of Predicates for Fault Localization and Understanding
Author :
Zebao Gao ; Zhenyu Chen ; Yang Feng ; Bin Luo
Author_Institution :
State Key Lab. for Novel Software Technol., Nanjing Univ., Nanjing, China
Abstract :
Fault localization has been widely recognized as one of the most costly activities in software engineering. Most of existing techniques target a single faulty entity as the root cause of a failure. However these techniques often fail to reveal the context of a failure which can be valuable for the developers and testers to understand and correct faults. Thus some tentative solutions have been proposed to localize faults as sequences of software entities. However, as far as we know, none of these pioneering works consistently handles execution data in a sequence-oriented way, i.e., they analyze suspiciousness of software entities separately before or after the construction of a faulty sequence. In this paper, we establish a systematic framework based on sequential-pattern mining to assist fault localization. We model the executions of test cases as sequences of predicates. Our framework outputs sequential patterns which are more likely related to the actual faults based on a 3-stage procedure: a preprocessing stage to prune sequences of predicates, a mining stage to discover candidate sequential patterns based on the revised SPADE mining algorithm, and a ranking stage to obtain top K results according to our novel metrics. The obtained sequential patterns of predicates can not only provide information about the locations of faults, but also convey valuable context information for understanding the root causes of software failures. A preliminary experiment on some widely used benchmarks was conducted to evaluate the performance of our framework. The experimental results show that our technique is effective and efficient in revealing causes of failures.
Keywords :
data mining; software fault tolerance; SPADE mining algorithm; execution data handling; failure cause; fault localization; fault understanding; mining stage; pattern discovery; preprocessing stage; ranking stage; sequential pattern mining; single faulty entity; software engineering; software entity sequence; software entity suspiciousness; systematic framework; Context; Data mining; Instruments; Measurement; Runtime; Software systems;
Conference_Titel :
Software Security and Reliability (SERE), 2013 IEEE 7th International Conference on
Conference_Location :
Gaithersburg, MD
Print_ISBN :
978-1-4799-0406-8
DOI :
10.1109/SERE.2013.33