2003•Spectrum Research Repository (Concordia University)Requires access

Dynamic forward slicing for object-oriented programs

Zhi Cui

Open publisher page 0 citations

Abstract

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.

Open-access reader

About this research paper

What this paper is about

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.

Why it matters

A significance statement is not available in the OpenAlex record.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

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

Related papers

Back to paper searchBrowse research topicsOriginal source
Dynamic forward slicing for object-oriented programs — Research Paper | ScholarLens