Learning problem generator for introductory programming courses

Automatic learning-problem generation saves effort on creating problem banks. It allows creating banks containing thousands problems, which prevents cheating, allows training until mastery, and lets intelligent tutoring systems find problems for every learning situation. We present a learning proble...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Software impacts 2023-09, Vol.17, p.100519, Article 100519
Hauptverfasser: Prokudin, Artem, Sychev, Oleg, Denisov, Mikhail
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Automatic learning-problem generation saves effort on creating problem banks. It allows creating banks containing thousands problems, which prevents cheating, allows training until mastery, and lets intelligent tutoring systems find problems for every learning situation. We present a learning problem generator ToP, designed to generate problems for introductory programming courses from open-source code. It supports teaching determining the order of expression evaluation and program tracing. It was integrated into the CompPrehension tutor to generate initial problem banks problems and update them on the fly. It was used in studies of learning-problem generation that demonstrated that generated problems are indistinguishable from human-authored ones. •ToP generates learning problems to teach introductory programming.•Problems are generated by mining open-source repositories.•Generates learning problems on order of expression evaluation and program tracing.•Generated problems can be used in software tutors without human reviewing.•Generated problems proved indistinguishable from human-authored problems.
ISSN:2665-9638
2665-9638
DOI:10.1016/j.simpa.2023.100519