Expert Programmer Comprehension of Computer Programs.
Abstract:
This report summaries research on experience programmers comprehension of computer programs carried out during the 36-month contract period of September 1, 1982 through August 31, 1985. Based on an extensive review of the programming skill literature, we proposed an analysis of programs based on multiple abstractions points-of-view that characterize program text and design. Research questions concerned how multiple abstractions are coordinated into effective mental representations necessary to comprehend programs how different kinds of programming knowledge enter into program comprehension what comprehension form those who do not. Our research results suggest a two-stage model of comprehension. In the first stage, procedural representations dominate program understanding in later stages, functional representation appear to dominate. Changes in the dominant representation were more extreme for programmers who talked out loud while working, suggesting that both time and task demand influence the nature of program understanding.