Диплом: Разработка сетевого программного обеспечения на примере ГКУ "Ресурсы Ямала"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
51
выявления и изучения взаимосвязей между данными в конкретной предметной
области [10].
Для построения информационной модели какого-либо бизнес-процесса,
необходимо определить перечень входных и выходных документов, участвующих
в данном процессе. Для процесса «Управление серверами» входными документами
являются справочники, представляющие из себя совокупность имеющейся
информации по каждой отдельно взятой ИС и серверам, входящим в её состав, а
также команды, скрипты и задания, с помощью которых выполняется управление
ИС. Выходные документы представлены в виде журналов выполнения задач.
Информационная модель разработанной системы изображена на рисунке 5.
2.2.2. Характеристика нормативно-справочной, входной и оперативной
информации
Входная информация – это данные, поступающие в ИС извне [10].
Изначально, все необходимые данные, используемые в работе отдела, были
представлены в виде документов Excel, Word и личных заметок сотрудников в
текстовых файлах. Все имеющиеся данные были внимательно изучены и
отфильтрованы для построения оптимальной модели базы данных, содержащей
только самую необходимую входную информацию.
В разрабатываемом приложении входной информацией являются:
Имя проекта и его описание
Данные для подключения к серверу
Скрипты, обеспечивающие автоматизацию
Все данные вносятся через специально разработанные формы, которые
продемонстрированы в приложении 3.
52
ИС
Администратор
ИС
Управление
пользовате-
лями
Спр. «Пользователи»
Спр* «Пользователи»
Администратор
проекта
Управление
проектом
Спр «Проекты»
Спр* «Проекты»
Спр «Серверы»
Спр* «Серверы»
Ф «Команды»
Ф* «Команды»Спр* «Скрипты»
Спр «Скрипты»
Т «История»
Т* «История»
С «SSH»
Результат
выполнения
Ф «Временный файл»
Рисунок 5. Информационная модель
2.2.3. Характеристика результатной информации
Так как разрабатываемая система предназначена для оперативного
управления серверами, в настоящее время отсутствует необходимость
предоставления пользователям каких-либо отчетов и сводных таблиц. На данный
момент результатная информация представляет собой итог выполнения команды,
53
который сохраняется в таблице истории. Пример результата выполнения
представлен на рисунке 24.
2.3 Программное обеспечение задачи
2.3.1. Общие положения (дерево функций и сценарий диалога)
Основная функция разрабатываемого приложения – выполнить
определённые пользователем действия на удалённом сервере и отобразить
результат выполнения в вэб-интерфейсе. Перечень реализованных возможностей
представлен на рисунке 6 в виде дерева функций.
Дерево функций
Основные функции Служебные функции
Авторизация по
паролю
Выбор проекта
Главное меню
Администратор
проекта
Генерация
HTML страниц
Генерация
Административ
ной части
Пользователь
Справочники
-Проекты
-Команды
-Скрипты
-Серверы
-История
+Просмотр
+Фильтрация()
Действия
-Выполнить
команду
-Выполнить
скрипт
+Просмотр()
+Выполнить()
+Добавить()
+Удалить()
+Редактировать()
+Фильтрация()
Справочники
-Пользователи
-Проекты
-Команды
-Скрипты
-Серверы
-История
+Просмотр()
+Добавить()
+Удалить()
+Редактировать()
+Фильтрация()
Действия
-Выполнить
команду
-Выполнить
скрипт
+Просмотр()
+Выполнить()
+Добавить()
+Удалить()
+Редактировать()
+Фильтрация()
Администратор
приложения
Справочники
-Проекты
-Скрипты
-Серверы
-История
+Просмотр()
+Добавить()
+Удалить()
+Редактировать()
+Фильтрация()
Рисунок 6. Дерево функций
54
Главное меню обеспечивает пользователю доступ ко всем функциональным
возможностям программного продукта, в зависимости от наличия необходимых
разрешений. Схема меню управления отдельно взятым проектом представлена на
рисунке 7.
Главное меню можно разделить на несколько функциональных блоков,
которые визуально отделены друг от друга, что способствует концентрации
внимания пользователя на выполнении административных задач.
На рисунке 8 изображена страница управления проектом для
авторизованного пользователя, обладающего правами администрирования
выбранного проекта.
Основное меню управления проектом
Скрипты
Команды
Серверы
Проекты
История
Админка
Выход
Управление
Рисунок 7. Схема основного меню управления проектом
55
Рисунок 8. Основное меню управления проектом
Навигационная панель, расположенная сверху содержит следующие
элементы управления и справочную информацию:
1. SPOназвание программного продукта, а именно аббревиатура названия
отдела «Специализированного Программного Обеспечения»
2. Test Project – имя активного проекта в меню которого находится
пользователь. Также является ссылкой для возврата на страницу
управления данным проектом.
3. Проекты – ссылка на страницу выбора доступных проектов и добавления
новых, при наличии соответствующих разрешений.
4. История – ссылка на страницу истории выполнения команд и скриптов в
рамках выбранного проекта.
5. Админка – ссылка на вход в панель администрирования всего
приложения, которая отображается только у пользователей, имеющих на
это разрешения.
56
6. Hello, askornilovстандартное приветствие Django, отображающее имя
авторизованного пользователя.
Ниже навигационной панели располагаются элементы меню, которые
предназначены для выполнения функций администрирования серверов, входящих в
текущий проект. Рассмотрим их более подробно:
Командыданный блок представлен в виде бокового, раскрывающегося
меню, которое содержит список наиболее востребованных команд, используемых в
работе администратора. Схема раздела «Команды» представлена на рисунке 9.
Описание действий, выполняемых в данных пунктах меню:
Скрипты – команды управления скриптами, созданными пользователями
в разделе «Управление».
o Выполнить – выполняет выбранный скрипт на выбранных серверах
проекта
o Удалить – удаляет один или несколько выбранных скриптов из меню
управления проектом
Операционная система – команды управления ОС
o Выключить – выключает выбранные серверы
o Перезагрузить – перезагружает выбранные серверы
o Отключить SSH останавливает сервис sshd. Подобные действия
могут быть актуальны в случае обнаружения несанкционированных
подключений.
o Информация о системе – получение подробных данных о состоянии
системы, таких как использование процессора, памяти, дисков,
сетевых соединений, подключенных пользователей.
o Проверить обновления – проверяет доступные для установки
обновления.
o Обновить всё – установка всех доступных обновлений для
приложений, ядра и обновлений, касающихся безопасности.
57
Скрипты
Выполнить
Удалить
Операционная
система
Выключить
Перезагрузить
Отключить SSH
Проверить
обновления
Tomcat
Старт
Стоп
Рестарт
PostgresPro
Бэкап конфига
Старт
Стоп
Рестарт
Бэкап конфига
Старт
Стоп
Рестарт
Бэкап конфига
NGINX
Обновить
Обновить
Обновить
Информация о
системе
Команды
Обновить
конфигурацию
Обновить всё
Рисунок 9. Схема меню «Команды»
PostgresPro – команды управления СУБД PostgresPro
o Старт – запуск СУБД PostgresPro
o Стоп – остановка СУБД PostgresPro
o Рестарт – перезапуск СУБД PostgresPro
o Обновить конфигурацию – обновление конфигурации СУБД
PostgresPro без перезапуска
o Бэкап конфига – создание архивной копии конфигурационных файлов
СУБД PostgresPro
o Обновить – обновление версии СУБД PostgresPro до актуальной
NGINXкоманды управления кэширующим прокси-сервером nginx
o Старт – запуск сервера nginx
o Стоп – остановка сервера nginx
o Рестарт – перезапуск сервера nginx
58
o Бэкап конфига – создание архивной копии конфигурационных файлов
сервера nginx
o Обновить – обновление версии nginx до актуальной
Tomcat – команды управления сервером приложений Apache Tomcat
o Старт – запуск сервера Tomcat
o Стоп – остановка сервера Tomcat
o Рестарт – перезапуск сервера Tomcat
o Бэкап конфига – создание архивной копии файлов конфигурации
сервера Tomcat
o Обновить – обновление версии Tomcat до актуальной
Управление – раздел, который предоставляет пользователю возможность
наполнения справочников «Серверы» и «Скрипты». Именно в этом разделе меню
происходит выбор серверов, на которых будет выполняться определённая команда
или скрипт. Схема раздела «Управление» изображена на рисунке 10.
Раздел Управление для удобства визуально разделён на 2 части – Скрипты и
Серверы.
Подраздел Скрипты предназначен для добавления в проект Python и Bash
скриптов, которые выполняют более специфичные задачи, чем те, которые
представлены в меню Команды. Зачастую не все серверы настроены одинаково, на
них установлены разные версии приложений с различными путями к исполняемым
и журнальным файлам и соответственно одна и та же команда не всегда может
вернуть один и тот же результат в разных средах. Для решения этой проблемы
необходимо предоставить пользователям возможность самостоятельно создавать
скрипты, ориентированные на специфику конкретного проекта, так как
Одним из плюсов такого подхода является то, что непосредственно перед
выполнением, в уже существующий скрипт можно передать дополнительные
аргументы без внесения изменений в тело скрипта.
59
Скрипты
Добавить
Выбрать
Создать
Загрузить
Выбрать все
Снять выбор
Фильтр
Серверы
Добавить
Выбрать
Выбрать все
Снять выбор
Фильтр
Сервер
Скрипт
Редактировать
Выполнить
Скачать
Управление
Сохранить
Отмена
Удалить
Редактировать
Сохранить
Отмена
Удалить
Рисунок 10. Схема раздела «Управление»
В дальнейшем, по мере использования и тестирования возможен вариант
переноса удачных решений в меню Команды, которые доступны для всех проектов.
60
Описание действий, выполняемых в пунктах меню подраздела Скрипты:
Добавить – добавление скрипта в проект
o Создать – добавление программного кода в вэб-интерфейсе, задавая
имя файла и описание
o Загрузить – выбор локального файла скрипта с последующим
сохранением в системе
Выбрать – если необходимо выполнить более одного скрипта
o Выбрать все – активирует выбор всех скриптов, имеющихся в проекте
o Снять выбор – деактивирует выбор всех, ранее выбранных скриптов
Фильтр – поле ввода для поиска скриптов
Скрипт – блок представления уже добавленного в систему скрипта.
Представляет собой небольшую HTML форму в свёрнутом состоянии,
содержащую имя файла и действия, которые доступны пользователю.
o Редактировать – редактирование тела скрипта и его описания
- Сохранить – сохранение внесенных изменений
- Отмена – отмена изменений и возврат в основное меню
- Удалить – удаление скрипта
o Выполнить – выполнение выбранного скрипта на указанных серверах
o Скачать – скачивание скрипта на локальный компьютер
Подраздел Серверы необходим для редактирования списка серверов,
входящих в проект. Также из данного меню осуществляется выбор серверов, на
которых будут выполнены команды или скрипты.
Описание действий, выполняемых в пунктах меню подраздела Серверы:
Добавить – добавление сервера в проект
Выбрать – если необходимо выполнить более одного сервера
o Выбрать все – активирует выбор всех серверов, имеющихся в проекте
o Снять выбор – деактивирует выбор всех, ранее выбранных серверов
Фильтр – поле ввода для поиска серверов по имени
Сервер – блок представления уже добавленного в систему сервера.
Представляет собой небольшую HTML форму в свёрнутом состоянии,
содержащую имя сервера и ссылки на подробную информацию о нем.
o Редактировать – редактирование информации о сервере

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

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