ACM Home Page
Please provide us with feedback. Feedback
Programmers use slices when debugging
Full text PdfPdf (709 KB)
Source
Communications of the ACM archive
Volume 25 ,  Issue 7  (July 1982) table of contents
Pages: 446 - 452  
Year of Publication: 1982
ISSN:0001-0782
Author
Mark Weiser  Univ. of Maryland, College Park
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 14,   Downloads (12 Months): 129,   Citation Count: 101
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/358557.358577
What is a DOI?

ABSTRACT

Computer programmers break apart large programs into smaller coherent pieces. Each of these pieces: functions, subroutines, modules, or abstract datatypes, is usually a contiguous piece of program text. The experiment reported here shows that programmers also routinely break programs into one kind of coherent piece which is not coniguous. When debugging unfamiliar programs programmers use program pieces called slices which are sets of statements related by their flow of data. The statements in a slice are not necessarily textually contiguous, but may be scattered through a program.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Atwood, M.E. and Ramsey, H.R. Cognitive structures in the comprehension and memory of computer programs: An investigation of computer program debugging. TR-78-A21, U.S. Army Research Institute for the Behavioral and Social Sciences, Alexandria, Virginia, August, 1978.
 
2
Chase, W.G. and Simon, H.A. Perception in chess. Cognitive Psychology 5, 4, Oct 1973, 55-81.
 
3
Chi, M.T.H. and Glasser, R. Encoding process characteristics of experts and novices in physics. Symposium on Process Models of Skilled and Less Skilled Behavior in Technical Domains. American Educational Research Association, April, 1979.
 
4
DeGroot, A.D. Thought and Choice in Chess. Mouton Press, The Hague, 1965.
5
 
6
Gould, J.D. and Drongowski, P. An exploratory study of computer program debugging. Human Factors 1, 6, June 1974, 258- 277.
 
7
Gould, J.D. Some psychological evidence on how people debug computer programs. International J. of Man-Machine Studies 7, 1, Jan 1975, 151-182.
 
8
9
 
10
Larkin, J., McDermott, J., Simon, D.P., and Simon, H.A. Expert and novice performance in solving physics problems. Science 208, June 20, 1980, 1335-1342.
 
11
Lukey, F.J. Understanding and debugging programs. International J. of Man-Machine Studies 12, 2, (Feb. 1980), 189-202.
 
12
McKeithen, K.B. Assessing knowledge structures in novice and expert programmers. PhD Thesis, University of Michigan, Ann Arbor, MI, 1979.
 
13
Posner, M.I. and Keele, S.W. On the genesis of abstract ideas. 3". of Experimental Psychology 77, 3, July 1968, 353-363.
 
14
Posner, M.I. and Keele, S.W. Retention of abstract ideas. J. of Experimental Psychology 83, 2, Feb. 1970, 304-308.
 
15
Schwartz, J.T. An overview of bugs, In Debugging Techniques in Large Systems. Edited by Randall Rustin. Prentice-Hall, Englewood Cliffs, NJ, 1971.
 
16
Shneiderman, B. Exploratory experiments in programmer behavior. International J. of Computer and Information Sciences 5, 2, April 1976, 123-143.
 
17
Shneiderman, B. and Mayer, R. Syntactic/semantic interactions in programmer behavior: A model and experimental results. International J. of Computer and Information Sciences 7, 1979, 219- 239.
 
18
 
19
Siegel, S. Nonparametric Statistics for the Behavioral Sciences. McGraw-Hill, New York, 1955.
 
20
Sime, M.E., Green, T.R.G., and Guest, D.J. Scope marking in computer conditionals--A psychological evaluation. International J. of Man-Machine Studies 5, 1973, 105-113.
 
21
 
22
Weiser, M. The slicing abstraction in software production and maintenance. Reliable Software Systems Group Technical Memo (RSSM), University of Michigan, Ann Arbor, 1979.
 
23
Weiser, M. Theoretical foundations of program slices. Reliable Software Systems Group ( RSSM) Technical Memo 69, University of Michigan, Ann Arbor, MI 1979.
 
24
 
25
Weiser, M. Towards an iterative enhancement software development environment. Fourteenth Hawaii International Conference on System Science, Honolulu, HA, Jan. 1981.
26
27

CITED BY  101