Dynamic forward slicing for object-oriented programs
Zhi Cui
Abstract
Open-access reader
Zhi Cui
Abstract
Open-access reader
Program slicing, a program reduction technique, identifies codes that are related to a given function or variable of interest in a given program. It fulfills the task of decomposing and filtering a large program to restrict the focus to some specific parts. Program slicing has applications in software maintenance, reverse engineering, testing, and debugging. Program slicing can be mainly classified into static slicing and dynamic slicing. In this thesis, we introduce a new forward slicing approach for computing dynamic slices for OO programs. Our algorithm computes dynamically slices for all program components executed at run-time, without requiring any major recording of the program execution trace. We also propose an optimized algorithm as a solution to compute slices in the presents of exception handling in OO programs. The presented algorithm addresses additional issues related to the elimination of the notion of TopSlices from the based algorithm. Instead, our algorithm applies a registration strategy for slice computation, so that reduces the run-time storage overhead.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Program slicing, a program reduction technique, identifies codes that are related to a given function or variable of interest in a given program. It fulfills the task of decomposing and filtering a large program to restrict the focus to some specific parts. Program slicing has applications in software maintenance, reverse engineering, testing, and debugging. Program slicing can be mainly classified into static slicing and dynamic slicing. In this thesis, we introduce a new forward slicing approach for computing dynamic slices for OO programs. Our algorithm computes dynamically slices for all program components executed at run-time, without requiring any major recording of the program execution trace. We also propose an optimized algorithm as a solution to compute slices in the presents of exception handling in OO programs. The presented algorithm addresses additional issues related to the elimination of the notion of TopSlices from the based algorithm. Instead, our algorithm applies a registration strategy for slice computation, so that reduces the run-time storage overhead.
Key concepts: Program slicing, Slicing, Debugging, Computer science, TRACE (psycholinguistics), Overhead (engineering), Task (project management), Programming language