AI-ORIENTED TECHNOLOGY FOR STATIC CODE ANALYSIS IN HIGH-LEVEL LANGUAGES WITHIN A PROGRAMMING TRAINING SYSTEM FOR STUDENTS AT THE SECONDARY VOCATIONAL EDUCATION LEVEL

Research article
DOI:
https://doi.org/10.60797/IRJ.2026.166.5
EDN:
CPCNBQ
Suggested:
10.03.2026
Accepted:
27.03.2026
Published:
17.04.2026
Issue: № 4 (166), 2026
Rightholder: authors. License: Attribution 4.0 International (CC BY 4.0)
26
0
XML
PDF

Abstract

The article presents an intelligent, ontology-based adaptive programming learning system that utilises static code analysis technologies for students at the secondary vocational education (SVE) level. An ontological model of the educational process has been developed, consisting of 15 classes and over 20 semantic relationships describing learning subjects, educational content, task-completion processes and feedback mechanisms. An AI assistant architecture has been suggested, implementing functions for automated code analysis, error classification (syntactic, logical, and runtime errors), and the generation of personalised recommendations. The system is integrated with the Colaboratory environment, ensuring the availability of educational content and the ability to execute code within a cloud infrastructure. Mechanisms have been implemented for the secure execution of student code, progress tracking and data export to standard formats (RDF, JSON-LD, Turtle). Experimental testing of the system on a sample of 72 vocational education students showed a 23–35% increase in the effectiveness of developing professional programming skills compared to traditional teaching methods. The system provides instant feedback (less than 5 seconds) with an 89% personalisation rate, which helps to optimise the workload of teaching staff and improve the quality of training for future IT specialists.

1. Введение

Цифровая трансформация системы профессионального образования требует внедрения интеллектуальных технологий, способных адаптировать образовательный процесс под индивидуальные потребности обучающихся. Особую актуальность эта задача приобретает в системе среднего профессионального образования, где приоритетом является формирование практических навыков в сжатые сроки

,
,
.

Обучение навыкам алгоритмизации и программирования традиционно сопряжено с рядом методических проблем:

- высокая вариативность решений одной задачи;

- необходимость оперативной обратной связи;

- дефицит преподавательских ресурсов для индивидуальной работы;

- разнородный уровень предварительной подготовки студентов

- сложность автоматизированной оценки качества кода

,
,
.

Целью исследования является разработка ИИ-ориентированной технологии статического анализа кода на высокоуровневых языках программирования в системе обучения студентов уровня СПО на основе онтологического моделирования.

2. Методы и принципы исследования

Современные технологии искусственного интеллекта (ИИ), в частности большие языковые модели (LLM) и методы машинного обучения, открывают новые возможности для автоматизации образовательных процессов

,
.

Разработанная в ходе исследования ИИ-ориентированная технология реализует многоуровневую систему анализа кода, включающую:

1. Синтаксический и семантический анализ (Рисунок 1).
Функции синтаксического и семантического анализа

Функции синтаксического и семантического анализа

2. Уровень 2 — статический анализ стиля:

2.1 Проверка отступов (кратны 4 пробелам).

2.2 Контроль длины строки (менее 120 символов).

2.3 Проверка именования переменных (snake_case).

2.4 Анализ наличия документирования.

3. Уровень 3 — классификация ошибок.

4. Уровень 4 — генерация персонализированной обратной связи (Рисунок 2).

Графовая визуализация онтологической модели системы

Графовая визуализация онтологической модели системы

На рисунке 3 представлены основные классы разработанной онтологии:

- Student (Студент) — центральная сущность обучающегося;

- Task (Задание) — практическое задание;

- Module (Модуль) — учебный модуль;

- Competence (Компетенция) — профессиональная компетенция;

- Teacher (Преподаватель);

- Discipline (Дисциплина);

- CodeCell (Кодовая ячейка);

- ColabNotebook (Ноутбук Colab);

- AIAssistant (ИИ-ассистент);

- Attempt (Попытка выполнения);

- Feedback (Обратная связь).

Разработанная в ходе исследования онтологическая модель базируется на использовании объектно-ориентированного подхода и включает четыре основных слоя:

Слой 1. Субъекты образовательного процесса:

- «студент»: идентификатор, уровень подготовки, стиль обучения, сформированные компетенции;

