Understanding the execution of an object-oriented program can be a challenge for a student starting a CS1 course. We believe that a type of diagram that we call a memory diagram can aid the student in understanding object-oriented programming and can assist the instructor in assessing the student's understanding.Memory diagrams focus on how, in an abstract sense, the memory of the machine changes as the program executes. Though memory diagrams are a simple idea, by careful use of shape and placement, a number of key points about the meaning of a program fragment can be conveyed visually. We have found a correlation between a student's ability to construct these diagrams and that student's comprehension of object-oriented concepts. We feel that this correlation indicates that memory diagrams can be used as an assessment technique that, in turn, can be used to improve student learning.
['Mark A. Holliday', 'David R. Luginbuhl']
CS1 assessment using memory diagrams