Issue No. 08 - August (1991 vol. 17)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.83912
<p>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.</p>
program slicing; software maintenance problem; program slice; line number; single variable decomposition slices; set inclusion; slice-based decomposition; unmodified components; semantically consistent changes; linear time; program testing; software maintenance
J. Lyle and K. Gallagher, "Using Program Slicing in Software Maintenance," in IEEE Transactions on Software Engineering, vol. 17, no. , pp. 751-761, 1991.