Investigating the Utility of Notional Machine Instruction in an Introductory Programming Lesson
Public Deposited- Resource Type
- Creator
- Abstract
Learning to program involves understanding how the computer executes programs. Code tracing is a simulation of the steps the computer takes to execute a program. The notional machine is an abstract representation of this process. Students form mental models of the notional machine when learning to code trace, but these mental models can be inaccurate or contain misconceptions. We experimentally investigated the effect on learning of using an explicit notional machine or not in a code-tracing lesson for novice programmers (N = 48). We created two versions of a tutoring system, one with a notional machine and one without, using the Cognitive Tutor Authoring Tools framework. The tutors included video lessons and self-explanation prompts to encourage participant engagement. We measured learning as the difference in scores from pretest to posttest, adjusted by prior knowledge. Learning increased overall, but there was no significant difference in learning between groups.
- Subject
- Language
- Publisher
- Thesis Degree Level
- Thesis Degree Name
- Thesis Degree Discipline
- Identifier
- Rights Notes
Copyright © 2022 the author(s). Theses may be used for non-commercial research, educational, or related academic purposes only. Such uses include personal study, research, scholarship, and teaching. Theses may only be shared by linking to Carleton University Institutional Repository and no part may be used without proper attribution to the author. No part may be used for commercial purposes directly or indirectly via a for-profit platform; no adaptation or derivative works are permitted without consent from the copyright owner.
- Date Created
- 2022
Relations
- In Collection:
Items
Thumbnail | Title | Date Uploaded | Visibility | Actions |
---|---|---|---|---|
chiarelli-investigatingtheutilityofnotionalmachineinstruction.pdf | 2023-05-05 | Public | Download |