The effectiveness of Zoom Visual Flow (ZViF) technique in program comprehension activities

Many techniques and tools have been developed to improve program comprehension but most tools are unsuitable for novices. Some tools are not user friendly, some designs are more suitable to expert programmers and some integrated development environments (IDEs) are very simple and fail to support program comprehension needs among the users. These factors hinder the learning process and may become obstacles to users who have no programming background. This paper attempts to improve program comprehension by using Zoom Visual Flow (ZViF) technique that represents source code in graphical views. It also gives some insights on how to improve visual presentation method in a program editor or an IDE. A lab experiment was conducted to determine the effectiveness of the technique. The respondents were asked to determine their preference between ZViF technique and Control Structured Diagram (CSD). CSD is one of the best techniques that uses graphic to visualize a program. The result shows that users prefer the proposed technique compared to CSD as the ZViF helps to improve program comprehension among novices.

[1]  B. Shneiderman,et al.  Flowchart techniques for structured programming , 1973, SIGP.

[2]  Peter Brusilovsky,et al.  What should be visualized?: faculty perception of priority topics for program visualization , 2006, SGCS.

[3]  James H. Cross,et al.  Graphical extensions for pseudo-code, PDLs, and source code , 1988, CSC '88.

[4]  Nancy Pennington,et al.  Comprehension strategies in programming , 1987 .

[5]  Elliot Soloway,et al.  Empirical Studies of Programmers: Second Workshop , 1991 .

[6]  James Martin,et al.  Diagramming techniques for analysts and programmers , 1984 .

[7]  Carma McClure,et al.  Action diagrams: Clearly structured program design , 1985 .

[8]  T. Dean Hendrix,et al.  The Control Structure Diagram: An Overview and Initial Evaluation , 1998, Empirical Software Engineering.

[9]  Margaret M. Burnett,et al.  Visual Programming , 1995 .

[10]  T. Dean Hendrix,et al.  Do visualizations improve program comprehensibility? experiments with control structure diagrams for Java , 2000, SIGCSE '00.

[11]  B. A. Myers,et al.  Visual programming, programming by example, and program visualization: a taxonomy , 1986, CHI '86.

[12]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[13]  W. W. Royce,et al.  Managing the development of large software systems , 1970 .

[14]  Cornelia M. Yoder,et al.  Nassi-Shneiderman charts an alternative to flowcharts for design , 1978 .

[15]  Essi Lahtinen,et al.  Targeting program visualizations , 2007, ITiCSE '07.

[16]  Cornelia M. Yoder,et al.  Nassi-Shneiderman charts an alternative to flowcharts for design , 1978 .