Россия
В данной статье исследуются проблемы при ведении деятельности комиссии третьей ступени контроля охраны труда МУП АГО «Ангарский Водоканал»
промышленная безопасность, экологическая безопасность, охрана труда, санитарные условия труда, программирование
В экономике Российской Федерации Ангарский городской округ позиционируется как промышленное административное-территориальное образование со статусом городского округа, с большим количеством населения. В состав территории АГО входят муниципальные образования, объединяющие 10 населенных пунктов, поддержанием ресурсами жизнеобеспечения города и поселков занимается МУП АГО «Ангарский Водоканал» (АВК).
Водоканал является важным предприятием в любом населенном пункте, именно от него зависит водоснабжение населения, на предприятии существуют службы, направленные на производственную деятельность по обеспечению населения ресурсами воды и водоотведения хозфекальных стоков. Также существуют множество других подразделений, которые обеспечивают деятельность предприятия. Чтобы процесс ведения профессиональной деятельности был максимально безопасным, на предприятии для решения таких задач организовано подразделение «Отдел охраны труда» (ООТ), находящийся в ведомстве главного инженера. ООТ разрабатывает мероприятия, направленные на обеспечение безопасных условий ведения деятельности всего предприятия. Современные реалии диктуют новые способы управления, в приоритете становится такие качества как мобильность, доступность и снижение документооборота между сотрудниками предприятия (в связи с распространением новой коронавирусной инфекции – COVID-19).
Также важны способы организации обратной связи с руководством подразделений и сотрудниками предприятия.
Учитывая революционные достижения в сфере информационных и интернет-технологий, весьма перспективным и актуальным видится виртуализация коммуникаций внутри предприятия путем трансфера общения в телекоммуникационную ИТ-сферу. К сожалению, текущее положение вещей относительно коммуникаций среди сотрудников оставляет желать лучшего. Сложилась такая ситуация, что предприятие на сегодняшний день не имеет средств для ведения деятельности ООТ АВК, специалисты отдела занимаются исследованием подразделений предприятия на предмет нарушений требований безопасности охраны труда и санитарных условий. Для этого создана комиссия 3 ступени по охране труда АВК, которая исследует подразделение на предмет нарушений ведения профессиональной деятельности, секретарь комиссии составляет акт-предписание, затем его необходимо согласовать с членами комиссии 3 ступени АВК, уведомить о нарушениях руководителя подразделения, а также назначить ответственных за устранение замечаний по акту-предписанию и отчитаться в ООТ о проделанной работе.
Сегодня деятельность комиссии 3 ступени АВК реализована исключительно ведением бумажного документооборота, секретарь комиссии заполняет акт-предписание с использованием средств Microsoft Word, согласовывает акт со всеми членами комиссии, получает подписи в акте, и лично занимается транспортировкой данного акта по подразделениям. Все это затягивает и осложняет деятельность работы ООТ. Учитывая потребности в информатизации системы управления для эффективной работы ООТ АВК, актуальной и интересной задачей видится реализация проекта веб-приложения для АВК, автоматизация деятельности комиссии 3 ступени в информационную систему ООТ. Отделу больше не придется заниматься ведением бумажного документооборота между сотрудниками предприятия, минимизировав среди них заражение новой коронавирусной инфекцией COVID – 19, а также ООТ с помощью веб-приложения сможет отслеживать исполнение акта-предписания в информационном пространстве.
Целью работы является разработка веб-приложения для АВК.
Для достижения цели были сформулированы следующие задачи:
- выполнить анализ предметной области и задач информатизации;
- разработать информационную модель процесса;
- определить требования к функциям ИАС;
- спроектировать и реализовать сервер системы, протоколы и механизм сетевого взаимодействия;
- спроектировать и реализовать клиентскую часть системы и UI;
- дополнить проект документацией, инструкцией по эксплуатации веб-приложения;
- провести тестирование веб-приложения;
- опубликовать веб-приложение в сети Интернет.
Предметом исследования является проектирование переносной кроссплатформенной библиотеки классов, разработка серверной части, и интерфейса на платформе ASP.NET Core MVC.
Практическая значимость результата научно-исследовательской работы: разработанное веб-приложение будет внедрено в процесс управления АВК для эффективного взаимодействия ООТ с членами комиссии, руководителями различных подразделений, сотрудниками предприятия. В качестве практической ценности результатов предполагается выделить такие качества как оперативность, доступность, охват управления.
Анализ производственных и управленческих функций показал, что ООТ АВК сталкивается со следующими производственными задачами:
- составление акта-предписания;
- согласование акта-предписания;
- транспортировка акта-предписания начальникам подразделений;
- по итогам мероприятий, направленных на решение задач по проверке состояния условий охраны труда, промышленной и экологической безопасности, промышленной санитарии в подразделениях, отчитаться о проделанной работе председателю комиссии 3 ступени АВК.
Разрабатываемое приложение для АВК должно удовлетворять следующим функциональным требованиям:
- система должна решать задачи ООТ по мониторингу безопасности и санитарных условий труда в информационном пространстве;
- система должна решать задачи оперативного уведомления с помощью E-mail о работе ООТ, членам комиссии 3 ступени АВК, начальникам различных подразделений;
- система должна обеспечивать авторизированный доступ к функционалу веб-приложения;
- веб-приложение должно функционировать на компьютерах, подключенных к локальной сети Предприятия и сети Интернет.
На основании требований к функциям системы, она должна отвечать требованиям:
- веб-приложение должно быть разработано под наиболее удачные и востребованные на сегодняшний день платформы ASP.NET Core MVC;
- язык программирования должен быть популярным, чтобы обеспечить развитие проекта командой разработчиков;
- программное обеспечение должно поддерживать современные формы организации интерфейсов, таких как: графический интерфейс, пользовательский интерфейс;
- веб-приложение должно иметь возможность работы с локальными базами данных;
- для разработки программного обеспечения должны быть использованы среды разработки, поддерживающие редактирование кода, его отладку и поддержку командной работы.
Для проектирования веб-приложения был использован язык графического описания для объектного моделирования UML (рисунок 1).
Изображенная структурная схема веб-приложения состоит из:
фронтэнда (англ. Front-end), который реализован клиентской частью и представлен интерфейсом пользователя, работающего на фреймворках под ОС. В соответствие с шаблоном проектирования, данные представлены в модели данных и отображаются при помощи модели представления. Также имеется бизнес логика — это алгоритмы, которые позволяют обрабатывать поведение пользователя и ввод данных пользователя. Важным компонентом на схеме является клиентское сетевое API — это программный интерфейс, который помогает взаимодействовать по сети с бэкэндом.
бэкэнда (англ. Back-end) — это сервер, работающий по технологии ASP.NET. Содержит свой сетевой API, обрабатывающий запросы и бизнес логику, которая по запросам реализует операции в БД. В качестве управления базой данных используется клиент-серверная высокопроизводительная СУБД. Работает она под системой виртуализации.
Алгоритм работы сервера. Выбор архитектуры считается основным компонентом при разработке веб-приложения. В разрабатываемом веб-приложении для АВК будет использоваться клиент-серверная архитектура. Суть данной архитектуры заключается в том, что программа разделяется на две части: серверную, хранящую в себе какие-либо данные, и клиентскую, которая обращается к серверу за предоставляемыми сервисами. Обычно клиенты и серверы выполняются на разном оборудовании, обмениваясь при этом данными посредством компьютерной сети. Сервер предоставляет ресурсы, которыми могут воспользоваться клиенты. Клиенты не предоставляют никакие ресурсы, а лишь запрашивают ресурсы сервера.
Рисунок 1 – Структурная схема для объектного моделирования
Архитектура разрабатываемого веб-приложения АВК представлена на рисунке 2.
Рисунок 2 – Клиент-серверная архитектура
Алгоритм сервера представляет собой цикл, прослушивающий очередь входящих подключений. При подключении клиент передаёт серверу запрос по HTTP и ожидает ответ. В момент поступления запроса сервер последовательно проверяет его соответствие одному из критериев запросов.
При соответствии запроса происходит извлечение соответствующей информации из базы данных сервера, сериализация и передача клиенту. После этого цикл начинается заново.
Алгоритм работы клиента. При запуске веб-приложения происходит авторизация пользователя путем отправки запроса на сервер и получения результата об успешной авторизации, в случае неуспешной авторизации произойдет ошибка, и цикл повторится. Затем пользователю предоставляется меню для выбора одного из вариантов. После выбора отправляется запрос. При получении ответа приложение выводит на экран информацию по запросу пользователя. Это при условии, что устройство подключено к интернету.
Если же нет, то после того, как данные извлечены, происходит кэширование данных, и таким образом веб-приложение будет работать без подключения к сети.
Разработка веб-приложения. Разработка веб-приложения осуществлялась по технологии ASP.NET Core в интегрированной среде разработки Visual Studio 2022 с использованием Entity Framework Core, который представляет специальную объектно-ориентированную технологию на базе фреймворка NET для работы с данными. Диаграмма и структура базы данных изображены на рисунках 3 и 4.
На сегодняшний день NET Core по умолчанию не предоставляет готового функционала для работы с протоколом SMTP, поэтому нам надо использовать сторонние решения, например, MailKit, для установки необходимо добавить его в проект через NuGet. Также нам понадобится установить библиотеку Rotativa, для генерации отчетов, актов в формате PDF.
База данных. MsSQL является решением для малых, средних и больших приложений. Обычно MsSQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MsSQL в автономные программы.
Гибкость СУБД MsSQL обеспечивается поддержкой большого количества типов таблиц. Более того, СУБД MsSQL поставляется со специальным типом таблиц, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MsSQL постоянно появляются новые типы таблиц.
Основные преимущества MsSQL:
- производительность в задачах;
- низкие совокупные затраты;
- простота внедрения;
- поддержка MsSQL присутствует на большинстве хостингов в Рунете;
- кроссплатформенность (UNIX системы и среда Microsoft Windows);
- открытая и модульная разработка;
- гибкая политика лицензирования.
Веб-приложение разработано по концепции MVC. Сначала был определён набор базовых сущностей (моделей) и база данных для хранения их в системе. Для реализации базы данных был использован инструмент Entity Framework.
Модель (Model) - отвечает за бизнес-логику, непосредственно связанную с предметной областью. Является моделью сущности, предоставляет интерфейс для работы с сущностями, инкапсулирует обработку данных соответствующей ей сущности. Названия и описания моделей представлены в таблице 1.
Таблица 1 – Модели и их назначение
Модель |
Описание |
Akt.cs |
Модель акта |
AppUsers.cs |
Модель пользователей |
Cex.cs |
Модель подразделений |
Dolgn.cs |
Модель должностей |
MailSettings.cs |
Модель параметров рассылки |
Pom.cs |
Модель помещений |
Predp.cs |
Модель предписаний |
Sostav.cs |
Модель состава комиссии |
Представление (View) - отвечает за отображение данных приложения и взаимодействие с пользователем (таблица 2).
Контроллер (Controller) - главная алгоритмическая часть приложения MVC. Именно здесь происходит основная работа с данными, представленными моделями, и подготовка их к отображению с помощью видов.
Контроллер - это связующее звено между данными и интерфейсом. Он отвечает за обработку запроса, определяет HTML для UI, содержит методы для реализации функциональных требований, использует модель для получения данных предметной области.
В таблице 3 представлены контролеры проекта.
Таблица 2 – Представления и их назначение
Представление |
Описание |
Login.cshtml |
Интерфейс авторизации в системе |
Create.cshtml |
Интерфейс создания акта, доступен администратору и секретарю комиссии |
CreatePredp.cshtml |
Интерфейс создания предписания, доступен администратору и секретарю комиссии |
Delete.cshtml |
Интерфейс удаления акта, доступен администратору и секретарю комиссии |
Detail.cshtml |
Интерфейс информации об акте, доступен всем авторизированным пользователям |
EditPredp.cshtml |
Интерфейс редактирования предписания, доступен администратору и секретарю комиссии |
ExecPredp.cshtml |
Интерфейс исполнения предписания, доступен ответственному за устранение замечаний |
Index.cshtml |
Интерфейс с актами, доступен всем авторизированным пользователям |
OpenPredp.cshtml |
Интерфейс открытых предписаний, доступен всем авторизированным пользователям |
PrintOpenPredp.cshtml |
Интерфейс печатной формы открытых предписаний, доступен всем авторизированным пользователям |
Prints.cshtml |
Интерфейс печатной формы акта-предписания, доступен всем авторизированным пользователям |
Create.cshtml |
Интерфейс создания подразделения, доступен администратору |
CreatePom.cshtml |
Интерфейс создания помещений, доступен администратору и секретарю комиссии |
Delete.cshtml |
Интерфейс удаления подразделения, доступен администратору |
Edit.cshtml |
Интерфейс редактирования подразделения, доступен администратору и секретарю комиссии |
EditPom.cshtml |
Интерфейс редактирования помещения, доступен администратору и секретарю комиссии |
Index.cshtml |
Интерфейс с подразделениями, доступен администратору и секретарю комиссии |
Pom.cshtml |
Интерфейс с помещениями, доступен администратору и секретарю комиссии |
Create.cshtml |
Интерфейс создания должности, доступен администратору |
Delete.cshtml |
Интерфейс удаления должности, доступен администратору |
Edit.cshtml |
Интерфейс редактирования должности, доступен администратору |
Index.cshtml |
Интерфейс с должностями, доступен администратору |
Index.cshtml |
Интерфейс главной страницы |
Privacy.cshtml |
Интерфейс информации |
Index.cshtml |
Интерфейс параметров рассылки, доступен администратору |
Create.cshtml |
Интерфейс выбора роли пользователям, доступен администратору |
Layout.cshtml |
Интерфейс навигации |
Error.cshtml |
Интерфейс ошибки |
Create.cshtml |
Интерфейс добавления нового сотрудника, доступен администратору |
Edit.cshtml |
Интерфейс редактирования сотрудника, доступен администратору |
Index.cshtml |
Интерфейс со списком пользователей, доступен администратору |
Таблица 3 – Контроллеры и их назначение
Контроллер |
Описание |
AccountController.cs |
Обрабатывает запросы, ответственные за авторизацию в веб-приложении и выход из веб-приложения. |
AktsController.cs |
Обрабатывает запросы, ответственные за составление, редактирование и удаление акта-предписания, а также работу SMTP для рассылки писем на E-mail пользователям. |
CexController.cs |
Обрабатывает запросы, ответственные за создание, редактирование, удаление подразделений и помещений в них. |
DolgnController.cs |
Обрабатывает запросы, ответственные за создание, удаление, редактирование должностей. |
HomeController.cs |
Обрабатывает запросы, ответственные за отображение главной страницы и страницы информации. |
MailSettingsController.cs |
Обрабатывает запросы, ответственные за работу параметров рассылки E-mail. |
RolesController.cs |
Обрабатывает запросы, ответственные за присвоение роли пользователю. |
UsersController.cs |
Обрабатывает запросы, ответственные за создание, редактирование, удаление пользователей. |
Рисунок 3 – Диаграмма базы данных
Рисунок 4 – Структура базы данных
Тестирование. В процессе разработки приложения производилось поэтапное тестирование с целью выявления программных ошибок.
Тестируемый программный продукт последовательно запускался на IIS EXPRESS, его поведение анализировалось, и при необходимости по результатам анализа вносились изменения в код.
В рамках научной исследовательской работы было выполнено проектирование и разработка веб-приложения для АВК.
Разработанное приложение выступает в целях виртуализации коммуникаций внутри предприятия, предназначено для членов комиссии 3 ступени по охране труда «Ангарского Водоканала» и сотрудников предприятия, которые обязаны работать в системе, получать из неё акты, задания, заниматься устранением замечаний по акту-предписанию.
Таким образом, разработанное веб-приложение позволяет оперативно доводить информацию до сотрудников предприятия. В веб-приложении имеется возможность получить всю необходимую информацию об акте-предписании и быть всегда проинформированным об устранении замечаний. Исходя из вышесказанного, можно сделать вывод, что цель работы достигнута. При желании функционал веб-приложения в будущем может быть расширен.
Развитие приложения. Возможными путями развития приложения являются:
- добавление функций веб-приложения;
- добавление онлайн-чата между председателем и членами комиссии;
- доработка веб-приложения для смартфонов с небольшой диагональю экрана;
- реализация интерфейса на различных языках.
Практическим результатом научной исследовательской работы стал реализованный проект веб-приложения ИАС «Охрана Труда» для МУП АГО «Ангарский Водоканал» на платформе ASP.Net Core. Веб-приложение было спроектировано с учетом современных теоретических и практических аспектов разработки веб-приложений.
1. ГОСТ 12.4.011-89. Система стан-дартов безопасности труда. [Электронный ресурс]. URL: https://docs.cntd.ru/document/1200000277 (дата обращения: 01.10.2022).
2. ГОСТ 12.4.011-89. Российская система качества разработки приложений. Взамен ГОСТ Р 1.0-2004; введ. 2013-07-01 [Электронный ресурс]. URL: https://docs.cntd.ru/document/1200102193 (дата обращения: 01.10.2022).
3. Соловьев, С.В. Технология разра-ботки прикладного программного обеспечения [Текст]: учеб., пособие для вузов / С. В. Соловьев, Р. И. Цой, Л. С. Гринкруг // Тестирование и отладка. - 2011, - 231с.: ил.