Title :
Using program slicing in software maintenance
Author :
Gallagher, Keith Brian ; Lyle, James R.
Author_Institution :
Dept. of Comput. Sci., Loyola Coll., Baltimore, MD, USA
fDate :
8/1/1991 12:00:00 AM
Abstract :
Program slicing is applied to the software maintenance problem by extending the notion of a program slice (that originally required both a variable and line number) to a decomposition slice, one that captures all computation on a given variable, i.e., is independent of line numbers. Using the lattice of single variable decomposition slices ordered by set inclusion, it is shown how a slice-based decomposition for programs can be formed. One can then delineate the effects of a proposed change by isolating those effects in a single component of the decomposition. This gives maintainers a straightforward technique for determining those statements and variables which may be modified in a component and those which may not. Using the decomposition, a set of principles to prohibit changes which will interfere with unmodified components is provided. These semantically consistent changes can then be merged back into the original program in linear time
Keywords :
program testing; software maintenance; line number; linear time; program slice; program slicing; semantically consistent changes; set inclusion; single variable decomposition slices; slice-based decomposition; software maintenance problem; unmodified components; Computer science; Couplings; Lattices; Programming profession; Software maintenance; Software testing; Software tools;
Journal_Title :
Software Engineering, IEEE Transactions on