ЭЛЕКТРОННЫЙ НАУЧНЫЙ ЖУРНАЛ «APRIORI. CЕРИЯ: ЕСТЕСТВЕННЫЕ И ТЕХНИЧЕСКИЕ НАУКИ»
№ 6 2015
УДК 004
АВТОМАТИЗАЦИЯ ОТДЕЛА ОХРАНЫ ТРУДА
Баулин Станислав Сергеевич
магистрант
Мордовский государственный университет им. Н.П. Огарёва, Саранск
author@apriori-journal. ru
Аннотация. В статье рассматривается автоматизация отдела охраны труда, поднимаются проблемы, связанные с этим процессом. Обзор инструментов для программной реализации.
Ключевые слова: автоматизация; отдел охраны труда; объектно-ориентированное программирование;PHP; JavaScript; СУБД MySQL, HTML.
AUTOMATION OF DEPARTMENT OF LABOR PROTECTION
Baulin Stanislav Sergeyevich
undergraduate Mordovian state university of N. P. Ogaryov, Saransk
Abstract. In article automation of department of labor protection is considered, the problems connected with this process rise. The review of tools for program realization.
Key words: automation; department of labor protection; object-oriented programming; PHP; JavaScript; DBMS MySQL, HTML.
Процесс трудовой деятельности человека на производстве регламентируется нормативными документами об охране труда. Регламент техники безопасности предполагает определенное количество мероприятий, выполнение которых обязательно точно в срок, а невыполнение может повлечь юридическую ответственность. Это обуславливает актуальность задачи повышения автоматизации процессов организации мероприятий по охране труда [1; 2].
Отдел техники безопасности выполняет следующие ключевые функции:
1. Организация и обеспечение контроля за проведением мероприятий, направленных на создание безопасных и здоровых условий труда на предприятии.
2. Организация разработки и внедрения более совершенных конструкций оградительной техники, защитных устройств и других средств по технике безопасности.
3. Контроль за соблюдением законодательных норм, правил техники безопасности и промышленной санитарии в проектах строящихся и реконструируемых цехов.
4. Руководство разработкой новых и пересмотром устаревших инструкций и памяток по технике безопасности и охране труда, составлением программ обучения рабочих безопасным методам работы. Обеспечение проведения вводного инструктажа по технике безопасности поступающих на предприятие работников, организация проведения повторного инструктажа в цехах и службах предприятия.
5. Обеспечение составления отчетности по охране труда и технике безопасности.
Было принято внедрить программное решение, которое позволит автоматизировать бизнес-процессы отдела охраны труда, обеспечить удобный режим доступа заинтересованных лиц к информации, повысить производительность труда.
Для достижения поставленной цели необходимо решить следующие задачи:
- провести анализ предметной области;
- определиться с функциональными требованиями к системе;
- выбрать способ реализации системы и подобрать необходимые инструменты для разработки;
- реализовать поставленные функциональные требования, разработать интерфейс приложения;
Проведенный анализ предметной области, выявил ряд проблем, которые целесообразно решить по внедрении автоматизированной системы. Это - проблемы отсутствия автоматизированного инструмента распределение обязанностей между работниками отдела в соответствии с должностными инструкциями, отсутствия системы учета деятельности, обеспечения проведения инструктажа по технике безопасности, составления отчетности по охране труда и технике безопасности. Показано, что внедрение АИС способно решить эти проблемы. Выделенные проблемы определили архитектуру разрабатываемой системы и функциональные требования к ней.
После того, как была изучена предметная область, определен ряд проблем, которые необходимо решить, выявлены необходимые составляющие информационной системы, выбрана программная основа для реализации проекта, стало возможным предъявить к проектируемой системе функциональные требования, которые в полной мере были реализованы и представлены на диаграмме прецедентов [3] (см. рис. 1):
- аутентификация;
- управление персоналом и подразделениями;
- работа с инструктажами;
- работа с отчетами;
- работа с мероприятиями.
Сотрудник
Рис. 1. Диаграмма прецедентов системы
Архитектура системы реализована по методологии объектно-ориентированного проектирования программного обеспечения. На рис. 2 представлена диаграмма классов. В структуре системы можно выделить два ключевых слоя - frontend и backend. Пользователь взаимодействует с фронтендом, который предоставляет интерфейс для взаимодействия с бекендом, логическим слоем, отвечающем за логику работы приложения и обращения к базе данных. После получения необходимых данных и их подготовки, сервер возвращает их пользователю в удобном для просмотра виде. Классы контроллеров реализуют работу с логикой приложения. Контроллер Instructions управляет логикой работы с инструктажами, Events - мероприятиями, Reports - отчетами, Users - персоналом и отделами, Login - авторизацией в системе.
Для взаимодействия с БД и формирования структур данных контроллеры обращаются к моделям. Основные модели системы реализованы через соответствующие классы (см. рис. 2) - Instructions (занимается формированием, добавлением, удалением, редактированием данных об инструктажах), Events (работает с данными о мероприятиях), Reports (управляет данными об отчетах), Users (работает с информацией о пользователях и персонале), Departments (управляет списком отделов). Они отвечают за работу с соответствующими данными, наследуя возможности базового компонента Model.
Структура базы данных приведена на ER-диаграмме (см. рис. 3).
Для каждой сущности системы в базе данных [4-5] создана таблица и обеспечено наличие необходимых связей.
Сущность departments вводится для описания отделов организации. Ее ключевые атрибуты - идентификатор, название отдела и описание. В каждом отделе работают сотрудники. Для описания этого факта введем сущность people, связанную с departments как многие-к-одному. Она характеризуется аналогичными атрибутами. Для хранения пользовательских
Рис. 2. Диаграмма классов
E departments
iddepatments INT < title VAR(M№(45) 0 description TEXT
HI----
briefings ▼
i dbriefing INT
< title UAROI№(45)
0 description TEXT
0 date TIM ESTAMP
0 organizer INT
t instructedjd INT
Indexes L J
----
people
---K idpecple INT < name VARCHAR(45) ♦ iddqwlments INT
---Ih
-H-
i-----
-h.
reporte
idreport INT C title VARQHAR[45) 0 description TEXT 0 date TIM EST AMP organizer INT
events
idevents INT
< titie VARQHAR[45)
0 description TEXT
Odate TIMESTAMP
0 organizer INT
users
idusers INT
0login VARCH№[45)
0 password_hash VARCHAR(45)
< rights INT 1 nme_
PMC. 3. ER-guarpaMMa
Рис. 4. Диаграмма компонентов
данных в системе необходимо организовать сущность users, описываемую соответствующей таблицей, и имеющую атрибуты: логин, пароль, права.
С целью описания ключевых массивов информации системы введем сущности briefings, reports и events, описывающие, соответственно, инструктажи, отчеты и мероприятия.
В основе функционирования системы лежит архитектурное решение MVC (Model, View, Controller) - концепция, разделяющая данные, представление и обработку действий пользователя на три отдельных компонента [6].
Это архитектурное решение наложило отпечаток на структуру физической реализации системы, выраженную в диаграмме компонентов (см. рис. 4).
Каркасом для реализации системы выбран фреймворк Kohana. Он обрабатывает запросы по следующей схеме: HTTP запрос пользователя принимает компонент Index. Он анализирует его структуру и на основании компонента Routing принимает решение о том, какому из контроллеров передать управление для формирования необходимого ответа.
Для реализации системы были настроены следующие контроллеры и модели:
Контроллер Instructions управляет логикой работы с инструктажами, Events - мероприятиями, Reports - отчетами, Users - персоналом и отделами, Login - авторизацией в системе.
Для взаимодействия с БД и формирования структур данных контроллеры обращаются к моделям.
Разрабатываемая система имеет трехуровневую архитектуру и имеет следующие основные компоненты: клиентское приложение (тонкий клиент), подключенное к серверу приложений, который в свою очередь подключен к серверу базы данных. В простейшей конфигурации физически сервер приложений может быть совмещён с сервером базы данных на одном компьютере, к которому по сети подключается ряд клиентов.
Детальная информация об инструктаже, отчете, мероприятии формируется в виде стандартизированных блоков текста. Так же внедрена возможность вывода информации на печать.
Система написана с использованием объектно-ориентированного языка PHP 5. Синтаксис PHP основывается на языке С [7-8]. Также система написана с помощью JavaScript, технологии AJAX, СУБД MySQL [4-5], HTML разметки.
Список использованных источников
1. Положение об отделе охраны труда и техники безопасности. [Электронный ресурс]. Режим доступа: http://hr-portal.ru/pages/poloj/ pootr2.php
2. Федеральный закон от 17 июля 1999г. № 181-ФЗ «Об основах охраны труда в РФ».
3. Буч Г. UML. Руководство пользования / Г. Буч, Д. Рамбо, А. Дже-кобсон. СПб.: Питер, 2007. 630 с.
4. Кузнецов М.В. MySQL 5 (в подлиннике) / М.В. Кузнецов, И.В. Симдя-нов. СПб.: БХВ-Петербург, 2010. 1007 с.
5. Аббакумов А.А., Акимов В.Л., Егунова А.И., Лещанкин К.А., Таланов В.М. Базы данных (MS ACCESS, MYSQL). Саранск: Изд-во Средне-волжского математического общества, 2011.
6. Режим доступа: https://ru.wikipedia.org/wiki/Model-View-Controller
7. Александров Э.Э. Программирование на языке С в Microsoft Visual Studio 2010 / Э.Э. Александров, В.В. Афонин. Саранск: Изд-во Мор-дов. ун-та, 2010. 424 с.
8. Александров Э.Э., Афонин В.В., Программирование на языке С в Microsoft Visual Studio 2010 [Электронный ресурс]. Режим доступа: http://www.intuit.ru/department/pl/prcmsvs2010