Title :
A hybrid program slicing framework
Author :
Rilling, Juergen ; Karanth, Bhaskar
Author_Institution :
Dept. of Comput. Sci., Concordia Univ., Montreal, Que., Canada
Abstract :
Program slicing is a decomposition technique that transforms a large program into a smaller one that contains only statements relevant to the computation of a selected function. Applications of program slicing can be found in software testing, debugging, and maintenance by reducing the amount of data that has to be analyzed in order to comprehend a program or parts of its functionality. In this paper, we present a general dynamic and static slicing algorithm. Both algorithms are based on the notion of removable blocks and compute executable slices for object-oriented programs. In the second part of the paper we present our hybrid-slicing framework that was designed to take advantage of static and dynamic slicing algorithms that share the common notion of removable blocks, to enhance traditional slicing techniques. The hybrid-slicing framework is an integrated part of our existing MOOSE software comprehension framework that is used to demonstrate the applications and usability of these algorithms for the comprehension of software systems
Keywords :
object-oriented programming; program debugging; program slicing; software maintenance; MOOSE software comprehension framework; debugging; decomposition technique; dynamic slicing algorithm; executable slices; hybrid program slicing framework; object-oriented programs; removable blocks; software maintenance; software testing; static slicing algorithm; Application software; Computer science; Debugging; Heuristic algorithms; Programming profession; Reverse engineering; Software maintenance; Testing;
Conference_Titel :
Source Code Analysis and Manipulation, 2001. Proceedings. First IEEE International Workshop on
Conference_Location :
Florence
Print_ISBN :
0-7695-1387-5
DOI :
10.1109/SCAM.2001.972662