Научная статья на тему 'Проектирование, разработка и внедрение комплексной автоматизированной системы управления автохозяйством'

Проектирование, разработка и внедрение комплексной автоматизированной системы управления автохозяйством Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
212
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОМПЛЕКСНАЯ АВТОМАТИЗИРОВАННАЯ СИСТЕМА / АВТОХОЗЯЙСТВО / АРХИТЕКТУРА MVC / СУБД MYSQL / PHP / COMPLEX AUTOMATED SYSTEM / CAR FLEET MANAGEMENT / MVC ARCHITECTURE / MYSQL

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Гарбузов П. А., Гашин Р. А.

В работе описан процесс проектирования, разработки и внедрения комплексной автоматизированной системы управления автохозяйством организации на территории Республики Коми. Обсуждены некоторые проблемы, с которыми встретились разработчики, и пути их решения.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Гарбузов П. А., Гашин Р. А.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DESIGN, DEVELOPMENT AND IMPLEMENTATION OF COMPLEX AUTOMATED CAR FLEET MANAGEMENT SYSTEM

The process of design, development and implementation of complex automated car fleet management system is described. Some problems encountered by the developers and ways to solve them were discussed.

Текст научной работы на тему «Проектирование, разработка и внедрение комплексной автоматизированной системы управления автохозяйством»

ИНФОРМАТИКА

Вестник Сыктывкарского университета. Серия 1: Математика. Механика. Информатика. Выпуск 3 (32). 2019

УДК 004.42

ПРОЕКТИРОВАНИЕ, РАЗРАБОТКА И ВНЕДРЕНИЕ КОМПЛЕКСНОЙ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ УПРАВЛЕНИЯ АВТОХОЗЯЙСТВОМ П. А. Гарбузов, Р. А. Гашин

В работе описан процесс проектирования, разработки и внедрения комплексной автоматизированной системы управления автохозяйством организации на территории Республики Коми. Обсуждены некоторые проблемы, с которыми встретились разработчики, и пути их решения.

Ключевые слова: комплексная автоматизированная система, автохозяйство, архитектура MVC, СУБД MySQL, PHP.

Введение

Одним из путей улучшения бизнес-процессов управления транспортом в государственных организациях, особенно с учетом территориально разбросанных структурных подразделений министерств, является разработка и внедрение информационных систем управления автохозяйством и дальнейшая их модификация до интеллектуальных транспортных систем.

© Гарбузов П. А., Гашин Р. А., 2019.

Существует достаточно много подобных зарубежных решений, в том числе и для известных ЕИР-систем. Однако они недостаточно реализуют российскую специфику, являются дорогими, и их использование не является хорошим решением с точки зрения проблемы обеспечения независимости государственных ведомств от иностранных программных продуктов. Из отечественных разработок, которые позволяют обеспечивать высокую надежность работы, высокое быстродействие при работе по сети, обеспечивать сохранность данных, вести логирова-ние, можно выделить «1С: Предприятие 8. Управление Автотранспортом» [1], информационную систему «Управление автотранспортом» от компании БЖЕ [2], информационную систему «Автобаза» [3] и некоторые другие. Существуют решения по управлению транспортом и курьерской доставкой [4], решения по автоматизации контроля за перемещением транспортных средств и дистанционному контролю состояния на основе использования различных датчиков. Однако эти предложения также либо достаточно дороги, либо обладают лишним функционалом, либо не учитывают специфику территориального распределения структурных подразделений организации и конкретные требования (например, по учету дорожно-транспортных происшествий с участием автотранспорта организации).

В январе 2019 года перед информационным центром МВД по Республике Коми была поставлена задача по автоматизации повседневной деятельности автохозяйства МВД по Республике Коми. В феврале заказчиком было составлено техническое задание с отражением ряда задач, которые должна решить проектируемая информационная система:

1) круглосуточный и бесперебойный доступ к сведениям, обрабатываемым программным обеспечением;

