Conference Proceeding Article
Software is a ubiquitous component of our daily life. We often depend on the correct working of software systems. Due to the difficulty and complexity of software systems, bugs and anomalies are prevalent. Bugs have caused billions of dollars loss, in addition to privacy and security threats. In this work, we address software reliability issues by proposing a novel method to classify software behaviors based on past history or runs. With the technique, it is possible to generalize past known errors and mistakes to capture failures and anomalies. Our technique first mines a set of discriminative features capturing repetitive series of events from program execution traces. It then performs feature selection to select the best features for classification. These features are then used to train a classifier to detect failures. Experiments and case studies on traces of several benchmark software systems and a real-life concurrency bug from MySQL server show the utility of the technique in capturing failures and anomalies. On average, our pattern-based classification technique outperforms the baseline approach by 24.68% in accuracy.
closed unique patterns, failure detection, iterative patterns, pattern-based classification, sequential database, software behaviors
ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD)
City or Country
LO, David; CHENG, Hong; Han, Jiawei; KHOO, Siau-Cheng; and SUN, Chengnian.
Classification of Software Behaviors for Failure Detection: A Discriminative Pattern Mining Approach. (2009). ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD). Research Collection School Of Information Systems.
Available at: http://ink.library.smu.edu.sg/sis_research/459
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License.