An empirically-derived control structure for the process of program understanding

Research output: Contribution to journalArticlepeer-review

Abstract

Various models of program undestanding have been developed from the Schema Theory. To data, the authors have sought to identify the knowledge that programmers have and use in understanding programs, i.e. Programming Plans and Rules of Discourse. However, knowledge is only one aspect of program understanding. The other aspect is the cognitive mechanisms that use knowledge. The contribution of this study is the identification of different mechanisms involved in program understanding by experts, specifically the mechanisms which cope with novelty. An experiment was conducted to identify and describe the expert's strategies involved in understanding usual (plan-like) and unusual (unplan-like) programs. While performing a fill-in-a-blank task, subjects were asked to talk aloud. The analysis of verbal protocols allowed the identification of four different strategies of understanding. Under "normal" conditions the strategy of sympbolic simulation is involved. But when failures occur additional strategies are required. The authors identified three types of understanding failures the subject may experience (no expectation, expectation clashes, insufficient expectations) and the additional strategies invoked in those cases: (1) reasoning according to rules of discourse and principles of the taks domain; (2) reasoning with plan constrains; (3) concrete simulation. The authors develop an operational description of these strategies and discuss the control structure of program understanding in the framework of schema theory.

Original languageEnglish
Pages (from-to)323-342
Number of pages20
JournalInternational Journal of Man-Machine Studies
Volume33
Issue number3
DOIs
Publication statusPublished - 1 Jan 1990

Fingerprint

Dive into the research topics of 'An empirically-derived control structure for the process of program understanding'. Together they form a unique fingerprint.

Cite this