РАЗРАБОТКА ОБУЧАЮЩЕЙ СИСТЕМЫ ДЛЯ РЕШЕНИЯ ЗАДАЧ ПО ПРОГРАММИРОВАНИЮ, ОСНОВАННОЙ НА ПОНЯТИИ КОМПЕТЕНЦИЙ

Сейчас в нашей стране активно взят курс на модернизацию механизмов обучения. При этом необходимо сохранить фундаментальность образовательного процесса и применить при этом новые, более эффективные ресурсы - в том числе, информационные. Кроме того, одним из важных пунктов реформы образования в России является развитие ресурсов, обеспечивающих организацию смешанного обучения и ведения учебного цикла [1].
В Саратовском государственном социально-экономическом университете на протяжении нескольких лет идут работы по данному направлению. Целью работ стало проектирование и разработка обучающей системы, позволяющей осуществлять процесс как очного, так и дистанционного обучения.
В результате проведенных исследований был спроектирован метод по контролю знаний и навыков в процессе обучения, используя систему для решения исследовательских задач в области программирования. В ходе обучения система автоматически выдает необходимые рекомендации, как студентам, так и преподавателям. Данный метод дает возможность автоматизации и анализа образовательного процесса посредством методики, разработанной и основанной на понятиях компетенций.
В основе разработанного проекта лежат современные тенденции в области информационно-коммуникационных технологий. В качестве средств разработки были выбраны серверные возможности языка программирования Java и платформа JBoss Application Server [5].
База данных спроектирована на PostgreSQL [6]. Данный выбор обусловлен свободным распространением СУБД (лицензия BSD [7]), а также кроссплатформенностью, что позволит сделать систему гибкой в отношении используемых систем (технология Java также является кроссплатформенным механизмом).
Для связи базы данных с концепцией объектно-ориентированного программирования, на которой основан язык Java, был использован Hibernate [8]. Данная библиотека предоставляет удобное и гибкое ORM-решение. Использование Hibernate позволило спроектировать систему в виде объектно-ориентированной модели с отображением на базу данных.
Модель авторизации и механизм поддержки сессий пользователей построены с использованием технологий Spring [9] (в частности, Spring Security). Использование Spring позволило обезопасить систему путем поддержки защиты как на уровне web-страниц, так и на уровне программного кода отдельных методов.
Кроме того, дополнительным фактором в пользу Spring и Hibernate служит то, что разработчик может настроить связь между ними. Это позволило скрыть детали управления сессиями и транзакциями от имплементационного кода, содержащего основную логику.
Концепция системы базируется на следующих сущностях:
- Пользователь. Все оъекты указанной сущности сгруппированы по принципу работы: «Студенты», «Преподаватели» и «Администраторы». В зависимости от члeнства в одной из групп пользователю автоматически выдаются права на доступ к отдельным ресурсам системы. Работу этого функционала обеспечивает модуль Spring Security и модель безопасности, основанная на защите проектного кода.
- Задача. Любая задача классифицируется по сложности и тематике. Задача является минимальной неделимой единицей, над которой работают пользователи. К любой задаче прилагается полное описание с тестовыми примерами. Наполнение системы задачами осуществляется при помощи специального раздела, доступного преподавателям, а также администраторам.
- Тест. Решение об успешной сдаче задачи система формирует на основе запуска специального набор тестов, уникальных для каждой задачи. При запуске тестов учитывается фактор времени и используемые ресурсы. Система тестирования построена на концепции, при которой каждый тест логически связан с возможной ошибкой при написании решения. Такой подход позволяет не только объективно проверить решение по каждой задаче, но и точно и в автоматическом режиме формировать рекомендации с замечаниями.
- Попытка. Каждая попытка решить задачу определяется временем, используемым языком программирования, а также исходным текстом решения. В ходе автоматического тестирования формируется отчет о результатах и происходит выдача соответствующих рекомендаций.
- Задание. Множество задач, на работу с которыми накладываются временные рамки, формирует задание. Оно может быть прикреплено к одному или группе студентов. Подобная гибкость позволяет использовать систему при проведении как дистанционных занятий, так и очных, где требуется непосредственное присутствие преподавателя.
Ключевым моментом в образовательном процессе является не только приобретенные знания, но и контроль прогресса обучения, начиная с базовых знаний и заканчивая приобретенными. Для обеспечения такого механизма в системе был построен цикл обучения, представленный на рисунке.
Схема учебного цикла
При регистрации студент (или его преподаватель) заполняет специальный табель, который является входным показателем уровня знаний. Следующим шагом является режим обучения, где пользователь знакомится с возможностями системы. В рамках обучающего режима пользователю предлагается решить ряд несложных упражнений.
По завершении входных этапов контроля вся информация о навыках и компетенции обучаемого считается собранной. Взаимодействовать с системой на данном этапе можно двумя способами:
1. Выполнение заданий.
Задания назначаются руководителем и содержат набор задач и временные рамки, за которые студент должен показать наилучший результат в решение указанных задач. По окончании времени задание завершается независимо от активности обучающегося.
2. Индивидуальная работа.
В качестве самостоятельной работы студент может работать с системой дистанционно, выбирая задачи исключительно на свое усмотрение. Ограничения по времени и прочие факторы в этом режиме отсутствуют. С целью дополнительной стимуляции и создания конкурентной среды среди студентов, работает рейтинг пользователей, в котором на основе кластеризации автоматически формируются «лидирующие» группы. Такой подход к формированию рейтинга дает объективную оценку студентов в рамках поставленной задачи.
Когда срок обучения подходит к концу, пользователь обязан пройти выходной контроль, результаты которого сохраняются в системе, а пользователь переходит в статус неактивного. На основе этих данных делаются выводы о процессе обучения, а также происходит сбор статистики по работе системы в целом.
Набор указанных выше возможностей разработанной системы позволяет осуществлять постоянный мониторинг образовательного процесса. В качестве примера, в случае успешной отправки задачи определенной категории, система, анализируя результат, рекомендует пользователю решать задачи более высокой сложности из той же категории. В другой абстpaктной ситуации, при успешной проверке основных тестов, но при наличии ошибок в более редких случаях, студенту стоит выдать рекомендацию сконцентрироваться на методах локального тестирования, убедиться в успешном «покрытии» задачи тестами, и только потом отправлять решение на проверку.
Рекомендации актуальны и в режиме работы над заданиями. Также актуально выдавать рекомендации преподавателям - работу студентов в системе можно трaнcпонировать в оценку. Необходимо отметить, что учитывать такую оценку стоит только в рамках дополнительной информации - принимать окончательное решение должен непоредственно преподаватель. Несомненно, вариаций выдачи рекомендаций в процессе обучения большое количество, поэтому важно автоматизировать этот процесс.
В качестве эффективного способа предупреждения ошибок в программном коде была разработана последовательность тестов. В работе используется принцип smoke-тестирования - тестов, направленных на выявление явных ошибок в программном коде [4]. Если запуск smoke-тестов привел к появлению ошибок, последние изменения откатываются, а код подлежит немедленному исправлению.
В результате проведенной работы была спроектирована и разработана обучающая система для решения исследовательских задач в области программирования. Система позволяет осуществлять процесс как очного, так и дистанционного обучения, что способствует автоматизации и повышению гибкости образовательного процесса.
Внедрение такого решения в учебный процесс вуза возможно с помощью методики анализа работы студента, разработанной на понятиях компетенций.
Список литературы
- Управление образовательных программ и стандартов высшего и среднего профессионального образования. Законодательные акты Российской Федерации о высшей школе.
- Lambert M. Surhone. Java EE Application. - 2010.
- James Gosling, Bill Joy, Guy Steele, Gilad Bracha. The Java Language Specification, Third Edition // The Java Series. - 2005.
- Steve McConnell. Daily Build and Smoke Test // IEEE Software. - 1996. - Vol. 13, № 4.
- JBoss. URL: http://www.jboss.org.
- PostgreSQL. URL: http://www.postgresql.org.
- The BSD License. URL: http://www.opensource.org/licenses/bsd-license.php.
- Hibernate - JBoss Community. URL: http://www.hibernate.org.
- Spring Framework. URL: http://www.springsource.org.
Наши исследования показали, что эффективность профилактики кариеса зубов значительно снижается на фоне вторичных иммунодефицитных состояний (ИДС), вызванных ортодонтическим аппаратурным лечением. Предлагаемый метод профилактики позволил купировать иммунодефицитное состояние, возникающее на этапах ортодонтического лечения, и повысить эффективность профилактики кариеса зубов.
...
02 05 2026 13:36:59
Статья в формате PDF
134 KB...
01 05 2026 23:17:28
Статья в формате PDF
191 KB...
30 04 2026 21:35:54
Статья в формате PDF
193 KB...
28 04 2026 19:41:40
Статья в формате PDF
101 KB...
27 04 2026 14:29:15
Статья в формате PDF
1223 KB...
26 04 2026 10:54:26
Статья в формате PDF
111 KB...
23 04 2026 14:13:55
Статья в формате PDF
119 KB...
21 04 2026 18:42:34
Обобщаются понятия «компетентность». Формулируются компетентности, необходимые для решения проблем безопасности жизнедеятельности в пpaктической работе инженера. Предлагается направление целевого развития компетентностей выпускника технического вуза в процессе его обучения.
...
20 04 2026 21:32:50
Статья в формате PDF
107 KB...
19 04 2026 2:47:47
Статья в формате PDF
259 KB...
18 04 2026 11:56:20
Статья в формате PDF
104 KB...
16 04 2026 8:43:27
Статья в формате PDF
132 KB...
15 04 2026 13:26:22
Статья в формате PDF
140 KB...
14 04 2026 18:34:27
Статья в формате PDF
113 KB...
13 04 2026 20:22:26
Статья в формате PDF
361 KB...
11 04 2026 17:14:26
Статья в формате PDF
127 KB...
10 04 2026 13:23:14
Статья в формате PDF
189 KB...
09 04 2026 22:22:37
Статья в формате PDF
119 KB...
08 04 2026 7:28:10
07 04 2026 1:51:45
Статья в формате PDF
117 KB...
06 04 2026 21:58:10
1. Второй закон Ньютона в катастрофе – это неоспоримый факт.
2. Нужно думать, что после такой катастрофы вся классическая физика полетит к черту, вместе с физиками, которые попытаются ее защищать.
3. Ученые физики всех стран попали в капкан, у них дилемма: или они признают теорию Ростовцева, или им грозит скамья подсудимых за ложную науку и обман человечества.
4. Всю классическую физику нужно пересмотреть и поставить на теоретическую основу.
...
04 04 2026 18:50:47
Статья в формате PDF
130 KB...
03 04 2026 0:45:29
Статья в формате PDF
109 KB...
02 04 2026 15:16:56
Статья в формате PDF
146 KB...
01 04 2026 18:51:32
Статья в формате PDF
272 KB...
30 03 2026 17:30:38
Статья в формате PDF
111 KB...
28 03 2026 4:36:38
Статья в формате PDF
119 KB...
27 03 2026 17:55:50
Статья в формате PDF
108 KB...
26 03 2026 17:56:36
Статья в формате PDF
123 KB...
25 03 2026 23:49:14
Статья в формате PDF
104 KB...
24 03 2026 4:50:39
Еще:
Поддержать себя -1 :: Поддержать себя -2 :: Поддержать себя -3 :: Поддержать себя -4 :: Поддержать себя -5 :: Поддержать себя -6 :: Поддержать себя -7 :: Поддержать себя -8 :: Поддержать себя -9 :: Поддержать себя -10 :: Поддержать себя -11 :: Поддержать себя -12 :: Поддержать себя -13 :: Поддержать себя -14 :: Поддержать себя -15 :: Поддержать себя -16 :: Поддержать себя -17 :: Поддержать себя -18 :: Поддержать себя -19 :: Поддержать себя -20 :: Поддержать себя -21 :: Поддержать себя -22 :: Поддержать себя -23 :: Поддержать себя -24 :: Поддержать себя -25 :: Поддержать себя -26 :: Поддержать себя -27 :: Поддержать себя -28 :: Поддержать себя -29 :: Поддержать себя -30 :: Поддержать себя -31 :: Поддержать себя -32 :: Поддержать себя -33 :: Поддержать себя -34 :: Поддержать себя -35 :: Поддержать себя -36 :: Поддержать себя -37 :: Поддержать себя -38 ::