Обработчики
Обработчики - это механизмы, скрипты, либо группа людей занимающихся обработкой поступившей информации и выдачи результата в виде исходящей информации. В нашем случае система функционирует как некоторое сплочение обработчиков каждый из которых реагирует на определенное действие/бездействие.
К примеру опишем действие обработчика событий - вывода вопросов из базы данных. . Основной принцип выборки вопросов из базы данных представлен на (Рис. 1), где N – общее количество вопросов (база данных), y – вопрос среднего уровня сложности, x – вопрос сложного уровня и z – вопрос легкого уровня. Вначале будет произведена выборка из общей базы вопросов и выведен вопрос средней сложности (Y), по результатам оценки правильности ответа на который, студенту будут предложен сложный (X) или легкий (Z) уровень. Таким образом, мы можем увидеть цикл работы системы.

Рис 1.
Но любой цикл должен иметь условия его завершения в проектируемой системе адаптивного онлайн тестирования предполагается наличие трех условий. Первое условие работает в большинстве случаев примерно 90 % и выше. Оно означает, что обработчик бесспорно в результате анализа ответов студента определит уровень его знаний. Но данное условие может быть не соблюдено, если студент умышленно (или случайно) будет отвечать на вопросы, чередуя правильность своих ответов, при этом срабатывает второе условие. Оно означает, что максимальное количество вопросов выделенных для раздела исчерпано, а обработчик все еще не на 95 % уверен в уровне знаний экзаменуемого, в этом случае первое условие будет отброшено. Отметим, что это условие выполняется очень редко. Третье условие основывается на том что, тестирование имеет ограниченный временной промежуток и если обработчик еще не определил на 95%-ов уровень знаний, и количество вопросов еще не исчерпано, то тест закончиться по истечению времени.
Алгоритм следования вопросов друг за другом также представляет собой, обработчик принцип действия которого изображен на (Рис. 2)

Рис 2.
Это лишь некоторые из обработчиков реализованных в системе, на самом деле каждое событие - каждый ответ на клик пользователя обрабатывается и выполняется обработчиком. Приведем пример одного из обработчиков к примеру для формы комментариев либо обратной связи:
Обработчик события представляет собой обычный метод, прописанный в одной из библиотек модуля. Для примера, рассмотрим создание пользовательского метода-обработчика события. Реализуем этот метод в __custom.php:
<?php
abstract class __custom_comments {
...
public function onAddComment(iUmiEventPoint $oEventPoint) {
if ($oEventPoint->getMode() === "before") return true;
if ($oEventPoint->getMode() === "after") {
// берем необходимые параметры
$iCommentId = $oEventPoint->getParam("message_id");
// получаем объект "Комментарий"
$oComment = umiHierarchy::getInstance()->getElement($iCommentId);
if ($oComment instanceof umiHierarchyElement) {
// формируем письмо
$oMyMail = new umiMail();
$oMyMail->setFrom("
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
", "mailer");
$oMyMail->setSubject("Добавлен новый комментарий");
$oMyMail->setContent($oComment->getValue("message"));
$oMyMail->addRecipient("
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
", "Admin");
// отправляем письмо
$oMyMail->commit();
}
return true;
}
}
...
};
?>
При добавлении нового комментария администратору отправляется письмо с текстом комментария. При желании Вы можете добавить туда ссылку на редактирование комментария, информацию об авторе и т.п..
Все права защищены © 2011 год. Все материалы представленные на сайте являются результатом работы, проделанной в рамках магистерской диссертации. При разработке никаких коммерческих целей не преследовалось. Проект www.asot.kz разработан с целью привлечения внимания к возникшей проблеме - отсутствия четкой системы оценки знаний учащихся при дистанционных формах обучения. Любое копирование, изменение, модификация контента, скриптов, системы -разрешены. Вместе мы сможем сделать этот мир лучше! Ссылки на проект приветствуются.