Affiliation:
1. University of Sydney, School of Computer Science, NSW, Australia
Abstract
Automated tutoring systems offer the flexibility and scalability necessary to facilitate the provision of high-quality and universally accessible programming education. To realise the potential of these systems, recent work has proposed a diverse range of techniques for automatically generating feedback in the form of hints to assist students with programming exercises. This article integrates these apparently disparate approaches into a coherent whole. Specifically, it emphasises that all hint techniques can be understood as a series of simpler components with similar properties. Using this insight, it presents a simple framework for describing such techniques, the Hint Iteration by Narrow-down and Transformation Steps framework, and surveys recent work in the context of this framework. Findings from this survey include that (1) hint techniques share similar properties, which can be used to visualise them together, (2) the individual steps of hint techniques should be considered when designing and evaluating hint systems, (3) more work is required to develop and improve evaluation methods, and (4) interesting relationships, such as the link between automated hints and data-driven evaluation, should be further investigated. Ultimately, this article aims to facilitate the development, extension, and comparison of automated programming hint techniques to maximise their educational potential.
Publisher
Association for Computing Machinery (ACM)
Subject
General Computer Science,Theoretical Computer Science
Reference50 articles.
1. A Survey of Automated Assessment Approaches for Programming Assignments
2. Comparing different styles of automated feedback for programming exercises
3. An Incremental Hint System For Automated Programming Assignments
4. Sahil Bhatia and Rishabh Singh. 2016. Automated correction for syntax errors in programming assignments using recurrent neural networks. arXiv:1603.06129. Retrieved from https://arxiv.org/abs/1603.06129. Sahil Bhatia and Rishabh Singh. 2016. Automated correction for syntax errors in programming assignments using recurrent neural networks. arXiv:1603.06129. Retrieved from https://arxiv.org/abs/1603.06129.
Cited by
12 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. NuzzleBug: Debugging Block-Based Programs in Scratch;Proceedings of the 46th IEEE/ACM International Conference on Software Engineering;2024-02-06
2. “It’s Weird That it Knows What I Want”: Usability and Interactions with Copilot for Novice Programmers;ACM Transactions on Computer-Human Interaction;2023-11-29
3. CodeHelp: Using Large Language Models with Guardrails for Scalable Support in Programming Classes;Proceedings of the 23rd Koli Calling International Conference on Computing Education Research;2023-11-13
4. Exploring Automatic Specification Repair in Dafny Programs;2023 38th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW);2023-09-11
5. Automated generation and correction of diagram‐based exercises for Moodle;Computer Applications in Engineering Education;2023-08-24