2) использование свободно распространяемого или лицензионного программного обеспечения, закупленного организацией в рамках действующих контрактов, для уменьшения расходов по разработке программного комплекса;

3) минимальные системные требования автоматизированного рабочего места сотрудника для организации взаимодействия с программным комплексом.

Проектирование, разработка и внедрение информационной системы

Разработка информационной системы осуществлялась в формате клиент-серверного web-приложения. В качестве серверной части выступает операционная система семейства UNIX Ubuntu с web-сервером Apache 2, системой управления базами данных MySQL и препроцессором гипертекста PHP 7.2.

На автоматизированном рабочем месте сотрудника предполагается наличие стандартного набора программного обеспечения: web-браузер с поддержкой JavaScript, Microsoft Office и любой редактор PDF-документов.

Программный комплекс представляет собой web-ресурс, спроектированный на основе архитектуры разделения данных MVC (Model-ViewController, Модель-Представление-Контроллер). Подобная архитектура информационной системы позволяет разделить ее функционал на три компонента: отображение информации пользователю (View); реакция

на действия пользователя и обработка данных, введенных пользователем (Controller); взаимодействие с базой данных (Model) [5]. Такой подход позволяет равномерно распределить нагрузку между пользовательской и серверной частью. Основная вычислительная нагрузка и организация взаимодействия с базой данных возложены на серверную часть, пользовательская часть выступает только в роли отображения полученной информации и передачи серверу действий пользователя, например нажатие на кнопку. Схема MVC изображена на рис. 1.

Рис. 1. Схема MVC (Model-View-Controller)

Автоматизированная информационная система (АИС) разрабатывалась в качестве отдельных взаимосвязанных модулей. Причем нарушение работоспособности одного из модулей не приводит к выводу из строя всей системы. Всего в программном комплексе заложено свыше 20 модулей, основные из которых - это «Транспортные средства»,

«Водители», «Экзамены / зачеты», «Ремонт», «Дорожно-транспортные происшествия», «Склад», «Архив», что показано на рис. 2.

Рис. 2. Модульность АИС «Автохозяйство»

В процессе проектирования и разработки информационной системы возникли определенные специфичные проблемные моменты, которые требовали детального изучения и применения нестандартных методов решения. В рамках данной работы остановимся лишь на некоторых из

них.

Так как в информационной системе предусмотрена возможность прикрепления изображений объектов учета, возникает потребность их хранения, обработки и отображения пользователю. Современные фотографии могут иметь достаточно большой объем, достигающий нескольких десятков мегабайт. Соответственно, при активном использовании информационной системы объем данных, занимаемых изображениями, будет расти значительными темпами. Решение — организовать хране-

ние изображений в виде файловой структуры на сервере, а не в виде бинарных данных, хранимых в базе данных. Это позволяет уменьшить нагрузку на систему управления базами данных (СУБД) и не тратить лишние ресурсы на перекодировку бинарных данных. Однако это влечет необходимость решения проблемы организации доступа к данным, находящимся на сервере. Проблема решается путем настройки прав доступа к директориям, в которых будут храниться изображения.

Для уменьшения размеров загружаемых изображений был разработан модуль, который производит уменьшение качества изображения, а также масштабирование фотографии, сохраняя при этом пропорции. Перечисленные действия с файлами осуществлены с использованием функций языка PHP imagecreatefromjpeg, imagecreatetruecolor, imagecopyresampled и imagejpeg.

Для отображения изображения пользователю используется способ перекодирования файла в формат base64 с указанием mime-типа. В итоге фотография преобразуется в строку следующего типа: <img src=«data:im,age/jpg;base64,(base64_form,at}»>. Данный подход используется для передачи бинарных данных с помощью текстового формата. Браузер благодаря mime-типу определит, что данный элемент является фотографией, и отобразит содержимое пользователю.

Другая проблема, возникшая при проектировании системы, заключалась в переводе в архив неактуальных записей. Например, если к транспортному средству будет прикреплено несколько полисов ОСА-ГО, то система должна в автоматическом режиме определить актуальный полис, а остальные перевести в архив. На первый взгляд, данную

