Диплом: Информационная система школьного мониторинга

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
36
Программная система состоит из следующих уровней: клиент; сервер
приложений; сервер базы данных.
Клиент — это интерфейсный компонент, который представляет первый
уровень, собственно приложение для конечного пользователя. Первый уровень
не имеет прямых связей с базой данных и бизнес-логики.
Сервер приложений располагается на втором уровне. На втором уровне
сосредоточена большая часть бизнес-логики.
Сервер базы данных обеспечивает хранение данных и выносится на
третий уровень.
Сервер приложений разработан при помощи технологии Delphi XE2
DataSnap. Передача данных между клиентом и сервером осуществляется через
протокол TCP.
Сервер приложений взаимодействует с базой данных через СУБД
Microsoft Access. Подключение к базе данных выполняется через технологию
ADO.
В структуре сервера можно выделить две основные части: Модуль
управления сервером (TDM Server) и модуль предоставления данных (Tdssm
Remote data). Описание модулей приведено ниже.
Таблица 2
Структура сервера приложений
Название
модуля
Описание
Функции
1
Tdm Server
Содержит компоненты для
подключения к системе управления
базами данных (через ADO) и
компоненты для организации сервера
приложений (передача данных
выполняется через протокол TCP).
Подключение к СУБД.
Управление сервером
приложений (установка
соединений с
клиентскими
приложениями,
аутентификация
пользователей,
передача данных
клиентам).
2
Tdssm
Remote
Data
Модуль системы, который определяет
доступные клиенту данные и
функциональность системы.
Экземпляр данного модуля создается
для каждого подключенного клиента.
Авторизация.
Предоставление
данных;
Предоставление
функциональности;
37
При инициализации модуля управления сервером автоматически
выполняется инициализация соединения с базой данных. Параметры
соединения содержаться в файле Settings.ini. Если соединение с базой данных
по каким-то причинам не удалось установить, то сервер выдаст сообщение о
невозможности дальнейшей работы, т.е. успешное подключение к базе данных
обязательное условии запуска сервера.
Как уже отмечалось ранее, сервер передает данные по протоколу TCP
(за это отвечает компонент DSTCPServerTransport). Потому, для сервера
должен быть задан порт прослушивания. В нашем случае он имеет значение
5000.
При подключении, на сервере создается отдельный поток. Клиент в
обязательном порядке передает данные для выполнения аутентификации (логин
и пароль), проверку которых выполняет компонент DSAuthenticationManager. В
случае успешного прохождения процедуры аутентификации, для передачи
данных между сервером и клиентом, DSServer создаст интерфейс
взаимодействия. Этим интерфейсом является экземпляр класса
TdssmRemoteData.
В случае ошибки аутентификации сервер вызывает исключение и
уничтожает поток, который был создан для данного подключения.
Цепочка передачи данных между клиентом и сервером выглядит так:
1. Компонент подключения к БД (TADOConnection);
2. Набор данных (TADOTable или TADOQuery);
3. Провайдер набора данных (TDataSetProvider);
4. Компонент клиентского соединения (TSQLConnection);
5. Клиентский компонент соединения с провайдером данных
(TDSProviderConnection);
6. Клиентский набор данных (TClientDataSet).
Пункты 1, 2, 3 – выполняются на стороне сервера, а пункты 4, 5, 6 – на
стороне клиента. Компоненты класса TDataSetProvider служат для определения
38
прав доступа и настройки параметров передачи данных клиенту. В его
настройках можно указать такие параметры как: доступность набора данных
для клиента, режим «только чтение», запрет редактирования, запрет вставки,
запрет удаления и т.д.
Отдельно хочется отметить реализацию механизма тестирования. Все
операции связанные с обработкой результатов тестирования реализованы в
интерфейсе взаимодействия и выполняются сервером. Клиентское приложение
лишь использует определенный набор методов (через проекцию серверного
класса), который и выполняет управление процессом тестирования. Все поля и
методы, отвечающие за управление процессом тестирования, описаны ниже.
Для начал тестирования пользователь должен вызвать метод
«TestingStart». Данный метод выполняет начальную подготовку тестирования:
делает запись в таблицу результатов (метод «AddResult»), подготавливает
список вопросов теста и переводит указатель на первый вопрос тестирования
(набор данных «qTestingQuestionList»). После этого пользователь дает ответы
по вопросам (методы «TestingClearCurrentQuestionAnswerList» и
«TestingAddAnswerInCurrentQuestion»). И выполняет переход к следующему
вопросу (метод «TestingNextQuestion»). У пользователя всегда имеется
возможность вернуться к предыдущему вопросу (метод «TestingPriorQuestion»).
Для завершения тестирования пользователь должен вызвать метод
TestingStop. При вызове данного метода выполняется вычисление балла по
результатам тестирования (метод «ComputeBall»), также выполняется
документирование ответов с целью их последующего вывода при составлении
отчета по результатам тестирования. И в завершении выполняется сохранение
балла в таблицу результатов (метод «SaveBall»).
Основой клиентской части является модуль TdmData. Модуль
выполняет следующие функции: соединение с сервером; управление
предоставленными сервером наборами данных; получение доступа к
39
функциональности сервера (создание проекции интерфейса взаимодействия
«TdssmRemoteData»).
Для подключения к серверу используется компонент SQLConnection. В
качестве параметров подключения мы указываем: тип подключения (DataSnap);
IP-адрес сервера; порт подключения (5000); протокол взаимодействия (в нашем
случае TCP); логин и пароль пользователя.
Для доступа к функциональности и данным сервера используется
специальный компонент DSProviderConnection, который необходим для
подключения клиентского набора данных (TClientDataSet) к провайдеру набора
данных (TDataSetDrovider).
После успешного подключения к серверу выполняется активация
доступных наборов данных (открытие набора данных).
После открытия набора пользователь может редактировать набор
данных через визуальные компоненты (такие как TDBGrid, TDBEdit,
TDBMemo, TDBImage, TDBNavigator и т.д.), разработанные специально для
работы с базами данных. Но визуальные компоненты подключаются не
напрямую к клиентскому набору данных, а используют специальный
«посредник» (объект класса TDataSource) который призваны унифицировать
использование визуальных компонентов с различными типами наборов данных.
Клиент также получает доступ к интерфейсу взаимодействия сервера
TdssmRemoteData. На стороне клиента, через компонент DSProviderConnection,
создается «проекция» класса TdssmRemoteData, в которую входят все методы
серверного класса со спецификатором public. Класс «проекция»
инициализируется сразу после подключения клиента к серверу.
Все отчеты системы сконцентрированы в модуле TdmReport и
формируются при помощи генератора отчетов «FastReports». Простота в
использовании, высокая производительность и надежность генератора отчетов
делают его непревзойденным лидером в своей области. Концентрация всех
отчетов в одном модуле, а также использование компонента TActionManager
40
позволяет с легкостью вызывать отчеты из различных модулей интерфейса
системы. Ядро FastReports позволяет экспортировать созданные отчеты в
различные форматы: PDF, XLS, ODT, RTF и т.д.
2.2.3 Описание функциональных подсистем информационной
системы
В соответствии с выбранной структурой приложения программное
обеспечение включает следующие компоненты:
Операционная система на компьютере пользователя системы;
Операционная система на сервере;
Сервер баз данных;
Средство управления базой данных;
Средство разработки программного продукта.
Основная функция, разрабатываемой информационной системы, сложна
и требуют иерархического представления. Для более наглядного представления
функции системы необходимо декомпозировать на составляющие его функции.
Представим основную функцию системы в дерева функций.
На рисунке 10. представлено дерево функций системы.
41
Основные
Учет
пользователей
Работа со
справочниками
Служебные
Функции ИС
Список лекций
Учет тем
Дневник
обучаемого
Успеваемость
Получение
отчетов
Настройки
соединения
Настройки
авторизации
Добавление
Редактирование
Удаление
Учет тем
Учет
материалов
Учет лекций
Лекции
Типы
пользователя
Типы вопроса
Рисунок 10. Дерево функций системы
Первый уровень представляет основную функцию разрабатываемой
системы – учёт информации об обучаемых, занятиях, отчетности. Эту
информацию можно условно разделить на две составляющие:
данные об обучаемых;
данные об отчетности.
Подфункция учета отчетности разделяется в соответствии с
наименованиями типов отчетности, типов занятий и предметов. Подфункция
работы со справочниками системы предполагает разделение на ввод данных,
получение содержания справочника, редактирование и удаление записей в
справочнике.
Служебные функции содержат функции настройки доступа к ИС, а
также авторизационных данных.
Список входных данных для разработанной системы приведен в таблице
42
Таблица 3
Входные данные
Наименование
Тип
данных
Допустимые значения
Источник
Группа
Общий
Алфавитно-цифровые данные (текст
и числа)
Документ
Предмет
Текстовый
Алфавитные данные
Документ
Тема
Текстовый
Основная, дополнительная
Документ
ФИО обучаемого
Текстовый
Алфавитные данные
Документ
ФИО
пользователя
Текстовый
Алфавитные данные
Документ
Группа
Текстовый
Алфавитно-цифровые и символьные
данные (ХХ-1…ХХ-12)
Документ
Результатной информация в этом случае являются следующие
документы (таблица 4).
Таблица 4
Перечень результатной информации
Наименование
Тип
данных
Допустимые
значения
Источник
ФИО обучаемого
Текстовый
Алфавитные данные
Монитор
Список обучаемых
Текстовый
Алфавитные данные
Монитор, печатный
документ
Список тем
Текстовый
Алфавитные данные
Монитор, печатный
документ
Список тестов
Текстовый
Алфавитные данные
Монитор, печатный
документ
Результаты тестов
Текстовый
Алфавитные данные
Монитор, печатный
документ
Список
пользователей
Текстовый
Алфавитные данные
Монитор, печатный
документ
2.2.4 Описание структуры базы данных
Схема базы данных представлена на рисунке 11.
43
Рисунок 11. Схема БД
Описание таблиц представлено на рисунках 12-21.
Рисунок 111. Таблица Вариант ответа
Рисунок 112. Таблица Вопрос
44
Рисунок 113. Таблица Группа
Рисунок 114. Таблица Описание ответов
Рисунок 115. Таблица Ответ
Рисунок 116. Таблица Пользователь
45
Рисунок 117. Таблица Результат
Рисунок 118. Таблица Тема
Рисунок 20. Таблица Тест
Рисунок 21. Таблица Тип пользователя

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

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