Software fault localization, the act of identifying the locations of faults in a program, is widely recognized to be one of the most tedious, time consuming, and expensive-yet equally critical …
T Eisenbarth, R Koschke… - IEEE Transactions on …, 2003 - ieeexplore.ieee.org
Understanding the implementation of a certain feature of a system requires identification of the computational units of the system that contribute to this feature. In many cases, the …
J Law, G Rothermel - 25th International Conference on …, 2003 - ieeexplore.ieee.org
Impact analysis, determining when a change in one part of a program affects other parts of the program, is time-consuming and problematic. Impact analysis is rarely used to predict …
WE Wong, R Gao, Y Li, R Abreu… - Handbook of Software …, 2023 - Wiley Online Library
This chapter describes traditional and intuitive fault localization techniques, including program logging, assertions, breakpoints, and profiling. Many advanced fault localization …
X Zhang, R Gupta, Y Zhang - 25th International Conference on …, 2003 - ieeexplore.ieee.org
Dynamic slicing algorithms can greatly reduce the debugging effort by focusing the attention of the user on a relevant subset of program statements. In this paper we present the design …
N Gupta, H He, X Zhang, R Gupta - Proceedings of the 20th IEEE/ACM …, 2005 - dl.acm.org
Software debugging is the process of locating and correcting faulty code. Prior techniques to locate faulty code either use program analysis techniques such as backward dynamic …
X Zhang, H He, N Gupta, R Gupta - Proceedings of the sixth …, 2005 - dl.acm.org
Dynamic slicing algorithms have been considered to aid in debugging for many years. However, as far as we know, no detailed studies on evaluating the benefits of using dynamic …
Current slicing techniques cannot handle systems written in multiple programming languages. Observation-Based Slicing (ORBS) is a language-independent slicing technique …
X Zhang, R Gupta - ACM SIGPLAN Notices, 2004 - dl.acm.org
Although dynamic program slicing was first introduced to aid in user level debugging, applications aimed at improving software quality, reliability, security, and performance have …