проблему можно решить путем написания триггера к таблице полисов ОСАГО, который срабатывает на действия INSERT и UPDATE. В триггере необходимо найти все полисы ОСАГО, которые присоединены к транспортному средству, определить по дате выдачи полиса самый новый, проставить ему флаг актуальности, а остальные записи следует перевести в архив. Но при таком подходе возникает одна особенность СУБД — запрет на мутацию данных в триггере. То есть в триггере запрещено изменять состояние других строк таблицы, так как это вызовет мутацию данных, а соответственно, приведет в действие триггер и произойдет бесконечный вызов одного и того же триггера.

Путь решения данной проблемы заключается в создании хранимой процедуры в СУБД, которая будет вызываться после завершения изменения данных в строке таблицы. После выполнения процедуры сохранения (операции INSERT или UPDATE) срабатывает метод CALL вызова хранимой процедуры с передачей двух параметров: уникального идентификатора транспортного средства и номера операции. В хранимой процедуре используется номер операции для того, чтобы унифицировать процедуру, то есть в зависимости от кода операции будут произведены действия по перемещению в архив над той или иной подсистемой.

Такой подход позволяет обойти запрет на мутацию данных в триггерах и обеспечить перевод в архив неактуальных записей и выявление одной актуальной записи. Также использование хранимой процедуры позволяет произвести несколько операций UPDATE за одну транзакцию к базе данных.

Еще одним важным аспектом разработки и дальнейшей эксплуата-

ции информационной системы является организация резервного копирования данных. Резервная копия базы данных создается ежедневно с помощью утилиты mysqldump. Также ежедневно осуществляется копирование файлов исходного кода web-ресурса. Непосредственно на самом сервере хранится несколько резервных копий, что обеспечивает откат к состоянию web-ресурса на несколько дней назад. Помимо этого, ежедневно производится резервное копирование на запасной сервер.

Возможности АИС «Автохозяйство»

На сегодняшний день АИС управления автохозяйством МВД по Республике Коми обладает достаточно развитым функционалом, в частности:

1) ввод и корректировка текстовых данных;

2) формирование отчетности и выгрузка ее в формате Excel или PDF;

3) загрузка электронных образов документов в формате PDF;

4) загрузка изображений объектов учета в формате PNG, JPEG, TIFF;

5) разграничение прав доступа пользователей в зависимости от необходимого уровня полномочий;

6) логирование действий пользователя в процессе взаимодействия с информационной системой;

7) информирование пользователей об истекающих водительских удостоверениях, полисах ОСАГО и технических осмотров транспортных средств.

Одним из основных достоинств является формирование различных отчетов и сверок. При этом учет и генерация отчетности происходит по различным разрезам по информации обо всем в республиканском ав-

тотранспортном парке. В будущем планируется разработать отдельный модуль, который будет включать в себя возможность формирования отчета любой сложности по запросу пользователя и выгрузки полученных данных в формат PDF или Microsoft Office Excel, для чего могут быть применены разработки, описанные в работе [6].

В целом АИС «Автохозяйство МВД по РК» должна полностью обеспечить необходимым функционалом повседневную автотранспортную деятельность МВД по Республике Коми.

Информационная безопасность

Информационная безопасность АИС реализуется с помощью организационных и технических мероприятий.

К организационным аспектам безопасности относятся ведомственный приказ о вводе в эксплуатацию разработанной системы, в котором закреплена персональная ответственность сотрудников, допущенных к работе с информационной системой, за искажение, повреждение и предоставление недостоверных данных, а также за разглашение сведений третьим лицам, не допущенным к работе в информационной системе. Наряду с приказом о вводе в эксплуатацию у сотрудников, которые взаимодействуют с информационной системой, внесены соответствующие изменения в должностные инструкции.

