Abstract
Automatically identifying struggling students learning to program can assist teachers in providing timely and focused help. This work presents a new deep-learning language model for predicting 'bug-fix-time', the expected duration between when a software bug occurs and the time it will be fixed by the student. Such information can guide teachers' attention to the students most in need. The input to the model includes snapshots of the student's evolving software code and additional available meta-features. The model combines a transformer-based neural architecture for embedding students' code in programming language space with a time-aware LSTM for representing the evolving code snapshots. We evaluate our approach with data obtained from two Java development environments created for beginner programmers. We focused on common programming errors which differ in their difficulty and whether they can be uniquely identified during compilation. Our deep language model was able to outperform several baseline models that use an alternative embedding method or do not consider how the programmer's code changes over time. Our results demonstrate the added value of utilizing multiple code snapshots to predict bug-fix-time using deep language models for programming.
Original language | English |
---|---|
Number of pages | 10 |
DOIs | |
State | Published - Jul 2023 |
Event | Proceedings of the 16th International Conference on Educational Data Mining: (EDM2023) - Bengaluru, India Duration: 11 Jul 2023 → 14 Jul 2023 |
Conference
Conference | Proceedings of the 16th International Conference on Educational Data Mining |
---|---|
Country/Territory | India |
City | Bengaluru |
Period | 11/07/23 → 14/07/23 |