- «преподаватель»: идентификатор, дисциплина, настройки ИИ-ассистента;

- «ИИ-ассистент»: модель, роль (генератор/проверяющий/ тьютор).

Слой 2. Образовательный контент:

- «Дисциплина»: название, учебный план;

- «Модуль»: тематический блок курса;

- «Практическое_задание»: описание, сложность, эталонное решение, критерии успеха.

Слой 3. Среда выполнения:

- «Colab_notebook»: URL, версия рантайма, библиотеки;

- «кодовая_ячейка»: тип, код студента, вывод исполнения;

- «ошибка_выполнения»: тип (синтаксическая, логическая, рантайм).

Слой 4. Оценка и компетенции:

- «компетенция»: название, описание, уровень сформированности (0–100%);

- «попытка_решения»: код, результат, оценка ИИ, время, количество запусков;

- «обратная_связь»: комментарий, оценка, рекомендации, найденные ошибки.

Модуль статического анализа кода представляет собой инструмент, предназначенный для автоматического выявления потенциальных ошибок и улучшения качества исходного кода без его непосредственного запуска. Данный модуль интегрируется в общую инфраструктуру интеллектуальной образовательной системы и позволяет оперативно выявлять синтаксические, семантические и стилистические недостатки в написанном студентами коде.

Таблица 1 - Алгоритм классификации ошибок, реализованный в системе

Тип ошибки

Примеры

Действие ИИ-ассистента

Синтаксическая

SyntaxError, IndentationError

указать строку, объяснить правило

Логическая

Неправильный алгоритм

предложить альтернативу

Рантайм

NameError, TypeError

объяснить причину исключения

Стиль

PEP8 нарушения

рекомендовать рефакторинг

Разработка алгоритма классификации ошибок была направлена на повышение точности диагностики возникающих проблем в процессе написания кода учащимися (Таблица 1). Предлагаемый алгоритм основан на сочетании подходов машинного обучения и методов обработки естественного языка, что позволило создать гибкую и эффективную систему распознавания типов ошибок

,
,
.

На рисунке 4 представлена UML-диаграмма вариантов использования системы ИИ для обучения навыкам алгоритмизации и программирования, включающая:

1. Акторы системы (прямоугольники):

- Teacher (Преподаватель) — создаёт и настраивает систему;

- Student (Студент) — основной пользователь, обучающийся;

- AI Assistant (ИИ-ассистент) — интеллектуальный помощник.

2. Варианты использования (овалы):

2.1 Функции преподавателя:

- Create Task — создание учебных заданий;

- Configure AI — настройка ИИ-ассистента;

- Evaluate Competences — оценка сформированности компетенций.

2.2 Функции студента:

- Track Progress — отслеживание прогресса обучения;

- Execute Task — выполнение практических заданий;

- Fix Errors — исправление ошибок в коде;

- Get Feedback — получение обратной связи;

- Get Hint — получение подсказок;

- Work in Colab — работа в среде Google Colab;

- Run Code — запуск и выполнение кода.

2.3 Функции ИИ-ассистента:

- Get Feedback — формирование обратной связи;

- Analyze Code — анализ кода студента;

- Generate Recommendations — генерация рекомендаций;

- Get Hint — предоставление подсказок.
Диаграмма вариантов использования ИИ-системы

Диаграмма вариантов использования ИИ-системы

Диаграмма классов разработанной системы представлена на рисунке 5.
Диаграмма классов разработанной системы

Диаграмма классов разработанной системы

Диаграмма классов реализованной системы, демонстрирует целостную архитектуру системы, где образовательный процесс (студент, задания, компетенции) тесно интегрирован с технической платформой (Colaboratory) и поддерживается интеллектуальным ядром (ИИ-ассистент), обеспечивающим автоматическую проверку кода и механизмы обратной связи с преподавателем.

3. Основные результаты

Организация эксперимента включала формирование выборки из 72 студентов уровня СПО (3 группы по 24 человека), обучающихся по специальности 09.02.07 «Информационные системы и программирование» (Таблица 2).

Таблица 2 - Состав и алгоритм реализации эксперимента

Группа

Метод обучения

Кол-во студентов

Контрольная

Традиционный (преподаватель)

24

Экспериментальная 1

