Exploring the Potential of Large Language Models in Generating Code-Tracing Questions for Introductory Programming Courses
Aysa Xuemo Fan, Ranran Haoran Zhang, Luc Paquette, Rui Zhang

TL;DR
This paper investigates how large language models like GPT-4 can automatically generate code-tracing questions for introductory programming education, comparing their quality to human-created questions and providing a new dataset.
Contribution
It introduces a prompt-based approach for LLMs to generate code-tracing questions and offers a dataset of human and machine-generated questions for research and educational use.
Findings
LLMs can produce diverse and high-quality code-tracing questions
Human evaluation shows LLM-generated questions are comparable to expert-created ones
A new dataset of code-tracing questions is provided for future research
Abstract
In this paper, we explore the application of large language models (LLMs) for generating code-tracing questions in introductory programming courses. We designed targeted prompts for GPT4, guiding it to generate code-tracing questions based on code snippets and descriptions. We established a set of human evaluation metrics to assess the quality of questions produced by the model compared to those created by human experts. Our analysis provides insights into the capabilities and potential of LLMs in generating diverse code-tracing questions. Additionally, we present a unique dataset of human and LLM-generated tracing questions, serving as a valuable resource for both the education and NLP research communities. This work contributes to the ongoing dialogue on the potential uses of LLMs in educational settings.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Topic Modeling · Teaching and Learning Programming
MethodsSparse Evolutionary Training