Для обеспечения технической безопасности серверов, на которых эксплуатируется описываемая система, используется шифрование с помощью программно-аппаратного комплекса VipNet. Серверы находятся в защищенном сегменте, доступ к которому возможен только при наличии у пользователя ключевой информации программного обеспечения

VipNet Client.

Наряду с этим на серверах информационной системы реализована настройка межсетевых экранов. Применена политика ограничения доступа к серверу по всем сетевым портам и IP-адресам с открытием только необходимых портов и доступом только разрешенных пулов IP-адресов.

Доступ к базе данных MySQL организован только по внутреннему сетевому интерфейсу с использованием пользовательской учетной записи, имеющей только необходимый уровень доступа к базе данных.

Для обеспечения контроля доступа к сведениям, содержащимся в базе данных, при каждом обращении пользователя к web-странице или выполнении запроса в базу данных осуществляется проверка учетной записи по двум критериям: авторизован ли пользователь в системе и проверка уровня прав доступа к запрашиваемым сведениям.

Данный комплекс организационных и технических мероприятий позволил создать защищенную АИС, удовлетворяющую предъявляемым требованиям информационной безопасности.

Пользовательские интерфейсы

Для создания пользовательских интерфейсов использовалась библиотека bootstrap 4.1, которая позволяет создать адаптивные шаблоны, способные корректно отображаться на различных устройствах, в том числе мобильных. При разработке интерфейсов были учтены возможности человеческого восприятия, поэтому для уменьшения нагрузки на глаза сотрудников используются текстовые шрифты размеров от 15 до 18 пикселей, а основной фон представляет собой светло-серую подлож-

ку (см. рис. 3, 4).

Рис. 3. Интерфейс ввода данных о транспортном средстве

ЛУГ.'Ш - ЙМШПГ ■ СМ^ЦвОЯЙ учг! - ДШ •■ ЙИГЖ1М Мяма( мвдпо?« •

Информации о водителе

1. ОБЩИЕ СШ.ДЕН1ЛЯ 0 ВОДИТЕЛЕ

* :

Э. ВЙДиИлиЖК ч.-.- ■ *'

УДОСТОВЕРЕНИИ

■ ■Д111Ш1Х 1ЛОГ1ИП1ЯИ«

Рис. 4. Интерфейс ввода данных о водителе

Для облегчения взаимодействия пользователей с АИС и уменьшения влияния человеческого фактора на целостность данных в системе

используется большое количество полей с возможностью выбора справочных значений. Добавлять и изменять справочные значения может только зарегистрированный пользователь с уровнем прав доступа Администратор.

Ввод в эксплуатацию

Ввод в эксплуатацию АИС был осуществлен в два этапа: опытная эксплуатация на базе одного территориального органа и промышленная эксплуатация на территории всей Республики Коми.

На первом этапе сотрудники автохозяйства осуществили тестирование основных модулей программного комплекса. В результате завершения первого этапа внедрения в информационную систему были внесены существенные доработки: увеличено количество текстовых полей ввода, разработаны три новых модуля, произведен пересмотр уровня прав доступа пользователей разных категорий.

Второй этап включал в себя полноценное использование всех компонентов информационной системы сотрудниками территориальных органов по всей Республике Коми. В процессе второго этапа в информационную систему были внесены незначительные корректировки, касающиеся повышения эффективности работоспособности комплекса при рабочей нагрузке и отладки механизмов доступа.

Заключение

На сегодняшний день АИС управления автохозяйством функционирует в полном объеме и обрабатывает свыше двух тысяч объектов учета (не считая связанные объекты дополнительных подсистем), состоящих

на балансе организации. На данном этапе разработка информационной системы окончательно не завершена и в соответствии с требованиями заказчика в программный продукт вносятся изменения и доработки, повышающие эффективность ее использования.

Список литературы

1. 1С:Предприятие 8. Управление Автотранспортом. https: / / rarus.ru /1 c-transport /1 c8-avtotransport-standart / обращения: 11.11.2019).

