Проектирование программного сервиса для мониторинга серверов банковской информационной системы
"Научный аспект №6-2024" - Информ. технологии
УДК 004.4
Кузнецов Алексей Константинович – студент института информационных технологий Российского технологического университета МИРЭА.
Рысин Михаил Леонидович – кандидат педагогических наук, доцент кафедры математического обеспечения и стандартизации информационных технологий Российского технологического университета МИРЭА.
Аннотация. В статье рассматриваются процесс разработки программного сервиса для мониторинга серверов банковской информационной системы. Приведен перечень функциональных требований. Описываются практические методы проектирования сервиса, в том числе его серверной и клиентской частей, базы данных Firebase, ролевой модели и UX. Обоснован выбор инструментов разработки – IDE Android Studio, языки Java и XML. Описаны результаты тестирования программного сервиса.
Ключевые слова: мониторинг серверов, проектирование информационной системы, путь пользователя, Java, Use Case.
Введение
С ростом использования мобильных приложений в компаниях, важно следить за состоянием серверов, на которых развернуты данные. Автоматизированные системы мониторинга помогут оперативно выявлять и устранять потенциальные проблемы, обеспечивая бесперебойную работу мобильных сервисов. Постоянное обновление и поддержка серверов позволят компаниям эффективно развивать свои онлайн-системы, а также обеспечат стабильную работу всей инфраструктуры.
Надежность и безотказность работы серверов являются критически важными вопросами для любой организации.
Развитие технологий и широкое использование мобильных устройств ведут к необходимости контроля и мониторинга серверов с помощью мобильных приложений.
Мобильное приложение для мониторинга состояния серверов предоставляет операторам сетей инструменты, необходимые для постоянного контроля и анализа работы серверов. Оно позволит оперативно отслеживать показатели нагрузки, доступности, скорости и производительности серверов в режиме реального времени.
Рассматриваемая нами программная система позволит автоматизировать ручной процесс, тем самым уменьшить негативные последствия, вызванные человеческим фактором и сохранять все полученные документы в базу данных и логировать все запросы, что, в свою очередь, позволит быстро понять на каком этапе произошла ошибка.
Анализ систем конкурентов
В настоящее время на рынке существует несколько конкурентов, предлагающих подобные мобильные приложения:
- Nagios: Одно из самых популярных приложений для мониторинга состояния серверов. Позволяет отслеживать различные параметры: CPU, память, сеть и т.д. Из недостатков – сложность установки и настройки, а также отсутствие интуитивного пользовательского интерфейса.
- Zabbix: Предоставляет широкий спектр функций для мониторинга серверов, включая сбор и анализ данных, алертинг и многое другое. Следует отметить сложность настройки и высокое потребление ресурсов.
- PRTG Network Monitor: Легкий в установке и использовании, PRTG предоставляет множество возможностей для мониторинга серверов и сетевых устройств. Однако, его минусами являются ограничения бесплатной версии и высокая стоимость платных планов.
Таким образом, на рынке не существует системы, которая подходит для нашей банковской системы, что означает необходимость в её разработке.
Требования к системе
Компании необходима система, которая будет соответствовать следующим пунктам:
- Простота интеграции;
- Возможность развёртывания системы на своих серверах;
- Возможность создания собственных модулей.
Исходя из требований компании, целесообразно будет разработать ПС мониторинга серверов, которая подходит к данным требованиям.
Данная ПС будет является мобильным приложением, которое можно будет использовать при подключении к серверам компании.
Для того чтобы понять, что сотрудники компании ждут от системы, была построена Use Case диаграмма [1], отражающая варианты использования системы, для удобной работы (рис. 1).
Рис. 1. Диаграмма вариантов использования
Из диаграммы понятно, что сотрудники хотят видеть в системе:
- Создание нового пользователя;
- Возможность удаления пользователя;
- Возможность заменить логин и пароль;
- Получение информации о запросах пользователей;
- Получение информации о состоянии серверов;
- Возможность добавления нового сервера;
- Возможность получения статистики о сервере.
Далее, чтобы понять какие функции необходимы системе для реализации потребностей сотрудников, стоит построить дерево функций (рис. 2) [2].
Рис.2. Дерево функций программного сервиса
Построенные диаграммы наглядно демонстрируют работу системы.
Требования к функциональным характеристикам. «ПС мониторинга серверов» должна иметь следующие возможности:
- Позволять пользователям авторизовываться с использованием уникального идентификатора и пароля.
- Отображение списка серверов банковской информационной системы;
- Отображение текущего состояния каждого сервера (работает, не работает, не отвечает и т.д.);
- Предоставление возможности фильтрации серверов (по названию, статусу и т.д.);
- Обновление состояния серверов в режиме реального времени.
- Предоставление уведомлений о сбоях или проблемах на серверах в виде push-уведомлений на мобильное устройство пользователя;
- Возможность настройки уведомлений (включить/выключить, выбрать вид уведомлений и т.д.).
Входные данные:
- Состояние серверов
- Настройки системы
- Данные пользователя
Выходные данные:
- Уведомления о проблемных серверах
- Информация о состоянии серверов
Требования к надежности предусматривают, что система должна бесперебойно отдавать и принимать данные исключая потерю информации и исключить возможность удаления данных непосредственно из интерфейса системы.
Инструменты для разработки и обоснования их выбора
Взаимодействие с программной системой происходит через мобильный интерфейс. Программная система, в виде клиент серверного приложения, расположена на сервере компании. Для хранения информации, полученной в процессе, к серверной части приложения подключена база данных.
Все инструменты для разработки выбираются таким образом, чтобы системный администратор, временно выполняющий роль разработчика, смог, в случае ошибки или незначительного дополнения функционала, быстро всё исправить или реализовать.
- Язык разметки пользовательского интерфейса – XML. XML является удобным форматом для описания структуры и содержимого пользовательского интерфейса.
- Фреймворк пользовательского интерфейса – Android Studio. Является официальной IDE для разработки приложений под платформу Android, что обеспечивает поддержку всех необходимых инструментов и возможностей для создания удобного и качественного пользовательского интерфейса.
- Язык программирования серверной части – Java. Java широко используется для разработки серверных приложений благодаря своей надёжности, масштабируемости и удобству в использовании.
- СУБД для хранения информации о серверах и их состоянии – Firebase. Информация о серверах и их состоянии может быть хранена на облачных серверах Firebase, платформа предоставляет также возможность анализа данных.
Учитывая функционал системы и данные, получаемые в процессе работы программной системы, была спроектирована логическая модель базы данных (рис. 3).
Ролевая модель
Права доступа и роли в системе предоставлены в табл1. Здесь Ч – чтение, М – модификация (изменение), С – создание, У – удаление.
Таким образом, полный доступ ко всему функционалу будет иметь только глава отдела, что даёт системе большую безопасность [3].
Путь пользователя программного сервиса представлен на рис. 4.
Таблица 1. Роли и права доступа системы
Субъекты доступа |
Объекты доступа (Access objects) |
|||
Логин и пароль |
Расширение списка серверов |
Информация о запросах |
Получение состояния сервера |
|
Глава отдела |
Ч,М,С,У |
Ч,М,С,У |
Ч |
Ч |
Пользователь |
Ч |
Ч,М,С,У |
Ч |
Рис.3. Логическая модель базы данных
Рис.4. Путь пользователя
- Пользователь проходит процедуру авторизации в приложении или на веб-сайте, вводя логин и пароль.
- После успешной авторизации пользователь попадает на страницу со списком доступных серверов, где может выбрать интересующий его сервер.
- Далее пользователь может перейти на страницу настройки уведомлений, где может выбрать тип уведомлений и их частоту в зависимости от своих предпочтений.
- Пользователь может просмотреть подробную информацию о выбранном сервере, такую как статус, количество пользователей, технические характеристики и т.д.
- После этого пользователь может открыть страницу с аналитикой сервера, где доступна информация о активности на сервере, статистика использования ресурсов и прочие данные.
- Пользователь также может просмотреть историю сервера, где отображается информация о предыдущих событиях, изменениях и улучшениях.
- Наконец, пользователь может настроить отображение информации о сервере согласно своим предпочтениям, выбрав нужные параметры и настройки.
Тестирование системы
Метод чёрного ящика, используемый в тестировании ПС для мониторинга состояния серверов, был выполнен следующим образом:
- Определение функциональных требований: в начале тестирования были определены ключевые функциональные требования к мобильному приложению, такие как отображение информации о состоянии серверов, нагрузке и доступности.
- Разработка тест-кейсов: на основе функциональных требований были разработаны тест-кейсы для проверки работы приложения в различных сценариях использования.
- Испытание функциональности приложения: с помощью метода чёрного ящика были проведены тесты на работоспособность функций приложения, корректность отображения информации и взаимодействие с серверами.
- Проверка внешнего вида и удобства использования: также было проведено тестирование пользовательского интерфейса приложения, проверка удобства навигации и взаимодействия с приложением.
- Оценка результатов тестирования: после проведения всех тестов были собраны результаты, выявленные ошибки и недочеты, которые требуют исправления для улучшения качества приложения.
Тестирование помогло выявить и исправить возможные проблемы и обеспечить стабильную работу приложения при мониторинге состояния серверов.
Заключение
Мобильные приложения для мониторинга серверов становятся все более востребованными в современном информационном обществе [4]. Они обеспечивают оперативный контроль и отслеживание состояния серверов, что помогает предотвращать проблемы и сбои в их работе. Автоматизированные системы мониторинга позволяют оперативно выявлять и устранять потенциальные проблемы, обеспечивая бесперебойную работу мобильных сервисов. Это важно для компаний, особенно тех, которые зависят от стабильной работы серверов для обеспечения своих онлайн-систем.
Подобные решения становятся неотъемлемой частью работы администраторов сетей, предоставляя им необходимые инструменты для эффективного контроля и анализа работы серверов в режиме реального времени. Внедрение таких приложений позволяет повысить надежность и безотказность работы серверов, что является критически важным для любой организации в современном цифровом мире.
Итак, нами описаны практические аспекты проектирования программного сервиса мониторинга серверов банковской информационной системы, позволяющий отслеживать состояние серверов, их нагрузку, доступность и работоспособность.
Описанный программный сервис мониторинга серверов банковской информационной системы является эффективным инструментом для повышения работоспособности системных администраторов. Постоянное мониторинг состояния серверов позволяет оперативно реагировать на возникающие проблемы и предотвращать потенциальные сбои в работе системы.
Список литературы
- Хамидуллин Р.Р. Программное обеспечение мониторинга серверов банковской информационной системы // Актуальные проблемы информационных технологий: сб. науч. тр. – Уфа: Изд-во БашГУ, 2020. – С. 45-58.
- Суворов А.И., Матвеев Д.Ю. Методы и средства мониторинга серверов банковской информационной системы // Информационные технологии в банковском деле. – М.: КНОРУС, 2018. – 120 с.
- Рубцов В.С. Оптимизация программного мониторинга серверов банковской информационной системы // Журнал банковских информационных технологий. – 2019. – № 3. – С. 33-41.
- Ткаченко Н.П. Мониторинг и диагностика серверов в банковской информационной системе // Банковское дело. – 2017. – № 5. – С. 64-71.
- Осипов А.М. Создание системы мониторинга серверов для банковской информационной системы // Информационные технологии и банковское дело. – СПб: Питер, 2016. – 180 с.