More Accurate Dynamic Slicing for Better Supporting Software Debugging
Sun 25 Oct 2020 21:15 - 21:45 at Infante - RT1 - Fault Localization and Debugging Infante Chair(s): José Campos
Dynamic slicing and its underlying dynamic dependence analysis have been extensively studied and used as the foundation for numerous automated-debugging techniques. One limitation of dynamic slicing, when used for debugging, is that it only considers program dependences that are actually observed during the execution(s) of interest. Some faults, however, involve potential, rather than actual dependences-dependences that would be observed if the correct program was executed but are missing when the faulty program is executed. In particular, traditional dynamic slicing may fail to locate faults that involve assignments that should have occurred in a correct execution and did not occur in the failing execution being debugged. Relevant slicing techniques partially address this problem by identifying missing assignments due to incorrect control-flow. However, they do not consider the case of assignments that do occur but modify the wrong memory location (e.g., the wrong element of an array). Debugging techniques based on existing dynamic slicing approaches may therefore miss faults in the presence of this kind of incorrect assignments. To address this problem, we introduce the concept of potential memory-address dependence (PMD). Intuitively, PMDs represent the dependence relationship between an instruction s that affects the computation of a memory-address ma (e.g., by defining an array index or a pointer offset) and memory read instructions that are not observed to be dependent on s but could be affected by s (i.e., access the memory at ma) in a counterfactual execution of s. We also present a technique that computes PMDs and represents them on standard dynamic dependence graphs. To assess the effectiveness of our technique for debugging, we implemented PMD-Slicer, a dynamic slicer that accounts for PMDs, and performed an empirical evaluation on a benchmark of 364 real faults and 880 fault-revealing test cases. Our results are promising, in that almost 10% of the failing tests contained cases in which PMD-Slicer generated slices that included the corresponding fault, while a traditional dynamic slicer did not. Furthermore, considering PMDs only moderately increased slice sizes.
Sun 25 OctDisplayed time zone: Lisbon change
09:15 - 10:45 | RT1 - Fault Localization and Debugging InfanteResearch Papers at Infante +11h Chair(s): Andreas Zeller CISPA, Germany | ||
09:15 30mTalk | Can We Predict the Quality of Spectrum-based Fault Localization? Research Papers Mojdeh Golagha Technical University of Munich, Alexander Pretschner Technical University of Munich, Lionel Briand University of Luxembourg, University of Ottawa Link to publication DOI | ||
09:45 30mTalk | Substate Profiling for Enhanced Fault Detection and Localization: An Empirical Study Research Papers Rawad Abou Assi American University of Beirut, Wes Masri American University of Beirut, Chadi Trad American University of Beirut Link to publication DOI | ||
10:15 30mTalk | More Accurate Dynamic Slicing for Better Supporting Software Debugging Research Papers Link to publication DOI |
20:15 - 21:45 | RT1 - Fault Localization and Debugging InfanteResearch Papers at Infante Chair(s): José Campos University of Lisbon, Portugal | ||
20:15 30mTalk | Can We Predict the Quality of Spectrum-based Fault Localization? Research Papers Mojdeh Golagha Technical University of Munich, Alexander Pretschner Technical University of Munich, Lionel Briand University of Luxembourg, University of Ottawa Link to publication DOI | ||
20:45 30mTalk | Substate Profiling for Enhanced Fault Detection and Localization: An Empirical Study Research Papers Rawad Abou Assi American University of Beirut, Wes Masri American University of Beirut, Chadi Trad American University of Beirut Link to publication DOI | ||
21:15 30mTalk | More Accurate Dynamic Slicing for Better Supporting Software Debugging Research Papers Link to publication DOI |