Notes on “Program understanding behavior during {debugging, corrective maintenance} of large scale software”

June 29, 2009

Program understanding behavior during debugging of large scale software: Von Mayrhauser, A. and Vans, A.M.

Program understanding behavior during corrective maintenance of large-scale software: Vans, A.M. and von Mayrhauser, A. and Somlo, G.

Very similar papers.


  1. What do programmers do when debugging code?
  2. Do programmers follow the Integrated Comprehension Model?
  3. Is there a common comprehension process? What is the role of hypotheses?
  4. What types of information do programmers look for during corrective maintenance?

An observational study of four programmers.

Integrated Comprehension Model has four components: Top down model (domain/application level), situation model (domain-independent, algorithmic level (e.g. a sort)), program model (bottom-up, control flow), knowledge base.

Programmer actions:

  • “Use of knowledge”, generating hypotheses
  • Chunking and learning new things at lower levels of abstraction


  • Comprehension occurs at low levels of abstraction while domain knowledge is insufficient
  • Domain knowledge allows rapid assimilation of software knowledge
  • Situation model is a bridge between program and top-down models.

Information needs:

  • Programmers need to build up their models at all levels of abstraction.

Programmers make hypotheses at all levels of abstraction. Most hypotheses are confirmed or abandoned, a few fail.

Editorial comment 1: Two near-identical papers. I wonder what happened.

Editorial comment 2: The conclusion:

“We consider these conclusions to be working hypotheses rather than generally validated behavior. The sample of subjects was simply too small. These conclusions should be validated through further observations. Unfortunately, such observational studies are costly.”

It’s just wrong. It confuses quantitative and qualitative research AND it makes excuses.

Editorial comment 3: For some reason, these papers were really hard to read. I guess I shouldn’t expect program comprehension researchers to know anything about paper comprehension.

%d bloggers like this: