An evaluation of the cognitive processes of programmers engaged in software debugging

Citation
Je. Hale et al., An evaluation of the cognitive processes of programmers engaged in software debugging, J SOFTW MAI, 11(2), 1999, pp. 73-91
Citations number
31
Categorie Soggetti
Computer Science & Engineering
Journal title
JOURNAL OF SOFTWARE MAINTENANCE-RESEARCH AND PRACTICE
ISSN journal
1040550X → ACNP
Volume
11
Issue
2
Year of publication
1999
Pages
73 - 91
Database
ISI
SICI code
1040-550X(199903/04)11:2<73:AEOTCP>2.0.ZU;2-F
Abstract
This study empirically evaluates Hale and Haworth's cognitive processes mod el for programmers engaged in software debugging. They claim that across al l levels of experience, software programmers engage in the same activities and follow a similar pattern of activities directed by search strategies, V erbal protocol analysis of data gathered during a staged problem-solving ep isode (e,g,, fixing a hidden bug) was used to evaluate Hale and Haworth's h ypothesized debugging tasks, as well as the hypothesized sequence in which the tasks are performed. Empirical support for Hale and Haworth's model was strong. Specifically, the set of hypothesized debugging tasks is both accu rate and complete. Further, the model effectively represents the process by which programmers generate and evaluate hypotheses, and the manner in whic h programmers recursively attack a debugging problem. Unsupported are those complex debugging sequences involving multiple possible paths. This study extends the understanding of the mechanisms by which programmers choose, im plement and evaluate debugging rules and strategies. Results verify that al l observed programmers utilize a pattern of cognitive process steps as well as comprehension strategies to derive needed declarative knowledge, The re sults support a goal-driven model of program debuggers' cognitive processes depicting a hierarchy of levels with an inherent control structure that di rects debugging process steps. Copyright (C) 1999 John Wiley & Sons, Ltd.