RSS    

   Дипломная работа: Подсистема визуальной генерации отчётов в рамках информационно-образовательного портала

Разрабатываемое мной программное средство, будет иметь те же функциональные возможности, но в отличие от уже готовых решений, будет отличаться дешевизной. Также, стоит заметить, что разрабатываемое программное средство создаётся исключительно для использования в ВУЗах.


1.3 Постановка задачи подсистемы визуальной генерации отчётов в рамках информационного портала

Основной целью данной преддипломной работы является разработка подсистемы визуальной генерации отчётов, которая должна обладать такими функциональными возможностями, как:

·  создание SQL запросов в базу данных посредством графического интерфейса пользователя(GUI);

·  наличие встроенного мощного дизайнера;

·  форматирование содержимого отчёта;

·  набор наиболее популярных компонентов: текст, линия, рисунок, таблица, диаграмма, фигура, цвет;

·  предпросмотр;

·  возможность использования готового шаблона;

·  печать готового отчёта;

·  экспорт отчёта в файлы распространённых форматов (jpg, bmp, pdf, txt, html, rtf);

·  многостраничные отчёты;

·  поиск текста в сформированном отчёте;

·  редактирование сформированного отчёта;

·  форма отчёта может храниться во внешнем файле;

·  защита от несанкционированного доступа к базам данных путём аутентификации пользователей.

Решение данной задачи разбивается на следующие подзадачи:

·  разработка конструктора отчёта;

·  разработка модулей конструктора запросов к информационным ресурсам;

·  разработку модуля создания групп ключевых слов;

·  разработку модуля, реализующего поиск по группам ключевых слов.

Генератор отчетов позволит снизить временные затраты на формирование отчетности, так как он:

·  заменит заполнение бумажных бланков отчетов на ввод данных в соответствующие поля ввода и/или заполнение отчета из источника данных;

·   упростит корректировку данных в отчете;

·   снимет необходимость повторно заполнять бланк, если требуется несколько копий одного и того же документа;

·   уменьшит количество ошибок, связанных с:

·  заполнением нескольких копий отчета;

·  неправильным расчетом контрольных сумм и других расчетных показателей;

·  необходимостью выбора значения из классификаторов и справочников.

Программное средство должно быть легко внедрено в существующий информационный портал учебного заведения, что достигается путём разработки модулей с помощью фреймворка Code Igniter и использования системы управления базами данных PostgreSQL (8.4+).


2. Алгоритмическое конструирование подсистемы визуальной генерации отчётов

 

2.1 Общий алгоритм работы программы

Весь алгоритм работы программы можно разбить на следующий блоки:

1)  Запуск программного средства

2)  Авторизация пользователя

3)  Определение прав доступа к функционалу программы

4)  Подключение приложения к выбранной базе данных

5)  Открытие шаблона отчёта

6)  Генерация отчёта путём составления SQL запросов в базу данных посредством графического интерфейса пользователя

7)  Отображение отчёта

8)  Ввод и корректировка данных

9)  Форматирование отчёта

10)  Сохранение отчёта

11)  Печать отчёта

12)  Закрытие приложение

На рисунке 1 приведена общая блок-схема работы программного обеспечения.


Рисунок 1 – Общая схема работы генератора отчётов.

2.1.1 Схема модуля программы, отвечающего за авторизацию пользователя

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

На рисунке 2 приведена схема создания защищённого соединения.


Рисунок 2 – Создание защищённого соединения

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

Когда пользователь авторизован, создается временное представление, содержащее поля таблиц персональных данных в зашифрованном виде.

Создание временного представления в совокупности с дешифрованием полей таблиц персональных данных, указанных в представлении, позволяет поддерживать конфиденциальность персональных данных.

Формирование временного представления происходит так, что при получении им полей таблиц персональных данных вызывается функция дешифрования и когда конструктор запросов обращается к полям представления, они находятся в расшифрованном виде.

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

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

2.2 Конструктор запросов

Конструктор запросов подразумевает создание SQL запросов посредством графического интерфейса пользователя (GUI).

Идея заключается в наличии у пользователя некоторой подготовленности и знанию ER-модели существующей системы управления базами данных. Посредством GUI обеспечивается удобное составление запросов.

Конструирование отчета производится на базе некоторого отношения, полученного из базы данных (рисунок 3). Запрос таких отношений производится средствами языка манипулирования данными, входящими в состав СУБД, в нашем случае, средствами оператора Select, предоставляющего возможности по выполнению реляционных операций селекции и объединения, а также позволяющих применять группировку результатов запроса.


Рисунок 3 - Общая схема запросов к базе данных генератора отчётов.

2.3 Схема информационных потоков, разрабатываемой подсистемы

Схема безопасной обработки персональных данных конструктором запросов показана на рисунке 4. Опишем схему безопасной обработки персональных данных конструктором запросов.

Рисунок 4 - Схема безопасной обработки персональных данных.


Когда происходит запрос к какой-либо функции конструктора запросов, приложение создает временное представление таблиц персональных данных. К имени представления приписывается уникальный идентификатор, по которому экземпляр приложения узнает, что именно с этим представлением должен работать этот экземпляр конструктора запросов.

После создания временного представления происходит дешифрование полей, указанных в представлении при его формировании. Дешифрование происходит по ключу, хранящемуся в настройках приложения. Доступ к настройкам приложения из браузера запрещен.

Более привлекательный способ заключается в формировании временного представления таким образом, что при обращении к нему будет происходить дешифрование его полей.

После осуществления описанных шагов пользователь может конструировать запросы к персональным данным. Любое обращение будет идти не к шифрованным таблицам с персональными данными, а к временному представлению. Сформированный пользователем запрос проверяется на корректность, и если ошибок нет, запрос выполняется. Если есть ошибки, запрос не выполняется и в браузер выводится информация о типе ошибке и возможные решения. После выполнения сформированного запроса выводятся результаты его выполнения.

 

2.4 Схема создания временного представления для текущего пользователя

На рисунке 5 изображена структура создание временного представления для таблиц персональных данных позволяет повысить уровень защищенности обработки персональных данных, а так же поддерживать конфиденциальность этих данных. Так как временное представление не сохраняется в базе данных после окончания сеанса работы с ней, то злоумышленник не сможет получить данные представления, получаемые в расшифрованном виде.

Рисунок 5 – Схема создания временного представления

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.