Detecting Struggling Student Programmers using Proficiency Taxonomies

2508.17353v1 cs.CY, cs.LG 2025-08-27
Авторы:

Noga Schwartz, Roy Fairstein, Avi Segal, Kobi Gal

Резюме на русском

## Контекст Одна из ключевых проблем в обучении программированию заключается в том, что многие студенты столкнутся с трудностями в понимании и применении концепций программирования. Эти трудности могут привести к ухудшению учебных результатов, снижению мотивации и даже к отставанию в обучении. Несмотря на то, что существуют методики и средства для опознавания студентов, нуждающихся в помощи, многие из них ориентируются только на общие показатели, такие как оценки и задержки в выполнении заданий. Менее распространенным является использование конкретных показателей программирования, которые могут дать более глубокий взгляд на уровень профессиональных навыков студентов. Мотивированностью для данного исследования является необходимость сформировать более точный инструмент для раннего определения студентов, испытывающих трудности в обучении программированию, чтобы им могло быть оказана персонализированная поддержка. ## Метод Для решения проблемы раннего определения студентов, испытывающих трудности в обучении программированию, была разработана методология, основанная на введении так называемой "таксономии профициенций" (Proficiency Taxonomy). Это таксономия представляет собой структурированный подход к описанию уровней профессиональных навыков студентов. Она включает в себя различные аспекты программирования, такие как понимание синтаксиса, логика программирования, умение решать задачи и другие. Для оценки прогресса студентов и их профессиональных навыков используется автоматизированная модель, представленная в виде модели Proficiency Taxonomy (PTM). Эта модель использует историю выполнения задач студентов для выявления их уровня профессиональных навыков, а затем предсказывает, будут ли они столкнуться с трудностями при выполнении новой задачи. Модель PTM является интеллектуальным способом оценки прогресса, который использует структурированные данные о студенческих производительности вместе с таксономией профициенций, чтобы дать более точный и прогностический взгляд на потенциальные проблемы студентов. ## Результаты Чтобы проверить эффективность модели PTM, были проведены эксперименты на двух разных наборах данных, полученных из курсов по программированию в интерфейсе Java и Python. Эти данные включали информацию о выполнении задач, ошибках и прочих аспектах работы студентов. Наборы данных были использованы для обучения и проверки модели PTM. Эксперименты показали, что модель PTM эффективно выполняет предсказание студентов, которые могут испытывать трудности при выполнении новых задач. Особенно заметным был высокий уровень точности предсказаний в сравнении с другими существ

Abstract

Early detection of struggling student programmers is crucial for providing them with personalized support. While multiple AI-based approaches have been proposed for this problem, they do not explicitly reason about students' programming skills in the model. This study addresses this gap by developing in collaboration with educators a taxonomy of proficiencies that categorizes how students solve coding tasks and is embedded in the detection model. Our model, termed the Proficiency Taxonomy Model (PTM), simultaneously learns the student's coding skills based on their coding history and predicts whether they will struggle on a new task. We extensively evaluated the effectiveness of the PTM model on two separate datasets from introductory Java and Python courses for beginner programmers. Experimental results demonstrate that PTM outperforms state-of-the-art models in predicting struggling students. The paper showcases the potential of combining structured insights from teachers for early identification of those needing assistance in learning to code.

Ссылки и действия