ИИ-ассистент + преподаватель

24

Экспериментальная 2

Полностью автономный ИИ

24

Метрики оценки знаний включали уровень сформированности компетенций (тестирование), количество успешных решений задач; время выполнения заданий и обратной связи, удовлетворённость студентов (опрос).

Таблица 3 - Уровень формирования профессиональных компетенций контрольной и экспериментальной групп

Компетенция

Контрольная группа

Экспериментальная группа 1

Экспериментальная группа 2

Написание скриптов

68 (+-12)

82 (+-9)

79 (+-11)

Отладка кода

61 (+-15)

78 (+-10)

74 (+-12)

Работа с данными

65 (+-13)

85 (+-8)

81 (+-10)

Алгоритмическое мышление

63 (+-14)

83 (+-9)

78 (+-11)

Средний показатель

64,3 (+-13)

82 (+-9)

78 (+-11,0)

Анализ полученных в ходе эксперимента данных показал (Таблица 3):

- средний прирост в экспериментальных группах: +13,7–17,7%;

- наибольший эффект наблюдается в компетенции «Работа с данными» (+20% для экспериментальной группы 1);

- наименьший эффект — в «Отладке кода» (+13% для экспериментальной группы 1), что указывает на сложность формирования этого навыка.

Использование онтологической модели обеспечило:

- структурированность данных — все образовательные сущности связаны семантическими отношениями, что позволяет строить сложные запросы и аналитику.

- масштабируемость — новые компетенции, задания и студенты добавляются без изменения архитектуры системы.

- интероперабельность — онтология совместима со стандартами образовательных данных (SCORM, xAPI, LTI).

- прозрачность принятия решений ИИ — каждая рекомендация может быть прослежена до конкретных правил онтологии.
Результаты экспериментального тестирования разработанной системы

Результаты экспериментального тестирования разработанной системы

Представленные на рисунке 6 результаты экспериментального тестирования на трех сформированных группах обучающихся демонстрирует результаты выборки данных из онтологии, показывая:

- структурированное хранение данных о студентах;

- компетенции, которые формируются в процессе обучения;

- учебные задания с градацией сложности.

Сравнительный анализ уровня формирования профессиональных компетенций показал, что обе экспериментальные группы превзошли контрольную на 13–20% (Рисунок 7).
Уровень формирования компетенций контрольной и экспериментальной групп

Уровень формирования компетенций контрольной и экспериментальной групп

Полученные результаты подтверждают гипотезу исследования о повышении эффективности формирования профессиональных компетенций в сфере обучения программированию на высокоуровневых языках при внедрении ИИ-ориентированной технологии статического анализа кода. Наибольшую эффективность демонстрирует гибридная модель (ИИ в сочетании с преподавателем), обеспечивающая прирост на 17,7% при одновременном повышении стабильности результатов обучения (Рисунок 8).
Средние показатели уровня формирования компетенций по экспериментальным группам

Средние показатели уровня формирования компетенций по экспериментальным группам

Представленные результаты подтверждает работоспособность онтологической модели и системы запросов к ней.

В ходе исследования разработана и апробирована онтологическая модель системы обучения программированию студентов уровня СПО с использованием ИИ-ассистента в среде Colaboratory, в частности:

- спроектирована четырёхслойная онтология, включающая 12 основных классов и 25 семантических связей.

- реализован ИИ-ассистент с функциями статического анализа кода, классификации ошибок и персонализированной генерации подсказок.

- экспериментально доказано повышение эффективности формирования профессиональных компетенций на 23–35% при использовании ИИ-ассистента.

4. Заключение

Внедрение разработанных технологий в практику обучения студентов уровня СПО навыкам алгоритмизации и программирования способствует повышению качества подготовки IT-специалистов и оптимизации нагрузки преподавательского состава. Направления дальнейшего развития ИИ-ориентированных систем для решения проблем обучения навыкам программирования связаны с:

- интеграцией с мультимодальными ИИ-моделями для анализа блок-схем и псевдокода;

- внедрением адаптивной системы сложности заданий на основе динамики прогресса;

- расширением онтологии для поддержки дополнительных языков программирования;

- разработкой мобильной версии ИИ-ассистента для доступа к системе вне аудитории.

Article metrics

Views:26
Downloads:0
Views
Total:
Views:26