Program slicing is a technique for determining which part of a program (the slice) is affecting the values computed at some point in time.
The term was coined by Mark Weiser in his PhD thesis at the University of Michigan (1979).
Mark David Weiser. 1979. Program slices: formal, psychological, and practical investigations of an automatic program abstraction method. Ph.D. Dissertation. University of Michigan, USA. Order Number: AAI8007856.
@phdthesis{weiser_1979,
author = {Weiser, Mark David},
title = {Program Slices: Formal, Psychological, and Practical Investigations of an Automatic Program Abstraction Method},
year = {1979},
institution = {University of Michigan}
}
M. Weiser, "Program Slicing," in IEEE Transactions on Software Engineering, vol. SE-10, no. 4, pp. 352-357, July 1984, doi: 10.1109/TSE.1984.5010248.
@article{5010248,
author={Weiser, Mark},
journal={IEEE Transactions on Software Engineering},
title={Program Slicing},
year={1984},
volume={SE-10},
number={4},
pages={352-357},
doi={10.1109/TSE.1984.5010248}
}
Baowen Xu, Ju Qian, Xiaofang Zhang, Zhongqiang Wu, and Lin Chen. 2005. A brief survey of program slicing. SIGSOFT Softw. Eng. Notes 30, 2 (March 2005), 1–36. https://doi.org/10.1145/1050849.1050865
@article{10.1145/1050849.1050865,
author = {Xu, Baowen and Qian, Ju and Zhang, Xiaofang and Wu, Zhongqiang and Chen, Lin},
title = {A Brief Survey of Program Slicing},
year = {2005},
publisher = {Association for Computing Machinery},
volume = {30},
number = {2},
doi = {10.1145/1050849.1050865},
journal = {SIGSOFT Softw. Eng. Notes},
pages = {1–36},
}