Program behavior characterization and clustering: An empirical study for failure clustering

Danqing Zhang,Jianhui Jiang,Linbo Chen
DOI: https://doi.org/10.1109/ISSREW.2013.6688894
2013-01-01
Abstract:Failure clustering is considered as an effective method to alleviate the burden in software development and maintenance stage. However, since the overall software fault space is extremely large, the inherent complexity of the “fault-error-failure” chain becomes an obstacle in failure clustering. In this paper, we present a method of program behavior characterization and clustering which is able to examine and cluster failure behaviors of programs based on their normal executions. We first characterize program executions in order to model runtime behaviors. Then the runtime behaviors are clustered by using a typical fuzzy technique. After that, we evaluate two things: the accuracy of runtime behavior modeling, and the equivalence of a cluster in runtime characterization to that in failure clustering. For the SPEC CPU2000 and SPEC CPU2006 suites of benchmarks, the experimental results and analysis show that our method is effective at clustering similar failure behaviors based on their runtime behavior clustering.
What problem does this paper attempt to address?