Title :
Automated Support for Propagating Bug Fixes
Author :
Sun, Boya ; Chang, Ray-Yaung ; Chen, Xianghao ; Podgurski, Andy
Author_Institution :
Case Western Reserve Univ., Cleveland, OH
Abstract :
We present empirical results indicating that when programmers fix bugs, they often fail to propagate the fixes to all of the locations in a code base where they are applicable, thereby leaving instances of the bugs in the code. We propose a practical approach to help programmers to propagate many bug fixes completely. This entails first extracting a programming rule from a bug fix, in the form of a graph minor of an enhanced procedure dependence graph. Our approach assists the programmer in specifying rules by automatically matching simple rule templates; the programmer may also edit rules or compose them from scratch. A graph matching algorithm for detecting rule violations is then used to locate the places in the code base where the bug fix is applicable. Our approach does not require that rules occur repeatedly in the code base. We present empirical results indicating that the approach nevertheless exhibits good precision.
Keywords :
graph theory; software engineering; bug fix propagation; graph matching algorithm; procedure dependence graph; programming rule extraction; Computer bugs; Cryptography; Programming profession; Reliability engineering; Software debugging; Software maintenance; Software reliability; Sun; Switching systems; Telephony; Bug detection; data mining; mining software repositories; static analysis;
Conference_Titel :
Software Reliability Engineering, 2008. ISSRE 2008. 19th International Symposium on
Conference_Location :
Seattle, WA
Print_ISBN :
978-0-7695-3405-3
Electronic_ISBN :
1071-9458
DOI :
10.1109/ISSRE.2008.29