A Review of Generic Program Visualization Systems for Introductory Programming Education

被引:206
作者
Sorva, Juha [1 ]
Karavirta, Ville [1 ]
Malmi, Lauri [1 ]
机构
[1] Aalto Univ, Dept Comp Sci & Engn, FI-00076 Aalto, Finland
关键词
Human Factors; Introductory programming education; CS1; software visualization; program visualization; program dynamics; notional machine; engagement taxonomy; literature review; COGNITIVE LOAD THEORY; ALGORITHM VISUALIZATION; ANIMATION; ENVIRONMENT; INTERFACE; LANGUAGE; DESIGN; OBJECT; !text type='JAVA']JAVA[!/text; TOOL;
D O I
10.1145/2490822
中图分类号
G40 [教育学];
学科分类号
040101 ; 120403 ;
摘要
This article is a survey of program visualization systems intended for teaching beginners about the runtime behavior of computer programs. Our focus is on generic systems that are capable of illustrating many kinds of programs and behaviors. We inclusively describe such systems from the last three decades and review findings from their empirical evaluations. A comparable review on the topic does not previously exist; ours is intended to serve as a reference for the creators, evaluators, and users of educational program visualization systems. Moreover, we revisit the issue of learner engagement which has been identified as a potentially key factor in the success of educational software visualization and summarize what little is known about engagement in the context of the generic program visualization systems for beginners that we have reviewed; a proposed refinement of the frameworks previously used by computing education researchers to rank types of learner engagement is a side product of this effort. Overall, our review illustrates that program visualization systems for beginners are often short-lived research prototypes that support the user-controlled viewing of program animations; a recent trend is to support more engaging modes of user interaction. The results of evaluations largely support the use of program visualization in introductory programming education, but research to date is insufficient for drawing more nuanced conclusions with respect to learner engagement. On the basis of our review, we identify interesting questions to answer for future research in relation to themes such as engagement, the authenticity of learning tasks, cognitive load, and the integration of program visualization into introductory programming pedagogy.
引用
收藏
页数:64
相关论文
共 224 条
[1]   Visualizations in Preparing for Programming Exercise Sessions [J].
Ahoniemi, Tuukka ;
Lahtinen, Essi .
ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 178 (137-144) :137-144
[2]  
Allen E., 2002, SIGCSE Bulletin, V34, P137, DOI 10.1145/563517.563395
[3]  
Alsaggaf W, 2012, P 23 AUSTR C INF SYS, P1
[4]  
Anderson LW., 2011, TAXONOMY LEARNING TE, DOI DOI 10.7771/1541-5015.1355
[5]  
Andrianoff S. K., 2002, SIGCSE Bulletin, V34, P121, DOI 10.1145/563517.563386
[6]  
Velázquez-Iturbide JA, 2008, ITICSE '08: PROCEEDINGS OF THE 13TH ANNUAL CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, P225
[7]  
[Anonymous], 2005, The Cambridge handbook of multimedia learning, DOI [DOI 10.1017/CBO9780511816819.016, 10.1017/CBO9781139547369.017, DOI 10.1017/CBO9781139547369]
[8]  
[Anonymous], 2006, P 2 INT WORKSH COMP, DOI 10.1145/1151588.1151593
[9]  
[Anonymous], P 11 KOL CALL INT C
[10]  
[Anonymous], P 17 ACM ANN C INN T