Диплом: Разработка электронного учебного пособия по дисциплине «Интернет-технологии»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
42
Разработанный пакет диаграмм UML позволяет более детально описать
порядок использования приложения, его архитектуру, а также особенности
использования. На основании диаграмм, разработанных в данном пакете,
сформулированы требования к языку программирования и СУБД и
произведен их обоснованный выбор.
43
3 3. РЕАЛИЗАЦИЯ И ТЕСТИРОВАНИЯ СИСТЕМЫ
ТЕСТИРОВАНИЯ ОБУЧАЕМЫХ
3.1 Разработка и описание базы данных
Логическая модель базы данных представляет собой сущности и связи
между ними. В базе данных предусмотрены следующие сущности:
Пользователи;
Тип пользователя;
Тест;
Вопрос теста;
Тип вопроса теста - вопрос с ответом в форме значения, вопрос с
одним вариантом ответа, вопрос с несколькими вариантами ответа;
Варианты ответа для вопроса;
Результат выполнения теста (кто выполнял, когда выполнял,
оценка);
Результат выполнения теста (ответы пользователя на вопросы);
Результат выполнения теста (варианты ответа, которые выбирал
пользователь)
Каждая таблица содержит код записи в качестве первичного ключа.
Концептуальная схема базы данных отображена на рисунке 13.
44
Рисунок 13 - Логическая модель базы данных
Между таблицами установлены следующие связи:
Таблица Тесты содержит Код результата, одby тест может
содержать один результат;
Таблица Пользователи содержит Код типа пользователя, один
пользователь может принадлежать к одному типу пользователей;
Таблица Вопросы содержит код теста, один тест может иметь
множество вопросов;
Таблица Вариант ответа содержит код варианта ответа и код
вопроса, один тест может содержать несколько вариантов ответов на вопрос.
45
В соответствии с выбранной СУБД определим для каждой таблицы тип
поля и формат содержащихся в нем данных.
Физическая модель базы данных представлена на рисунке 14.
Рисунок 14 - Физическая модель разработанной базы данных
Описание основных таблиц в таблице 8.
46
Таблица 10 - Описание основных таблиц
Название таблицы
Описание таблицы
user
Пользователи
user_type
Тип пользователя
test
Тест
question
Вопрос теста
question_type
Тип вопроса теста (вопрос с ответом в форме
значения, вопрос с одним вариантом ответа, вопрос
с несколькими вариантами ответа)
answer_variant
Варианты ответа для вопроса
result
Результат выполнения теста (кто выполнял, когда
выполнял, оценка)
result_question
Результат выполнения теста (ответы пользователя
на вопросы)
result_answer_variant
Результат выполнения теста (варианты ответа,
которые выбирал пользователь)
Таблица 11 - Характеристика полей таблицы answer_variant
Поле
Тип
Null
id
int (9)
Нет
id_question
int (9)
Да
position
int (9)
Да
description
longtext
Да
correct_answer
bit(1)
Да
Таблица 12 - Характеристика полей таблицы question
Поле
Тип
Null
id
int (9)
Нет
id_test
int (9)
Да
position
int (9)
Да
description
longtext
Да
id_question_type
int (9)
Да
correct_answer
varchar(255)
Да
required
bit(1)
Да
Таблица 13 - Характеристика полей таблицы question_type
Поле
Тип
Null
id
int (9)
Нет
title
varchar(255)
Да
47
Таблица 14 - Характеристика полей таблицы result
Поле
Тип
Null
id
int (9)
Нет
registration_date
datetime
Да
id_user
int (9)
Да
id_test
int (9)
Да
mark
int (9)
Да
Таблица 15 - Характеристика полей таблицы result_answer_variant
Поле
Тип
Null
id
int (9)
Нет
id_result_question
int (9)
Да
id_answer_variant
int (9)
Да
Таблица 16 - Характеристика полей таблицы result_question
Поле
Тип
Null
id
int (9)
Нет
id_result
int (9)
Да
id_question
int (9)
Да
position
int (9)
Да
correct_answer
bit(1)
Да
answer_value
varchar(255)
Да
Таблица 17 - Характеристика полей таблицы test
Поле
Тип
Null
id
int (9)
Нет
title
varchar(255)
Да
active
bit(1)
Да
description
longtext
Да
id_creator
int (9)
Да
registration_date
datetime
Да
time_limit
int (9)
Да
mix_questions
bit(1)
Да
mix_answer_options
bit(1)
Да
question_count_for_user
int (9)
Да
48
Таблица 18 - Характеристика полей таблицы user
Поле
Тип
Null
id
int (9)
Нет
username
varchar(255)
Нет
password_str
varchar(255)
Да
password_hash
varchar(255)
Нет
auth_key
varchar(32)
Нет
password_reset_token
varchar(255)
Да
activation_token
varchar(255)
Да
email
varchar(255)
Нет
status
smallint(6)
Нет
created_at
int (9)
Нет
updated_at
int (9)
Нет
nikname
varchar(255)
Да
id_user_type
int (9)
Да
last_name
varchar(255)
Да
first_name
varchar(255)
Да
middle_name
varchar(255)
Да
phone
varchar(255)
Да
Таблица 19 - Характеристика полей таблицы user_type
Поле
Тип
Null
id
int (9)
Нет
title
varchar(255)
Да
Таким образом, база данных содержит всего 9 таблиц, позволяющих
осуществлять хранение всей необходимой информации.
3.2 Описание программной реализации
Для каждой таблицы используемых базы данных создается модель
(Model из Model-View-Controller). Все модели нашего проекта располагаются
в директории «basic\models».
Таблица 20 - Описание моделей
Название таблицы
Название модели
user
User
user_type
UserType
test
Test
question
Question
question_type
QuestionType
49
Продолжение таблицы 21
Название таблицы
Название модели
answer_variant
AnswerVariant
result
Result
result_question
ResultQuestion
result_answer_variant
ResultAnswerVariant
Контроллеры и представления
Большинство контроллеров нашего проекта (кроме контроллера
TesterController) реализует CRUD - (англ. create, read, update, delete —
«создание, чтение, обновление, удаление») сокращённое именование 4-х
базовых функций, используемых при работе с наборами данных.
Консоль управления Yii2 позволяет для конкретной модели выполнить
генерацию CRUD. Генератор CRUD создает контроллер, набор действий
контроллера («Index», «View», «Create», «Update», «Delete») и ряд видов
View») соответствующих действиям.
Контроллеры нашего проекта находятся в папке «basic\controllers».
Представления, соответствующие действиям контроллеров,
располагаются в папке «basic\views».
Таблица 22 - Описание базовых действий контроллеров
Название действия
Описание действия
Index
Метод просмотра списка всех записей
View
Метод просмотра записи
Create
Метод добавления записи
Update
Метод редактирования записи
Delete
Метод удаления записи
50
Таблица 23 - Описание контроллеров системы
Название контроллера
Используемые
контроллером модели
Действия контроллера
SiteController
Основной контроллер сайта
Использует различные
модели (модели
фреймворка Yii, такие как:
LoginForm, SignupForm и
т.д.)
Index (главная страница
системы), Login (вход),
Logout (выход), Signup
(регистрация),
RequestPasswordReset
(отправка пользователю на
email ссылки для сброса
пароля), ResetPassword
(метод ввода нового
пароля)
UserController
Контроллер, реализующий
редактирование пользователей
системы (редактирование доступно
только администратору)
User
Index, View, Create, Update,
Delete
TestController
Контроллер, реализующий
редактирование тестов
(редактирование доступно
администратору и пользователю
(преподавателю))
Test
Index, View, Create, Update,
Delete
QuestionController
Контроллер, реализующий
редактирование вопросов теста
(редактирование доступно
администратору и пользователю
(преподавателю))
Question
Index, View, Create, Update,
Delete
AnswerVariantController
Контроллер, реализующий
редактирование вариантов ответа для
вопроса теста (редактирование
доступно администратору и
пользователю (преподавателю))
AnswerVariant
Index, View, Create, Update,
Delete
ResultController
Контроллер, реализующий
отображение результатов тестов
(доступен всем пользователям,
обучающийся может видеть только
свои результаты, а администратор и
преподаватель все результаты)
Result, ResultQuestion,
ResultAnswerVariant
Index, View, Delete (Delete -
доступно только
администратору)
Tester
Контроллер, реализующий
выполнение тестов (доступен всем
пользователям)
Test, Question,
AnswerVariant,
Result, ResultQuestion,
ResultAnswerVariant
Index, View, Run (запуск
теста), Question
(отображение вопроса
теста), Exit (выход из теста
без сохранения результата),
Finish (завершение теста,
расчет оценки и
сохранение результата)
51
Технологический процесс анализа данных делится на предмашинную,
внутримашинную и послемашинную оценку.
Предмашинный анализ включает в себя получение, отслеживание и
передачу первичных документов. В момент, когда в первичном документе
найдена ошибки, документ передается обратно к источнику для
корректировки, иначе документ направляется для ввода данных в ПЭВМ.
В рамках внутри машинного анализа данные первичных документов
переносятся в ПЭВМ, на их базе создаются результатные документы. На
этом этапе сразу подключаются информационные файлы с условно-
постоянной информацией. Подобное решение сильно упрощает ведение
макета документа.
К внутримашинному анализу можно отнести ведение электронных
справочников, которое реализовано параллельно, являясь самостоятельным
технологическим процессом. Справочники применяются при вводе
оперативных данных по приходящим проектным документам, а также при
создании итоговых документов и отчетов.
Послемашинный анализ состоит в проверке корректности ведения
выходных документов и отправке их пользователям.
Технологический процесс внутримашинного анализа информации
является совокупностью операций, выполняющиеся в диалоговом режиме
работы с ПК и в различной последовательности. То есть череда
технологических операций выражена в процессе диалога пользователя с ПК.
Работа в диалоговом режиме не содержит чётко определенной
последовательности действий. Потому схема технологического процесса в
диалоговом режиме становится комплексом технологических операций,
отвечающих в схеме диалога задачи и существующий в рамках схемы работы
системы.

Смотрите также:

Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран
Work-life balance подход в управлении рабочим временем молодых сотрудников (на примере ООО «МГТ-сервис»)
Актуализация контента, отражающего концепцию «диалога культур», при освоении английского языка взрослыми обучающимися
Актуализация приемов инсценирования и драматизации в рамках интерактивной модели обучения английскому языку в старших классах
Актуальные подходы в построении внутреннего pr строительной компании (на примере ООО "Ренессанспроект")
Анализ деловой активности и экономической эффективности деятельности организации (на примере АО «СГ-Транс»)
Анализ деловой активности организации как инструмент повышения эффективности ее деятельности (на примере Косинского районного потребительского общества)