Information relationships in PROLOG programs: how do programmers comprehend functionality?
References (20)
Towards a theory of the cognitive processes in computer programming
International Journal of Man-Machine Studies
(1977)Towards a theory of the comprehension of computer programs
International Journal of Man-Machine Studies
(1983)- et al.
Psychological perspectives for software science
Information Processing & Management
(1984) Stimulus structures and mental representations in expert comprehension of computer programs
Cognitive Psychology
(1987)Problem solving and the development of abstract categories in program languages
Memory & Cognition
(1981)- et al.
Skilled memory
In search of software complexity
- et al.
A simple measure of software complexity
ACM Sigmetrics
(1985)Advancing the study of programming with computer-aided protocol analysis
Cited by (29)
Systematic literature review of empirical studies on mental representations of programs
2020, Journal of Systems and SoftwareCitation Excerpt :Another group of studies included in our review found that programmers formed mental representations at varying levels of abstraction. Studies performed by Pennington (1987b), Bergantz and Hassell (1991), Burkhardt et al. (1997), Burkhardt et al. (2002), Ramalingam and Wiedenbeck (1997), Corritore and Wiedenbeck (1999), Wiedenbeck and Ramalingam (1999), Wiedenbeck et al. (1999), Mosemann and Wiedenbeck (2001), and Parkin (2004) support the two model theory that programmers form low level program models and high level situation or domain models during the comprehension process. Studies conducted by von Mayrhauser and Vans (1994, 1995, 1996, 1998), Vans (1996), von Mayrhauser et al. (1997), and Vans et al. (1999) found that programmers formed mental models at three levels of abstraction and switched between them during the comprehension process, with the program model as the lowest level, the situation model as the intermediate level, and the domain model as the highest level of abstraction.
Pair programming and the mysterious role of the navigator
2008, International Journal of Human Computer StudiesCitation Excerpt :For example, Brooks (1983) suggests the existence of a set of five ‘domains’ (problem, identifier, algorithmic, programming language and execution) and Pennington (1987) mixes abstraction and domain in her discussion of a detailed domain (of specific programming operations and variables), a programme domain (of routines and files) and a real-world domain. Bergantz and Hassell (1991) also discuss programming as requiring hierarchical models of abstract levels of functionality. Here we refer to the term ‘levels of abstraction’ to consider both level of granularity and domain.
A survey of external representations employed in object-oriented programming environments
2003, Journal of Visual Languages and ComputingFocal structures and information types in Prolog
2001, International Journal of Human Computer StudiesExploratory study of program comprehension strategies of procedural and object-oriented programmers
2001, International Journal of Human Computer StudiesNovice comprehension of small programs written in the procedural and object-oriented styles
1999, International Journal of Human Computer Studies