Expertise in Debugging Computer Programs: Situation-Based versus Model-Based Problem Solving

Abstract

This paper reports the results of an exploratory study that investigated expert and novice debugging processes with the aim of assessing the relevance of situation-dependent problem solving to debugging expertise. The method used was verbal protocol analysis. Data was collected from sixteen subjects employed by the same organization. The study first controlled for the variability in individual problem solving by incorporating certain aspects of programmers\u27 debugging processes into the debugging model. The criterion of expertise was the subjects\u27 ability to effectively chunk the program they were required to debug. This method proved effective in explaining much of the variability in debugging performance and provided the basis for the expert-novice classification used in subsequent analysis of the protocol data. Further analysis focused on situational factors in debugging. lt took two forms: (1) a static or content analysis of subjects\u27 problem solving behavior that aggregated data across a protocol: and (2) a dynamic or process analysis of subjects\u27 debugging processes that examined data as closely as possible to its natural state. The results support the notion that experts respond to the data in the task while novices are constrained by preconceived ideas or early hypotheses about the source of error

    Similar works