Диплом: Автоматизация процесса проверки текущих знаний в ГОУ СОШ №868

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
56
Главное меню
Справочники
Ученик
Учитель
Тип вопроса
Предмет
Тестирование
Тест
Начать
Отчет
Сформировать
Настройки
Просмотр
Изменение
Просмотр
Изменение
Просмотр
Изменение
Просмотр
Изменение
Создать
Открыть
Выбор теста
Рисунок 20. Сценарий диалога
2.3.2. Характеристика базы данных
Проектируемая ИС будет хранить и обрабатывать данные в реляционной базе
данных, которая представляет собой совокупность двумерных таблиц [18]. База
данных будет включать следующие таблицы:
1. Учитель.
2. Ученик.
3. Предмет.
4. Тип вопроса.
5. Класс.
6. Тест.
57
7. Вопрос.
8. Вариант ответа.
9. Бланк ответа.
10. Пользователь.
11. Право доступа.
Рассмотрим связи между сущностями базы данных. Связь «Учится» между
сущностями «Ученик» и «Класс» показывает какие ученики учатся в каждом классе.
Связь является бинарной, тип связи «один ко многим», потому что в одном классе
могут учиться несколько учеников, но каждый ученик может учиться только в одном
классе.
Класс принадлежности для сущности «Ученик» является обязательным,
поскольку каждый ученик должен учиться в каком-либо классе. Для сущности «Класс»
класс принадлежности не является обязательным, поскольку в каком-либо классе
может не учиться ни один ученик.
Связь «Принадлежит» между сущностями «Ученик» и «Бланк ответа»
показывает какие бланки ответа заполнил каждый ученик. Связь является бинарной,
тип связи «один ко многим», потому что один ученик может заполнить несколько
бланков ответов, но каждый бланк может быть заполнен только одним учеником.
Класс принадлежности для сущности «Ученик» не является обязательным,
поскольку каждый ученик может не заполнить ни одно бланка. Для сущности «Бланк
ответов» класс принадлежности является обязательным, поскольку каждый бланк
ответа должен быть заполнен конкретным учеником.
Связь «Является» между сущностями «Ученик» и «Пользователь» показывает
какие учетные данные использует для входа в систему каждый ученик. Связь является
бинарной, тип связи «один к одному», потому что у каждого ученика может быть
только одна учетная запись, а каждая учетная запись принадлежит только одному
ученику.
Класс принадлежности для сущности «Ученик» не является обязательным,
поскольку ученик может не иметь учетной записи в системе (например, она еще не
была создана). Для сущности «Пользователь» класс принадлежности является
обязательным, поскольку учетная запись создается для каждого ученика.
58
Связь «Имеет» между сущностями «Право доступа» и «Пользователь»
показывает какие права доступны каждому пользователю системы. Связь является
бинарной, тип связи «один ко многим», потому что у каждого пользователя может быть
несколько прав доступа к системе, а каждое право доступа принадлежит только одному
пользователю.
Класс принадлежности для сущности «Пользователь» является обязательным,
поскольку для работы с системой пользователю необходимо хотя бы одно право
доступа. ученик может не иметь учетной записи в системе (например, она еще не была
создана). Для сущности «Право доступа» класс принадлежности не является
обязательным, поскольку право доступа может быть не выдано ни одному
пользователю системы.
Связь «Является» между сущностями «Учитель» и «Пользователь» показывает
какие учетные данные использует для входа в систему каждый учитель. Связь является
бинарной, тип связи «один к одному», потому что у каждого учителя может быть
только одна учетная запись, а каждая учетная запись принадлежит только одному
учителю.
Класс принадлежности для сущности «Учитель» не является обязательным,
поскольку учитель может не иметь учетной записи в системе (например, она еще не
была создана). Для сущности «Пользователь» класс принадлежности является
обязательным, поскольку учетная запись создается для каждого учителя.
Связь «Ведет» между сущностями «Учитель» и «Предмет» показывает какие
предметы ведет каждый учитель. Связь является бинарной, тип связи «многие ко
многим», потому что каждый учитель может вести несколько предметов, и каждый
предмет может проводиться несколькими учителями.
Класс принадлежности для сущности «Учитель» не является обязательным,
поскольку учитель может не вести ни одного предмета (например, социальный
педагог). Для сущности «Предмет» класс принадлежности не является обязательным,
поскольку предмет может быть убран из школьной программы.
Связь «Записан» между сущностями «Бланк ответа» и «Предмет» показывает по
какому предмету проводилось тестирование. Связь является бинарной, тип связи «один
ко многим», потому что каждый предмет может быть вписан в несколько бланков
ответов, но в каждом бланке ответа должен быть указан только один предмет.
59
Класс принадлежности для сущности «Бланк ответа» является обязательным,
поскольку в бланке нужно указать по какому предмету проводилось тестирование. Для
сущности «Предмет» класс принадлежности не является обязательным, поскольку по
предмету может не проводиться ни одного тестирования.
Связь «Включает» между сущностями «Тест» и «Предмет» показывает для
какого предмета был разработан каждый тест. Связь является бинарной, тип связи
«один ко многим», потому что по каждому предмету может быть создано несколько
тестов, но каждый тест разрабатывается только для одного предмета.
Класс принадлежности для сущности «Тест» является обязательным, поскольку
тест разрабатывается для конкретного предмета. Для сущности «Предмет» класс
принадлежности не является обязательным, поскольку по предмету может не
разрабатываться ни один тест.
Связь «Принадлежит» между сущностями «Бланк ответа» и «Тест» показывает
к какому предмету принадлежит бланк ответа. Связь является бинарной, тип связи
«один ко многим», потому что каждый бланк ответа создается для конкретного теста,
но для каждого теста может быть создано несколько бланков ответов.
Класс принадлежности для сущности «Бланк ответа» является обязательным,
поскольку каждый бланк создается для прохождения тестирования. Для сущности
«Тест» класс принадлежности не является обязательным, поскольку тест может не
проводиться вовсе.
Связь «Содержит» между сущностями «Вопрос» и «Тест» показывает какие
вопросы содержит каждый тест. Связь является бинарной, тип связи «один ко многим»,
потому что для каждого теста создаются новые вопросы. Но в каждом тесте может быть
больше одного вопроса.
Класс принадлежности для сущности «Вопрос» является обязательным,
поскольку каждый вопрос разрабатывается для какого-либо теста и не может быть
создан вне теста. Для сущности «Тест» класс принадлежности является обязательным,
поскольку в тесте должен содержаться хотя бы 1 вопрос.
Связь «Содержит» между сущностями «Вопрос» и «Бланк ответа» показывает
ответы на какие вопросы содержит каждый бланк. Связь является бинарной, тип связи
«многие ко многим», потому что в каждом бланке содержатся несколько вопросов и
каждый вопрос содержится во множестве бланков.
60
Класс принадлежности для сущности «Вопрос» является обязательным,
поскольку в каждом бланке должен быть указан номер вопроса теста. Для сущности
«Бланк» класс принадлежности также является обязательным, поскольку в нем должен
быть указан хотя бы 1 вопрос.
Связь «Принадлежит» между сущностями «Вопрос» и «Тип вопроса»
показывает какому типу принадлежит каждый вопрос. Связь является бинарной, тип
связи «один ко многим», потому что каждый вопрос может быть только одного типа.
Но в тесте может быть несколько вопросов одного типа.
Класс принадлежности для сущности «Вопрос» является обязательным,
поскольку для каждого вопроса должен быть указан его тип. Для сущности «Тип
вопроса» класс принадлежности не является обязательным, поскольку не во всех тестах
используются вопросы каждого типа.
Связь «Содержит» между сущностями «Вопрос» и «Вариант ответа» показывает
какие варианты ответа есть на каждый вопрос. Связь является бинарной, тип связи
«один ко многим», потому что на каждый вопрос может быть несколько вариантов
ответа, но каждый вариант принадлежит только одному вопросу.
Класс принадлежности для сущности «Вопрос» не является обязательным,
поскольку в тесте могут быть вопросы со свободным вариантом ответа (текст или
число, который ученик вписывает самостоятельно). Для сущности «Вариант ответа»
класс принадлежности является обязательным, поскольку каждый вариант ответа
должен принадлежать конкретному вопросу.
Для описания взаимосвязей между таблицами построим ER-модель. ER-модель
представлена на рисунке 21.
61
Рисунок 21. ER-модель базы данных
Характеристика таблиц базы данных представлена в таблице 11.
Таблица 11
Характеристика базы данных
Наименование поля
Идентификатор
поля
Тип поля
Длина
поля
Прочее
Справочник «Учитель»
ID_учителя
ID_teacher
Счетчик
5
Ключевое
поле
Фамилия
Lname_teacher
Текст
15
Имя
Fname_teacher
Текст
15
Отчество
Mname_teacher
Текст
15
Справочник «Ученик»
ID_ученика
ID_student
Счетчик
5
Ключевое
поле
Фамилия
Lname_student
Текст
15
Имя
Fname_student
Текст
15
Отчество
Mname_student
Текст
15
Дата рождения
BirthDate_student
Дата/Время
8
Справочник «Предмет»
ID_предмета
ID_subject
Счетчик
5
Ключевое
поле
Наименование
Name_subj
Текст
100
Справочник «Тип вопроса»
ID_типа вопроса
ID_type
Счетчик
5
Ключевое
поле
Наименование
Name_type
Текст
30
62
Наименование поля
Идентификатор
поля
Тип поля
Длина
поля
Прочее
Таблица «Класс»
ID_класса
ID_class
Счетчик
5
Ключевое
поле
Номер
Number_class
Число
1
Буква
Letter_class
Текст
1
Учебный год
Year_class
Дата/Время
8
Таблица «Тест»
ID_теста
ID_test
Счетчик
5
Ключевое
поле
Номер
Number_test
Число
1
Тема
Subject_test
Текст
100
Дата создания
Date_test
Дата/Время
8
Таблица «Вопрос»
ID_вопроса
ID_question
Счетчик
5
Ключевое
поле
Номер
Num_question
Число
3
Текст
Text_question
Текст
200
Таблица «Вариант ответа»
ID_варианта ответа
ID_aswer
Счетчик
5
Ключевое
поле
Номер
Number_answer
Число
3
Текст
Text_answer
Текст
200
Верно
True
Логический
1
Таблица «Бланк ответа»
ID_бланка
ID_blank
Счетчик
5
Ключевое
поле
Дата
Date_blank
Текст
2
Таблица «Пользователь»
ID_пользователя
ID_user
Счетчик
5
Ключевое
поле
Логин
Login_user
Текст
20
Пароль
Password_user
Текст
20
Таблица «Право доступа»
ID_права
ID_rule
Счетчик
5
Ключевое
поле
Наименование
Name_rule
Текст
20
2.3.3. Структурная схема пакета (дерево вызова программных модулей)
На основе результатов, полученных ранее создадим дерево вызова программных
модулей. Дерево вызова программных модулей отражает структурную схему пакета, в
котором содержатся программные модули следующих классов [12]:
Модули служебных функций.
Управляющие модули, осуществляющие загрузку меню и передачу
управления другим модулям.
63
Модули, обеспечивающие ввод, хранение, обработку и выдачу
информации.
Описание программных модулей системы представлено в таблице 12.
Таблица 12
Описание функций модулей
п/п
Наименование
модуля
Функции модуля
1
Глобальный
модуль
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при запуске приложения
2
Модуль
справочника
«Учитель»
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при ведении справочников
3
Модуль
справочника
«Ученик»
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при ведении справочников
4
Модуль
справочника
«Предмет»
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при ведении справочников
5
Модуль
справочника
«Тип вопроса»
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при ведении справочников
6
Модуль
разработки
тестов
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при ведении справочников
7
Модуль
заполнения
бланков
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при создании документа
8
Модуль
формирования
отчета
Содержит глобальные процедуры и функции,
предопределенные процедуры, процедуры и функции,
которые выполняются при формировании отчета
9
Модуль настроек
Содержит предопределенные процедуры и элементы
формы
Дерево вызова программных модулей представлено на рисунке 21.
64
Главный модуль
Модуль справочника «Учитель»
Модуль формирования отчетов
Модуль справочника «Ученик»
Модуль заполнения бланков
Модуль настроек
Модуль справочника «Предмет»
Модуль справочника «Тип вопроса»
Модуль разработки тестов
Рисунок 21. Дерево вызова программных модулей
2.3.4. Описание программных модулей
В разрабатываемой информационной системе, автоматизирующей процесс
проверки текущих знаний, будут доступны несколько ролей пользователей, которые
определяются в процессе авторизации. Алгоритм авторизации представлен на рисунке
22.
65
Начало
Счетчик количества
введенных неверно
паролей i:=0 to 3
Открытие файла main
i>3
Запуск библиотек
Загрузка форм
Ввод учетных данных
Открытие формы авторизации
Данные верны
«Введены неверные
данные!»
i:=i+1
Нет
Загрузка главного окна
Да
Загрузка элементов
главного меню
Конец
Нет
Да
Рисунок 22. Алгоритм авторизации
Для того чтобы пользователи могли работать в системе, необходимо заполнить
справочники. За заполнение справочников отвечает администратор системы. Алгоритм
заполнения справочников представлен на рисунке 23.

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

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)