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

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
80
Рис. 21 Сценарий диалога работы пользователя
2.3.2. Характеристика базы данных
База данных ИС «Техническая поддержка» состоит из семнадцати таблиц
(рис. 22) «aggregate_claim», «attachment», «claim», «claim_state», «claim_type»,
«Department», «information_system», «News», «notification», «priority», «process»,
«process_attach», «responsibilities», «state», «user», «setting».
Рис. 22 Структура БД ИС «Техническая поддержка» в phpMyAdmin
81
С точки зрения технологии программирования модули системы имеют
схожие процедуры. Исходя из этого, рассмотрим технологию создания
серверной и клиентской частей на примере подсистемы «Заявки», как наиболее
сложной.
Таблица «aggregate_claim».
Первое поле имеет имя «id», как и принято, в таких случаях, то есть
каждая запись в таблице должна быть снабжена уникальным идентификатором.
Тип - INT -целочисленный, в диапазоне от -2 147 483 648 до 2 147 483 647,
количество знаков ограничим числом 11. В поле «Дополнительно» установлен
атрибут AUTO_ INCREMENT - поле счетчика. Так же тип данных - INT,
задается и для полей system_id, creator_id, priority_id. Для поля SendOn
установлен тип VARCHAR (текстовый). Для полей date и lastInform, тип DATA.
Кодировка (сравнение) данная настройка актуальна для строковых типов. В
проекте использована кодировка utf8_unicode_ci. Таблица представлена на
рисунке 23.
Рис. 23 Таблица «aggregate_claim»
Таблица «attachment».
Первое поле имеет имя «id». Тип INT -целочисленный, в диапазоне от -2
147 483 648 до 2 147 483 647, количество знаков ограничим числом 11. В поле
«Дополнительно» - атрибут AUTO_ INCREMENT - поле счетчика. Так же тип
данных - INT, задается и для поля claim_id. Для полей name и path - тип
VARCHAR. Для поля originalFilename, тип LONGTEXT. Кодировка
utf8_unicode_ci. Таблица представлена на рисунке 24.
82
Рис. 24 Таблица «attachment»
Таблица «claim».
Первое поле имеет имя «id». Тип INT -целочисленный, в диапазоне от -2
147 483 648 до 2 147 483 647, количество знаков ограничивается числом 11. В
поле «Дополнительно» установлен атрибут AUTO_ INCREMENT - поле
счетчика. Так же тип данных - INT, задается и для полей type_id и aggregate_id.
Для поля create_date тип DATETIME. Для поля content, тип LONGTEXT.
Кодировка utf8_unicode_ci. Таблица представлена на рисунке 25.
Рис. 25 Таблица «claim»
Таблица «notification».
Первое поле имеет имя «id». Тип INT -целочисленный, в диапазоне от - 2
147 483 648 до 2 147 483 647, количество знаков ограничивается числом 11. В
поле «Дополнительно» выбран атрибут AUTO_ INCREMENT - поле счетчика.
Так же тип данных - INT, задается и для полей aggregate_claim_id и user_id.
Таблица представлена на рисунке 26.
83
Рис. 26 Таблица «notification»
Таблица «process».
Первое поле имеет имя «id». Тип INT -целочисленный, в диапазоне от -2
147 483 648 до 2 147 483 647, количество знаков ограничивается числом 11. В
поле «Дополнительно» установлен атрибут AUTO_ INCREMENT - поле
счетчика. Так же тип данных - INT, задается и для полей aggregate_claim_id и
user_id. Для поля created_at - тип DATETIME. Для поля description, тип
LONGTEXT. Кодировка utf8_unicode_ci. Таблица представлена на рисунке 27.
Рис. 27 Таблица «process»
Таблица «process_attach».
Первое поле имеет имя «id». Тип INT -целочисленный, в диапазоне от -2
147 483 648 до 2 147 483 647, количество знаков ограничим числом 11. В поле
«Дополнительно» выбран атрибут AUTO_ INCREMENT - поле счетчика. Так же
тип данных - INT, задается и для поля process_id. Для полей name и path - тип
VARCHAR. Для поля originalFilename, тип LONGTEXT. Кодировка
utf8_unicode_ci. Таблица представлена на рисунке 28.
84
Рис. 28 Таблица «process»
Таблица «responsibilites».
Первое поле имеет имя «id». Тип INT - целочисленный, в диапазоне от -2
147 483 648 до 2 147 483 647, количество знаков ограничивается числом 11. В
поле «Дополнительно» выбран атрибут AUTO_ INCREMENT - поле счетчика.
Так же тип данных - INT, задается и для полей system_id и user_id. Таблица
представлена на рисунке 29.
Рис. 29. Таблица «responsibilites»
Выбрав в качестве модели базы данных реляционный тип, на схеме можно
наблюдать таблицы, приведенные к третей форме нормальности и возможные
связи между ними изображены таблицы базы данных, а также связи между ними.
У каждой таблицы есть первичный ключ. У многих из таблиц есть вторичный
ключ и индексируемые поля для осуществления поиска.
Базу данных ИС «Техническая поддержка» можно представить в виде
модели, представленной на рисунке 30.
85
Рис. 30 Модель БД ИС «Техническая поддержка»
86
2.3.3 Структурная схема пакета (дерево вызова процедур и
программ)
Основное окно программы предоставляет главную страницу, на которой
располагаются новости, после авторизации под учетной записью специалиста
технической поддержки - статистические данные о заявках в работе. Сценарий
диалога представлен на рисунке 31.
Рис. 31 Схема графических форм программы
Основная процедура
работы ИС
Фоорма "Новости" Форма авторизации
Форма "Пользователи"
Форма добавления
пользователя
Форма редактирования
пользователя
Форма смена пароля
Форма "Отчеты" Форма фильтра
Редактировать
справочники
Форма "Новости"
Форма добавления
Форма редактирования
Форма "Информационные
системы"
Форма добавления
Форма редактирования
Форма "Типы заявок"
Форма добавления
Форма редактирования
Форма "Состояние
заявок"
Форма добавления
Форма редактирования
Форма "Приоритеты
заявок"
Форма добавления
Форма редактирования
Форма "Ведомства"
Форма добавления
Форма редактирования
Форма "Настройки"
Форма "Регламент
работы"
Форма "Оставить новую
заявку"
Форма "выход"
87
В таблице 6 содержится описание всех модулей структурной схемы
пакетов, представленных на рисунке 31.
Таблица 6
Описание модулей ИС
Наименование модуля
Функционал модуля
Форма «Основная процедура
работы ИС»
Содержит в себе глобальные переменные,
процедуры и функции. Основная работа
начинается с этого модуля.
Форма «Новости»
Форма новостей. Перед авторизацией
пользователя выводится данная форма.
Форма «Авторизация»
Данная форма содержит запрос логина и пароля
для входа в веб интерфейс программы.
Форма «Пользователи»
Данная форма открывает справочник
пользователей.
Форма «Добавление»
Данная форма предоставляет возможность
внесения данных в нужный справочник.
Форма «Редактирование»
Данная форма предоставляет возможность
редактирования данных справочника.
Форма «Смена пароля»
Данная форма предоставляет возможность
смены пароля пользователя.
Форма «Отчеты»
Данная форма предоставляет возможность
формирования отчета по заявкам с
использованием формы фильтра.
Форма «Редактировать
справочники»
Данная форма предоставляет возможность
редактирования данных справочников.
Форма «Настройки»
Данная форма предоставляет возможность
изменения настроек приложения.
Форма «Регламент работы»
Данная форма предоставляет собой ссылку на
документ в формате pdf.
Форма «Оставить новую
заявку»
Данная форма предоставляет возможность
добавления заявки в систему».
Форма «Выход»
Выход из системы.
88
2.3.4 Описание программных модулей
Разработка реализации связей между серверной и клиентской частями.
включает следующие этапы:
1. Разработка web-страниц с HTML формами.
2. Программирование логики взаимодействия web-страниц и MySQL.
Web-страницы создаются с использованием языка разметки
гипертекстовых документов HTML (Hyper Text Markup Language). В обычный
текстовый документ вставляются управляющие символы - HTML-тэги, которые
определяют вид Web- страницы при ее просмотре в браузере.
Чтобы принимать данные пользователя и предоставлять их Web-
приложение должно обеспечивать интерактивное взаимодействие с
пользователем. Наиболее удобным средством для создания и обработки данных
на стороне клиента является язык скриптов PHP. PHP - язык написания скрипов,
которые встраиваются непосредственно в гипертекстовые файлы и исполняются
на Web-сервере. Программа на PHP заключается в теги: а интерпретатор
обрабатывает команды между этой парой тегов и формирует окончательный
файл, передающийся на локальную машину. Команды РНР обязательно
разделяются символом точки с запятой «;», после последней в программе
команды его можно не ставить. Также данный символ не ставится после
условных операторов (if, switch) и операторов цикла (for, while и других).
Symfony 2 - поистине мощный и современный фреймворк. Его вполне
можно назвать сложным для освоения, но поняв суть концепции, заложенной
разработчиками, можно значительно ускорить процесс создания приложения.
Для того чтобы начать работать с Symfony 2, должен быть установлен и
настроен стек LAMP. По сути, в PHP, начиная с версии 5.4.0, присутствует
встроенный сервер, который целесообразно применять только для разработки и
отладки. Symfony 2 тоже использует его.
В результате появляется системная команда symfony. После установки
инсталлятора, необходимо создать проект:
$ symfony new project_name
89
Итак, на данном этапе уже есть созданный проект Symfony 2. Структура
директорий выглядит следующим образом:
1) /app - каталог приложения, здесь хранятся конфиги, логи, ресурсы
приложения;
2) /src - каталог с бандлами (в других фремфорках их еще называют
модулями - структурные единицы приложения);
3) /vendor - каталог со всеми зависимостями проекта, создается
composer'ом;
4) /web - каталог, доступный извне, публичный каталог.
В листинге программы подключение осуществляется с помощью
операции require_once(), которая включает специфицированный файл config.php,
представлен в приложении 1.
Для запуска web-сервера необходимо перейти в каталог с проектом,
используя консольную команду:
$ php app/console server:run
Чтобы запустить сервер в фоновом процессе:
$ php app/console server:start
Для проверки статуса сервера :
$ php app/console server:status
После того, как сервер запущен, можно посмотреть переходом по адресу
http://127.0.0.1:8000. Теперь необходимо настроить проект.
Все основные конфигурационные файлы проекта находятся в папке
/app/config. Первый файл, который понадобится - /app/config/parameters.yml. Это
файл, в котором хранятся все основные параметры приложения. Необходимо
произвести редактирование под данную систему:
# This file is auto-generated during the composer install
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: null
database_name: gis
database_user: gis

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

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