Learning Support System for Visualizing Memory Image and Target Domain World, and Classroom Practice for Understanding Pointers
DOI:
https://doi.org/10.58459/icce.2016.1306Abstract
In this paper, we describe a learning support system that can visualize program behavior in memory image and status of the target domain world, and classroom practice that introduces the system to a real class. Several learning support systems have been developed for supporting novice learners in understanding program codes. However, visualization in existing systems often conceals the concrete value of variables such as pointers; the way in which each visualized object is located on the memory is not made explicit. In order to address this issue, we developed a learning support system that visualizes simultaneously and synchronously the memory image that is the field that presents the concrete value of variables, and the target domain world that is the field that presents logically the data structures processed by the program. Moreover, in order to allow teachers to set their instruction content based on the growing variety of learner background knowledge, our system visualizes the status of the target domain world according to the visualization policy defined by the teacher. We conducted classroom practice for understanding pointers in connection with a memory model, thus introducing our system to a real class. In this practice, we included a learning step for the students to observe the memory image of variables and compare it with the status of the target domain world, which had not been included in our preceding practice. Analysis of answered scores in a questionnaire conducted after the practice suggests that our system contributed to reducing irregularities in the participants’ understanding, and that appropriate learning support reached every participant of our practice using our system.