Диплом: Автоматизация обработки заявок в ООО УК «Март»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
87
К функциям AsteriskProxy GUI должны относиться: получение журнала
работы ИС из БД и отображение пользователя; добавление с вводом данных
пользователем, изменение с вводом данных пользователем, удаление, чтение,
поиск данных при работе со справочниками; предоставление оперативных
подсказок пользователю; предоставление справочной информации по обоим
модулям; предоставление информации о программе (About).
Указанные выше функции, которые требуют автоматизации с помощью
разрабатываемой ИС, делятся на служебные и основные. Разделенными по
категориям будут выглядеть следующим образом:
1. Служебные функции AsteriskProxy:
a. Чтение конфигурационной файла;
b. Подключение к телефонной станции;
c. Авторизация на телефонной станции;
2. Основные функции AsteriskProxy:
a. Чтение данных из порта телефонной станции;
b. Анализ и фильтрация полученных данных;
c. Отправка данных в CRM систему;
d. Запись данных в журнал работы.
3. Служебные функции AsteriskProxy GUI:
a. Предоставление информации о программе;
b. Предоставление справки (руководство пользователя);
c. Отображение оперативных подсказок пользователю.
4. Основные функции AsteriskProxy GUI:
a. Добавление данных в справочники;
b. Изменение данных в справочниках;
c. Удаление данных из справочников;
d. Поиск и фильтрация по справочникам;
e. Чтение журнала работы;
f. Отображение журнала работы на форме.
88
В результате проделанной работы было создано дерево функций системы,
представленное в приложении 2.
Так как диалог предполагает только глобальный модуль AsteriskProxy GUI,
сценарий диалога возможно рассмотреть только для данного модуля.
В сценарии диалога должно учитываться: работа с формами входных
данных; формирование результатных данных; ввод, редактирование и просмотр
данных; помощь на всех этапах работы с системой.
Сценарий диалога представлен на рисунке 24.
Главное меню
Журнал зарегистрированных событий
Просмотр
Поиск и
фильтрация
Справочники Помощь
Абоненты АДС
Просмотр
Добавление
Удаление
Поиск и фильтр
Внешние линии АДС
Просмотр
Добавление
Удаление
Поиск и фильтрация
О программе
Руководство пользователя
Просмотр
Просмотр
Рисунок 24. Сценарий диалога
2.3.2. Характеристика базы данных
Основываясь на ранее предоставленных результатах исследования, а
именно описании входной и результативной информации, необходимо
произвести моделирование и описание базы данных для того, чтобы произвести
ее разработку. В виду того, что проектируемые таблицы базы данных относятся
к реляционной БД, возникает требование произвести описание связей между
таблицами. Для этого необходимо применить ER-модель базы данных, которая
будет построена по принципу «сущность – связь». Для построения ER-модели
89
было использовано программное обеспечение Oracle MySQL Workbench 6.1CE,
результаты работы которой представлены на рисунке 25.
Рисунок 25. ER-модель базы данных
По окончании моделирования необходимо определить характеристики
атрибутов таблиц базы данных. Результаты проведенной работы представлены в
таблице 10.
Таблица 10
Характеристики атрибутов таблиц базы данных
Наименование поля
Идентификатор
поля
Тип поля
Длина
поля
Прочее
Журнал работы
Идентификатор
ID
INT
AUTO_INCREM
ENT
11
Ключевое
поле
Дата и время
data_time
datatime
22
Сериализованные
данные события
event
TEXT
255
Справочник абонентов АДС
Идентификатор
ID
INT
AUTO_INCREM
ENT
11
Ключевое
поле
Номер
number
INT
3
Наименование
name
TEXT
255
Примечание
note
TEXT
255
Маркер удаления
(статус)
status
BOOL
1
Идентификатор
назначенной внешней
линией
trunk_id
INT
11
Справочник внешних номеров АДС
Идентификатор
ID
INT
AUTO_INCREM
ENT
11
Ключевое
поле
Линия
trunk
INT
6
Примечание
note
TEXT
255
Маркер удаления
(статус)
status
BOOL
1
90
2.3.3. Структурная схема пакета (дерево вызова программных модулей)
В структурной схеме пакета разрабатываемой информационной системы
предусмотрены модули, которые классифицированы по видам, а именно:
1. модули, ориентированные на реализацию служебных функций;
2. модули, выполняющие управляющие функции, такие как наполнение
выпадающих списков, передачу управления другим модулям;
3. модули, непосредственно участвующие в отображении, хранении и
изменении данных, а также их передаче целевым сервисам.
Описание функций модулей позволяет разделить их по функциональным
назначениям и структурировать для минимизации ошибок в процессе работы.
Следует обратить внимание на то, что разрабатываемая ИС разделена на
два независимых глобальных модуля – служба обработки данных и графический
интерфейс для подготовки входных данных и контроля результата работы.
Описание функций модулей обоих глобальных модулей представлено в таблице
11.
Таблица 11
Описание функций модулей
п/п
Наименование
модуля
Функции модуля
Глобальный модуль – AsteriskProxy
1
Основной модуль
приложения (основной
поток - Main)
Содержит процедуры и функции, служащие для
предоставления отладочной информации о
результатах запуска, чтения конфигурационного
файла, создания типового конфигурационного
файла, в случае отсутствия файла конфигурации,
создания потоков работы и их запуск
2
Модуль наблюдения за
портом данных
телефонной станции
(Monitor)
Содержит процедуры и функции, служащие для
подключения к порту телефонной станции,
авторизации на телефонной станции, чтения
данных из порта станции, помещения данных в
очередь на обработку, передачу управления
зависимым модулям (потокам)
91
Продолжение таблицы 11
п/п
Наименование модуля
Функции модуля
Глобальный модуль – AsteriskProxy
3
Модуль предварительного
анализа принятых данных
(Parser)
Содержит процедуры и функции, служащие
для наблюдения за принятыми данными от
телефонной станции и определения
признаков конца пакета данных, функции
передачи предварительно обработанных
данных модулю обработчика
4
Модуль-обработчик
данных (Handler)
Содержит процедуры и функции, служащие
для сериализации полученных данных,
записи их в журнал работы и отправки третьей
стороне – CRM-системе
5
Вспомогательный модуль
(Helper)
Содержит процедуры и функции, служащие
для работы со строковыми данными и
экранизации специальных символов для
предотвращения потери данных или сбое в
БД, методы сериализации данных (Json)
Глобальный модуль – AsteriskProxy GUI
1
Основной модуль
приложения (MainWindow)
Содержит процедуры и функции вызова
модулей журнала, справочников и помощи
2
Модуль журнала работы
ИС (EventLogWindow)
Содержит процедуры и функции, служащие
для перехвата событий, поиска и фильтрации
по справочнику, чтения данных из БД и
отображения
3
Модуль справочника
внутренних номеров АДС
(ExtensionsWindow)
Содержит процедуры и функции, служащие
для перехвата событий, обработки, чтения
информации из БД и ее отображения, поиска
и фильтрации, обновления, вызова модуля
добавления данных, определения позиции
нажатия кнопок мыши и изменения
контекстного меню, вызова модуля
редактирования данных, удаления данных.
92
Продолжение таблицы 11
п/п
Наименование модуля
Функции модуля
Глобальный модуль – AsteriskProxy GUI
4
Модуль добавления
данных в справочник
внутренних номеров
абонентов АДС
(AddExtensionWindow)
Содержит процедуры и функции, служащие
для записи данных в БД, контроля
правильности ввода данных пользователем,
предварительного заполнения формы
данными, полученными из БД
5
Модуль редактирования
записи справочника
внутренних номеров
абонентов АДС
(EditExetnsionWindow)
Содержит процедуры и функции, служащие
для контроля ввода данных пользователем,
заполнения элементов ввода формы данными
из БД, изменения данных в таблице
справочника
6
Модуль справочника
внешних номеров АДС
(TrunksWindow)
Содержит процедуры и функции для
перехвата событий и обработки, чтения
данных из БД, поиска и фильтрации данных,
обновления данных, вызова модуля
добавления данных, редактирования данных,
определения позиции нажатия кнопок мыши,
удаления данных из справочника
7
Модуль добавления
данных в справочник
внешних линий АДС
(AddTrunkWindow)
Содержит процедуры и функции, служащие
для контроля ввода данных пользователем,
добавления данных в таблицу БД справочника
8
Модуль редактирования
записи справочника
внешних линий АДС
(EditTrunkWindow)
Содержит процедуры и функции, служащие
для контроля ввода данных пользователем,
предварительного заполнения данными
элементов формы, сохранения данных в БД
9
Модуль «О программе»
(AboutWindow)
Содержит процедуру отображения данных о
программе
10
Модуль справочной
системы (HelpWindow)
Содержит процедуры и функции, служащие
для чтения и отображения справочной
информации
93
Продолжение таблицы 11
п/п
Наименование модуля
Функции модуля
Глобальный модуль – AsteriskProxy GUI
11
Модуль основного потока
Содержит классы, служащие для организации
главной точки входа приложения, инициации
события обновления данных модуля
ExtensionsWindow, инициации события
обновления данных модуля TrunksWindow,
инициации события обновления данных
модуля EventLogWindow, создания
компонента, позволяющего организовать
систему подсказок для пользователя
Дерево вызова программных модулей представлено на рисунках 26 и 27.
Рисунок 26. Дерево модулей AsteriskProxy GUI
94
Рисунок 27. Дерево модулей AsteriskProxy
2.3.4. Описание программных модулей
Разрабатываемая информационная система состоит из двух автономно
работающих глобальных модулей:
AsteriskProxy – глобальный модуль взаимодействия с телефонной
станцией и отправки результатов работы третьим сервисам, состоит из четырех
связанных модулей;
AsteriskProxy GUI – глобальный модуль - графический
пользовательский интерфейс, предназначен для подготовки справочников,
необходимых для работы AsteriskProxy, отображения результатов работы
AsteriskProxy и для получения помощи (руководство пользователя), состоит из
шести связанных модулей.
Для понимания алгоритма работы обоих глобальных модулей, необходимо
расписать алгоритмы работы модулей, из которых состоят глобальные модули.
Глобальный модуль AsteriskProxy состоит из четырех основных модулей:
1. AsteriskProxy Main – главный модуль;
2. AsteriskProxy Monitor – модуль слежения (монитор);
3. AsteriskProxy Parser – модуль анализа и фильтрации (парсер);
4. AsteriskProxy Handler – модуль обработчик результатов модуля Parser.
5. Алгоритмы работы указанных модулей представлены на рисунке 28.
95
Рисунок 28. Алгоритмы работы модулей AsteriskProxy
96
Задачами модуля AsteriskProxy Main являются проверка существования
конфигурационного файла и его создания с типовыми значениями конфигурации
в случае отсутствия, чтение настроек из конфигурационного файла, создание
потоков для работы модулей Монитора и Парсера, выделение (создание и
блокировка до запроса) потока для Обработчика, запуск в работу модулей
Монитора и Парсера. Дальнейшая работа Главного модуля заключается в
ожидании завершения работы потоков (модулей). В случае завершения работы
потоков, главный модуль, следственно, сам AsteriskProxy завершает работу.
Задачами модуля AsteriskProxy Monitor являются подключение к
телефонной станции, в случае успешного подключения – авторизация на
телефонной станции, завершение работы модуля в случае неудачного
подключения к телефонной станции или неудачной авторизации. В случае
поступления данных от телефонной станции, модуль производит посимвольное
чтение данных от телефонной станции и осуществляет постановку полученных
данных в очередь на обработку. В случае отсутствия поступления данных от
телефонной станции, модуль переходит в режим ожидания данных. В случае
обрыва подключения к телефонной станции в результате программно-
аппаратного сбоя, повторное подключение произойдет автоматически на уровне
контроля подключения операционной системой телефонной станции. Модуль
всегда ожидает получения данных от станции, так как они поступают
непрерывно. Завершение работы модуля происходит по внешней команде.
Задачами модуля AsteriskProxy Parser являются постоянное наблюдение за
очередью данных на обработку, ожидание появления данных в очереди, чтение
данных из очереди во временный буффер. В случае обнаружения признака конца
пакета данных, содержимое временного буффера данных отправляются
экземпляру модуля Обработчика, запускаемого в новом потоке, из очереди
удаляются данные, помещенные во временный буффер, который в результате
очищается. Модуль переходит к ожиданию данных в очереди на обработку.
Завершение работы модуля возможно только по внешней команде.

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

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