Web-система для адаптивной генерации тестов на основе фактов лекционного контента с функцией оценивания

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



ние состоит в том, чтобы выбрать правильный вариант ответа из предложенных, тогда в факте выбирается слово, не являющееся предлогом, союзом, междометием или местоимением, антоним которого есть в словаре, и заменяется каким-либо из своих антонимов. После чего полученное предложение выводится на экран в качестве одного из возможных вариантов ответа. Таких вариантов может быть несколько, один из них обязательно должен быть правильным - в качестве него выводят текст самого факта. Вопросы из второй группы формируются так: в факте случайным образом выбирается слово, так же не относящееся к предлогам и пр., в программе оно запоминается, и на экран выводится текст факта без данного слова, или просто появляется картинка. Требуется ввести пропущенное слово или название изображения. Если студент точно называет требуемое слово, то, к примеру, получает один бал за правильный ответ, если "попадает" в один из синонимов - получает пол бала за правильный ответ [11]. Причем, количество вопросов каждого типа настраивается в процентах преподавателем и зависит от успешности ответов студента.

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

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

3. Реализация программного продукта

3.1 Реализация базы данных

Для реализации программного продукта была выбрана СУБД Derby, поскольку она полностью написана на языке Java, поэтому может быть внедрена в любые Java-приложения и использована для сетевой обработки транзакций [12]. ApacheDerby разработан как открытый исходный проект по лицензии Apache 2.0. Derby, ранее распространялся как IBM Cloudscape. В настоящее время распространяется как SunJava DB.

СУБД Derby имеет следующие технологии [13]:

Встроенный механизм работы с базой данных - ядро технологии, механизм СУБД Derby - полностью функционирующий на реляционных механизмах встроенной базы данных. Язык программирования для работы с данными полностью интегрированный API - JDBC и SQL диалект, который именуется как IBM DB2 SQL.

Сервер - серверсети Derby увеличивает досягаемость механизма СУБД Derby, обеспечивая традиционные функциональные возможности клиент-сервера. Сетевой сервер позволяет клиентам соединяться по TCP/IP, используя стандартный протокол DRDA. Сетевой сервер позволяет механизму Derby поддерживать сетевой JDBC, ODBC/CLI, Язык Perl и PHP.

Встроенный сервер - встроенная база данных может быть сконфигурирована так, чтобы действовать как гибридный сервер/встроенный RDBMS, также может принимать подключения TCP/IP от других клиентов в дополнение к клиентам в том же самом JVM.

Утилиты для работы с базой данных:

ij - инструмент, который позволяет скриптам SQL выполняться на любой базе данных JDBC.- инструмент извлечения структуры базы данных Derby.- утилита, чтобы отобразить номера версии и прочую системную информацию.

Разработанная в рамках данной курсовой работы база данных состоит из 41 таблицы. Ее схема представлена на рисунке 3.1.1.

Рис.3.3.1 Схема базы данных.

Рассмотрим таблицы, используемые непосредственно в моей работе, более подробно.

Таблица "Fact".

Данная таблица предназначена для хранения информации о фактах, формирующих лекцию. Структура таблицы имеет вид:

Таблица 3.1.1 Таблица базы данных "Fact".

ПолеТипНазначениеID_FACTIntegerСлужит для нумерации фактовCONTENT_TYPEVarcharСодержит тип информации, хранящейся в фактеFACT_COLLECT_IDIntegerСлужит для указания коллекции, к которой относится фактOBLIGINGNumericУказывает обязательный ли это факт, если значение этого поля отлично от нуля, то факт обязательныйDIFICULTYIntegerСодержит число, определяющее сложность содержимого фактаCONTENTBLOBСодержит значение факта

Таблица "Fact_Collection".

Данная таблица используется для хранения информации о коллекциях фактов, относящихся к данному курсу. Структура таблицы имеет вид:

Таблица 3.1.2 Таблица базы данных "Fact_Collection".

ПолеТипНазначениеFACT_COLLECT_IDintegerСлужит для нумерации коллекцийNAMEvarcharСодержит имя данной коллекции

Таблица "Coll_Depend_From".

Данная таблица предназначена для хранения порядка предшествования коллекций фактов. Структура таблицы и