Comprehension strategies in programming
Empirical studies of programmers: second workshop
Programming pedagogy—a psychological overview
ACM SIGCSE Bulletin
Avoiding object misconceptions
SIGCSE '97 Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education
Programming in Java: student-constructed rules
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
Dancing hamsters and marble statues: characterizing student visualizations of algorithms
Proceedings of the 2003 ACM symposium on Software visualization
Toward empirically-based software visualization languages
VL '95 Proceedings of the 11th International IEEE Symposium on Visual Languages
CS1 assessment using memory diagrams
Proceedings of the 35th SIGCSE technical symposium on Computer science education
Scaffolding with object diagrams in first year programming classes: some unexpected results
Proceedings of the 35th SIGCSE technical symposium on Computer science education
Visualizing programs with Jeliot 3
Proceedings of the working conference on Advanced visual interfaces
Program comprehension and authentic measurement: a scheme for analysing descriptions of programs
International Journal of Human-Computer Studies - Special issue: Empirical studies of software engineering
Cognitive activities of abstraction in object orientation: an empirical study
ACM SIGCSE Bulletin
Visualizing roles of variables in program animation
Information Visualization - Special issue: Software visualization
A multi-national study of reading and tracing skills in novice programmers
Working group reports from ITiCSE on Innovation and technology in computer science education
On understanding the statics and dynamics of object-oriented programs
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Novice Java programmers' conceptions of "object" and "class", and variation theory
ITiCSE '05 Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education
ACE '05 Proceedings of the 7th Australasian conference on Computing education - Volume 42
ACM Computing Surveys (CSUR)
What novice programmers don't know
Proceedings of the first international workshop on Computing education research
Evaluating assessments of novice programming environments
Proceedings of the first international workshop on Computing education research
Identifying novice difficulties in object oriented design
Proceedings of the 11th annual SIGCSE conference on Innovation and technology in computer science education
Metaphor-based animation of OO programs
SoftVis '06 Proceedings of the 2006 ACM symposium on Software visualization
What do teachers teach in introductory programming?
Proceedings of the second international workshop on Computing education research
ACE '06 Proceedings of the 8th Australasian Conference on Computing Education - Volume 52
Empirical study of novice programming with plans and objects
ITiCSE-WGR '06 Working group reports on ITiCSE on Innovation and technology in computer science education
ITiCSE-WGR '06 Working group reports on ITiCSE on Innovation and technology in computer science education
Checklists for grading object-oriented CS1 programs: concepts and misconceptions
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
Factors in novice programmers' poor tracing skills
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
Empirical comparison of objects-first and objects-later
ICER '09 Proceedings of the fifth international workshop on Computing education research workshop
Reflections on threshold concepts in computer programming and beyond
Proceedings of the 10th Koli Calling International Conference on Computing Education Research
An introduction to program comprehension for computer science educators
Proceedings of the 2010 ITiCSE working group reports
The importance of students' attention to program state: a case study of debugging behavior
Proceedings of the ninth annual international conference on International computing education research
Proceedings of the 12th Koli Calling International Conference on Computing Education Research
Notional machines and introductory programming education
ACM Transactions on Computing Education (TOCE)
A Review of Generic Program Visualization Systems for Introductory Programming Education
ACM Transactions on Computing Education (TOCE)
Hi-index | 0.00 |
Students' understanding of object-oriented (OO) program execution was studied by asking students to draw a picture of a program state at a specific moment. Students were given minimal instructions on what to include in their drawings in order to see what they considered to be central concepts and relationships in program execution. Three drawing tasks were given at different phases of an elementary OO programming course where two animation tools were used for program visualization. The drawings were analyzed for their overall approaches and their detailed contents. There was a large variability in the overall approaches and the popularity of various approaches changed during the course. The results indicate that students' mental representations of OO concepts and program execution not only grow as new material is covered in teaching, but they also change. The first drawings treat methods as having primarily a static existence; later methods are seen as dynamic invocations that call each other. The role of classes in program execution fluctuates during learning, indicating problems in locating the notion of class with respect to, for example, objects. Two major sources of problems that manifested in many different forms were the relationship between object and method, and the role of the main method with respect to program state. Other problems were caused by overly simplistic understanding of object identification and improper use of application domain knowledge.