Диплом: Исследование и разработка системы управления на основе генетических алгоритмов на примере авторского решения для прикладной задачи (на базе АО "Спецгазмонтаж")

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
74
п/п
Наименование модуля
Функции модуля
5.
Form_Magistrals.cs
Отвечает за работу с формой обработки данных
справочника «Магистрали».
6.
Form_Main.cs
Главный модуль. Содержит функции организации
интерфейса программы, функции подключения
базы данных и функции вызова остальных
модулей.
7.
Form_Nodes.cs
Отвечает за работу с формой обработки данных
справочника «Узлы».
8.
Form_Places.cs
Отвечает за работу с формой обработки данных
справочника «Должности».
9.
Form_Plans.cs
Отвечает за работу с формой обработки данных
документов «Планы».
10.
Form_Requests.cs
Отвечает за работу с формой обработки данных
документов «Заявки».
11.
Form_Sectors.cs
Отвечает за работу с формой обработки данных
справочника «Участки».
12.
Form_ThreadRedistributio
n.cs
Отвечает за работу с формой, отображающей
результаты работы генетического алгоритма.
13.
Form_Units.cs
Отвечает за работу с формой обработки данных
справочника «Подразделения».
14.
Form_Workers.cs
Отвечает за работу с формой обработки данных
справочника «Сотрудники».
15.
Node.cs
Модуль для реализации класса Node, который
предназначен для описания отдельных узлов
магистрали
16.
Nodes.cs
Модуль для реализации класса Nodes, который
предназначен для реализации списка узлов
магистрали
17.
Pipeline_Class.cs
Модуль для реализации генетического алгоритма
18.
PipelineEventArg.cs
Модуль для описания служебного класса при
отрисовке найденного маршрута магистрали.
19.
Populyacia.cs
Модуль формирования очередной популяции.
20.
Route.cs
Отвечает за формирование маршрута.
Дерево подключаемых программ (модулей) приведено на рис. 2.15.
2.4.4 Описание программных модулей
В разработанной системе поддержки принятия решений присутствует
достаточно большое количество программных модулей, выполняющих самые
различные функции. В качестве примера одного из модулей целесообразно
рассмотрение модуля авторизации пользователя в системе.
75
Процесс начинается с выбора пользователем собственного логина и ввода
пароля. После этого система сверяет введенные данные с данными,
хранящимися в базе данных. Если ввод был осуществлен корректно, то
пользователь входит в систему, если нет – то происходит увеличение попыток
ввода.
Если их количество не достигло порогового значения (в данном случае,
трех), то пользователю предлагается повторить ввод данных, в противном случае
происходит выход из системы. Блок-схема процесса авторизации пользователя в
системе принятия решений перераспределения потоков в магистральной сети
для АО «Спецгазмонтаж» представлена на рис. 2.16.
76
Form_Auth.cs
Form_Main.cs
Form_ApplicationUser.cs
Form_Workers.cs
Form_Nodes.cs
Модуль авторизации
Главный модуль
Модуль управления
пользователями
приложения
Модуль управления
данными по узлам сети
Form_Sectors.cs
Модуль управления
участками
Модуль управления
данными сотрудников
Form_Units.cs
Модуль управления
подразделениями
Form_About.cs
Модуль отображения
данных приложения
Form_Places.cs
Модуль управления
должностями
Form_Magistrals.cs
Модуль управления
данными магистралей
Form_Plans.cs
Модуль управления
планами
Модуль управления
заявками
Form_Requests.cs
Form_ThreadRedistribution.cs
Pipeline_Class.cs
Модуль генетического
алгоритма
Модуль реализации
генетического алгоритма
PipelineEventArg.cs
Node.cs
Модуль для описания
служебного класса
Модуль для реализации
класса Nodе
Nodes.cs
Модуль для реализации
класса Nodеs
Populyacia.cs
Route.cs
Модуль формирования
очередной популяции.
Отвечает за формирование
маршрута
Рис. 2.15 Дерево вызова модулей системы
77
начало
Ввод логина и
пароля
Login_ID =
Login_ComboBox.SelectedIndex;
i=0;
i<ApplicationUsers_DataGridVi
ew.RowCount - 1; i++
ApplicationUsers_DataGridView.Rows[i].
Cells[1].Value.ToString() ==
Login_ComboBox.Text.Trim())
Selected_UserID =
Convert.ToInt32(ApplicationUsers_DataGridView.
Rows[i].Cells[0].Value.ToString());
да
нет
BD_Login = Login_ComboBox.Text.Trim()
BD_Password =
ApplicationUsers_DataGridView.Rows[Lo
gin_ID].Cells[2].Value.ToString().Tri
m();
s =
ApplicationUsers_DataGridView.Rows[Lo
gin_ID].Cells[0].Value.ToString()
Selected_UserID = Convert.ToInt32(s)
- 1;
User_Rights =
Convert.ToInt32(ApplicationUsers_Data
GridView.Rows[Selected_UserID].Cells[
3].Value.ToString());
Password_TextBox.Text.Trim() !=
BD_Password
N_Wrong_Attempts++;
да
N_Wrong_Attempts ==
Attempts_Max
Превышено
количество попыток
входа в систему
да
Неверный пароль.
Повторите попытку!
нет
Form_Main Form_Main = new
Form_Main();
Form_Main.Show();
this.Hide();
нет
конец
Вызов главной
формы
Увеличение кол-
ва неверных
попыток
Рис. 2.16 Описание процесса авторизации в системе
2.5 Апробация результатов исследования
Как уже было сказано выше, при запуске программы пользователь
выбирает свой логин (из выпадающего списка) и вводит пароль. Окно ввода
авторизации представлено на рис. 2.17. Если данные введены неправильно, то
количество попыток неправильного ввода увеличивается на единицу. Если число
таких попыток достигло максимально возможного (на данный момент в
программе это число равно трем), на экран выдается соответствующее
78
уведомление и происходит выход из программы. В противном случае
пользователю предлагается повторить ввод данных.
Рис. 2.17 Форма авторизации
Если данные введены корректно, открывается главная форма программы.
При этом, так как в системе реализована политика разграничения прав, для
пользователей с правами администратора будут доступны все функциональные
возможности программы (рис. 2.18), для остальных пользователей недоступны
просмотр и изменение справочных данных (рис. 2.19).
Рис. 2.18 Главная форма для администратора
Тестирование работы системы в дальнейшем, для полноты исследования,
целесообразно проводить именно для пользователя с правами администратора.
79
Рис. 2.19 Главная форма для обычного пользователя
Как видно из главной формы, пользователь может выполнить требуемое
ему действие двумя способами: выбрав пункт меню из главного меню (верхняя
часть формы), либо установив соответствующий переключатель в группе
переключателей и нажав кнопку «Выбор».
В меню «Справочная информация» пользователь может управлять
списком пользователей системы (рис. 2.20).
Рис. 2.20 Форма «Пользователи»
Принцип работы со всеми справочниками и документами в системе
реализован схожим образом: пользователь может вносить информацию прямо в
таблицу. Навигация по таблице осуществляется с помощью навигационной
панели, расположенной в верхней части формы. Имеется возможность ввода
новых записей, редактирования и удаления существующих. После окончания
редактирования необходимо нажать кнопку «Записать» на навигационной
панели, после чего внесенные изменения будут внесены непосредственно в
соответствующую таблицу базы данных.
80
Итак в справочнике «Пользователи» необходимо внести информацию о
логине пользователя, его пароле и назначенном ему наборе прав.
Справочник «Подразделения» представлен на рис. 2.21. В нем
пользователь вносит наименование подразделений АО «Спецгазмонтаж».
Рис. 2.21 Форма «Подразделения»
Аналогично, список должностей предприятия хранится в справочнике
«Должности». В него необходимо внести только наименование должностей (рис.
2.22).
Рис. 2.22 Форма «Должности»
Информация о сотрудниках АО «Спецгазмонтаж» хранится в справочнике
«Сотрудники» (рис. 2.23). В него вносятся данные о ФИО сотрудника, его
подразделении (выбирается из выпадающего списка) и занимаемой должности
(выбирается из выпадающего списка).
81
Рис. 2.23 Форма «Сотрудники»
Список магистральных газопроводов приведен в справочнике
«Магистрали» (рис. 2.24). В него вводятся данные о наименовании газопровода,
рассматриваемой ветке газопровода и ее топологии (матрице потоков).
Рис. 2.24 Форма «Магистрали»
Следует отметить, что в данном справочнике, помимо стандартного
табличного, предусмотрен и ручной ввод (нижняя часть формы). Для ввода
матрицы потоков необходимо нажать кнопку справа от текстового поля, выбрать
файл с матрицей в формате XML (в этом файле указаны узлы магистрали и их
координаты), после чего путь к файлу появится в поле «Матрица потоков».
82
В справочнике «Участки» предусмотрено хранение данных об участках
ветвей газопровода: наименовании участка и какой магистрали он принадлежит
(выбирается из выпадающего списка) (рис. 2.25).
Рис. 2.25 Форма «Участки»
Наконец, в справочник «Узлы» вносятся данные об узлах газопровода,
присутствующих в матрице распределения (рис. 2.26). Необходимо внести
данные о наименовании узла, наименовании участка, на котором он находится
(выбирается из выпадающего списка), его широте и долготе.
Рис. 2.26 Форма «Узлы»
Среди документов, присутствующих в системе, необходимо выделить
документ «Заявки» в первую очередь. Ответственный сотрудник подает заявку
на отключение участка газопровода (причины могут быть разные – ремонт,
авария, плановое обслуживание), в которой указываются: дата оформления
заявки, начало блокировки участка, окончание блокировки участка,
наименование участка (выбирается из выпадающего списка), ФИО сотрудника,
подавшего заявку (выбирается из выпадающего списка). Форма «Заявки»
приведена на рис. 2.27.
83
Рис. 2.27 Форма «Заявки»
На основании заявки составляется документ «План» (рис. 2.28), в котором
выполняется максимально эффективное перераспределение потоков с учетом
отключенных участков. В данном документе вводится номер заявки-основания
(выбирается из выпадающего списка), дата ввода перераспределения потоков,
дата окончания (вывода) перераспределения потоков, матрицу
перераспределения (ссылка на файл в формате XML), а также логин
пользователя, составившего данный план (выбирается из выпадающего списка).
Рис. 2.28 Форма «Планы»
Следует отметить, что для данного документа также предусмотрен ручной
ввод данных. Также считается, что после даты вывода распределение потоков в

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

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