How Cognitive Processes Aid Program Understanding.
Abstract
A theoretical model of how an expert programmer goes about understanding a piece of software is presented. This understanding plays an especially critical role in software maintenance tasks. The model is based on three cognitive processes: CHUNKING, SLICING, and HYPOTHESIS GENERATION and VERIFICATION. These processes are used in conjunction with a programmer's knowledge base and categories of information critical to program understanding are identified. The model also takes advantage of certain characteristics of an associative memory to describe, using a semantic net representation, the mechanisms behind these processes and the organization of memory resulting from their use. The benefits of documentation and the use of commenting and mnemonics are described in terms of the model and may be useful as a guide for incorporating these into the code.
Document Details
- Document Type
- Technical Report
- Publication Date
- Jun 01, 1985
- Accession Number
- ADA159061
Entities
People
- P. R. Dorin
Organizations
- Naval Postgraduate School