Publication | Closed Access
Automated Support for Propagating Bug Fixes
11
Citations
22
References
2008
Year
Unknown Venue
Software MaintenanceCode BaseEngineeringVerificationSoftware EngineeringSource Code AnalysisSoftware AnalysisFormal VerificationAutomated Software EngineeringData ScienceSoftware MiningComputer ScienceStatic Program AnalysisAutomated RepairSoftware DesignBug FixProgram AnalysisSoftware TestingFormal MethodsProgramming RuleSystem SoftwareAutomated SupportTooling Support
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.
| Year | Citations | |
|---|---|---|
Page 1
Page 1