2. Управление автотранспортом | Компания SIKE. http://autopark.sike.ru/Бюро спецпроектов «Борника» обращения: 11.11.2019).

3. Программа «Автобаза» — эффективное и экономичное решение для автопредприятий. URL: http://www.bornica.ru/autobase/ (дата обращения: 11.11.2019).

4. Управление транспортом (TMS) и курьерской доставкой | AllianceSoft. URL: https://asoft.by/resheniya/upravlenie-transportom-tms-i-kurerskoy-dostavkoy (дата обращения: 11.11.2019).

5. Сейдаметов Г. С., Ибраимов Р. И. Аналитический обзор шаблона MVC // Информационно-компьютерные технологии в экономике, образовании и социальной сфере. 2018. № 3 (21). С. 45-51.

URL:

(дата

URL:

(дата

6. Белых Е. А., Гольчевский Ю. В. Подход к проектированию языка подстановок для генерации электронных документов, содержащих сложные таблицы // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. 2019. Т. 29. Вып. 3. С. 422-437. DOI: 10.20537/vm190311.

Summary

Garbuzov P. A., Gashin R. A. Design, development and implementation of complex automated car fleet management system

The process of design, development and implementation of complex automated car fleet management system is described. Some problems encountered by the developers and ways to solve them were discussed. Keywords: complex automated system, car fleet management, MVC architecture, MySQL, PHP.

References

1. 1C: Predpriyatiye 8. Upravleniye Avtotransportom (1C: Enterprise 8. Car Fleet Management), URL: https://rarus.ru/1c-transport/1c8-avtotransport-standart/ (date of the application: 11.11.2019).

2. Upravleniye avtotransportom ¡ Kompaniya SIKE (Car Fleet Management | SIKE company), URL: http://autopark.sike.ru/ Bureau of special projects «Bornika» (date of the application: 11.11.2019).

3. Programma «Avtobaza» - effektivnoye i ekonomichnoye resheniye dlya avtopredpriyatiy (The «Automobile depot» - an effective and

economical solution for automobile enterprises), URL: http:// www.bornica.ru/autobase/ (date of the application: 11.11.2019).

4. Upravleniye transportom (TMS) i kur'yerskoy dostavkoy ¡ AHianceSoft (Transport Management (TMS) and courier delivery | AllianceSoft), URL: https://asoft.by/resheniya/upravlenie-transportom-tms-i-kurerskoy-dostavkoy (date of the application: 11.11.2019).

5. Seydametov G. S., Ibraimov R. I. Analiticheskiy obzor shablona MVC (Analytical review of the MVC template), Informatsionno-komp'yuternyye tekhnologii v ekonomike, obrazovanii i sotsial'noy sfere, 2018, No. 3 (21), pp. 45-51.

6. Belykh E. A., Golchevskiy Yu. V. Podkhod k proyektirovaniyu yazyka podstanovok dlya generatsii elektronnykh dokumentov, soder-zhashchikh slozhnyye tablitsy (An approach to designing a substitution language for generating electronic documents containing complex tables), Vestnik Udmurtskogo universiteta. Matematika. Mekhanika. Komp'yuternyye nauki, 2019, vol. 29, issue 3, pp. 422-437. DOI: 10.20537 / vm190311.

Для цитирования: Гарбузов П. А., Гашин Р. А. Проектирование, разработка и внедрение комплексной автоматизированной системы управления автохозяйством // Вестник Сыктывкарского университета. Сер. 1: Математика. Механика. Информатика. 2019. Вып. 3 (32). C. 46-61.

For citation: Garbuzov P. A., Gashin R. A. Design, development and implementation of complex automated car fleet management system, Bulletin of Syktyvkar University. Series 1: Mathematics. Mechanics. Informatics, 2019, 3 (32), pp. 46-61.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

СГУ им. Питирима Сорокина

ИЦ МВД по РК Поступила 10.12.2019

i Надоели баннеры? Вы всегда можете отключить рекламу.