This paper presents one experiment to explain why and under which circumstances visual programming languages would be easier to understand than textual programming languages. Towards this goal we bring together research from psychology of programming and image processing. According to current theories of imagery processing imagery facilitates a quicker access to semantic information. Thus, visual programming languages should allow for quicker construction of a mental representation based on data #ow relationships of a program than procedural languages. To test this hypothesis the mental models of C and spreadsheet programmers were assessed in di!erent program comprehension situations. The results showed that spreadsheet programmers developed data #ow based mental representations in all situations, while C programmers seemed to access "rst a control #ow and then data #ow based mental representations. These results could help to expand theories of mental models from psychology of programming to account for the e!ect of imagery. 2001 Academic Press KEYWORDS: imagery; mental model; visual programming language; spreadsheets; C; program comprehension. Program comprehension is an important part of computer programming skill, both from a practical and a theoretical perspective. It is a complex cognitive skill, which involves the acquisition of a mental representation of program structure and function. From a theoretical viewpoint, comprehension involves the assignment of meaning to a particular program, an accomplishment that requires the extensive application of specialized knowledge. Thus, research on program comprehension provides an e!ective means for studying the role of particular kinds of knowledge from a cognitive psychology perspective. From a practical viewpoint, the ability to understand programs written by others is an important component of a programmer's skill set. During program comprehension the programmer "nds her/himself performing programming tasks such as debugging, modi-"cation and, in general, code reuse. Pennington (1987a) estimated that more than 50% of all professional programmer time is spent on program maintenance tasks that involve modi"cation and updates of previously written programs. Because other programmers
In addition, they support the creation of mental models of programs REF .
Are visual programming languages better ? The role of imagery in program comprehension
Computer Science