PPIG 2016 - 27th Annual Workshop
The role of Visualisation in the study of Computer Programming
Sarah Alhammad, Shirley Atkinson, Liz Stuart
Abstract: This paper presents a study of how visualization tools and methods are used to support the study of computer programming. The purpose of this study was to establish whether visualisation could be exploited more fully or more effectively to support this learning. Furthermore, if that were the case, then this study would aim to define the requirements of novice programmers. Greater understanding of the requirements of novice programmers is expected to steer this research towards finding better solutions to the challenges faced by students of programming.
The paper presents a study of three distinct visualisation tools Jeliot(Moreno, Myller, Sutinen, & Ben-Ari, 2004), Online Python Tutor (Guo, 2013) and Visual Logic (Gudmundsen & Olivieri, 2011). The nature of how visualisation is exploited in each of these tools is evaluated. This evaluation is based on how the tool visualises the execution of (i) loops, (ii) object-oriented programming and (iii) the parameter –passing by value/reference. These three problems are a sample of problems that students find complex when writing programs (Eckerdal et al., 2006; Boustedt et al., 2007; Sanders et al., 2008).
The results presented in this paper show the characteristics in the visualisation tools and the students’ preferences in using them. The students evaluated the following eight characteristics: tool availability, error explanation, expression evaluation, the interface, programming languages the tool supports, animation, class hierarchy and save the execution history.