Магистрская 3
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Сибирский государственный автомобильно-дорожный университет (СибАДИ)»
Институт магистратуры и аспирантуры
Направление 09.04.01 Информатика и вычислительная техника
Магистерская программа «Архитектура предприятия и управление информационными процессами»
Кафедра «Прикладная информатика»
П О Я С Н И Т Е Л Ь Н А Я З А П И С К А
к магистерской диссертации
Обозначение магистерской диссертации МД-02068982-09.04.01-04-21
Тема магистерской диссертации: «Интеграция простой электронной подписи в корпоративную информационную систему через мобильное приложение SignPush»
Студент Никитин Никита Сергеевич
Магистерская диссертация допущена к защите в ГЭК
Заведующий кафедрой, канд. экон. наук, доц. __________ Л.И. Остринская
«___»___________2021 г.
Руководитель магистерской программы
декан фак. ИСУ, зав. каф. ПИ,
канд. экон. наук, доц. __________ Л.И. Остринская
Руководитель магистерской диссертации
проректор по ИТ, д-р техн. наук, доц. __________ В.А. Мещеряков
Нормоконтроль
доц. каф. ПИ, канд. пед. наук ____________ С.Ю. Пестова
Омск 2021
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Сибирский государственный автомобильно-дорожный университет (СибАДИ)»
Кафедра «Прикладная информатика»
УТВЕРЖДАЮ
Зав. кафедрой
_____________ Л.И. Остринская
«__»_________ 2020 г
Задание
к магистерской диссертации студента Никитина Никиты Сергеевича
1 Тема МД: «Интеграция простой электронной подписи в корпоративную информационную систему через мобильное приложение SignPush».
2 Исходные данные к МД: нормативные законодательные акты, должностные инструкции, литература по теме работы, интернет ресурсы.
3 Содержание пояснительной записки:
1) Введение
2) Анализ объекта автоматизации и предметной области
3) Анализ и выбор проектных решений
4) Проектирование решения по интеграции
5) Разработка решения по интеграции
6) Заключение
7) Библиографический список
4 Перечень демонстрационного материала для сопровождения докладов в ГЭК
1) Презентация
2) Раздаточный материал к научному докладу
5 Назначенный кафедрой рецензент МД: генеральный директор компании ООО «Бизнес Системы» В.А. Перевальский
Задание выдано «___» ____________ 2020 г.
Руководитель МД ______________________ / В.А. Мещеряков
(подпись)
Задание к исполнению принял «___» ____________ 2020 г.
Студент _________________ / Н.С. Никитин
(подпись)
Аннотация
Пояснительная записка 72 с., 52 рис., 7 табл., 31 источник, 1 прил.
ЭЛЕКТРОННАЯ ПОДПИСЬ, ПРОСТАЯ ЭЛЕКТРОННАЯ ПОДПИСЬ, ПЛАТФОРМА 1С, 1С:ПРЕДПРИЯТИЕ, МОБИЛЬНЫЕ ТЕХНОЛОГИИ, SIGNPUSH.
Результаты данной работы представлены в пояснительной записке. В ходе работы изучен объект автоматизации, которым является компания ООО «Бизнес Системы», изучен предмет автоматизации, которым является процесс подписания внутренних документов компании, рассмотрены и описаны бизнес-процессы, выполнено построение основных моделей предметной области, спроектирован интерфейс, разработаны информационные процессы, произведено внедрение проектного решения.
Объект автоматизации – IT-компания ООО «Бизнес Системы.
Предмет автоматизации – существующий процесс подписания внутренних документов между сотрудниками компании ООО «Бизнес Системы».
Степень внедрения – успешно интегрировано в корпоративную информационную систему CRM в компании ООО «Бизнес Системы».
ELECTRONIC SIGNATURE, SIMPLE ELECTRONIC SIGNATURE, PLATFORM 1C, 1C: ENTERPRISE, MOBILE TECHNOLOGIES, SIGNPUSH.
The results of this work are presented in the explanatory note. In the course of the work, the automation object was studied, which is the company “Business Systems”, the subject of automation, which is the process of signing the company’s internal documents, was studied, business processes were considered and described, the main models of the subject area were built, the interface was designed, information processes were developed, implementation of a design solution.
Список условных обозначений и сокращений
БС
ООО «Бизнес Системы»
ДО
1С:Документооборот 8
ЭД
Электронный документ
AS-IS
Как есть
BPMN
Business Process Model and Notation
CRM
Корпоративная информационная система для учета работы в компании ООО «Бизнес Системы»
IDEF
Icam (Integrated computer aided manufacturing) DEFinition
IDEF0
Integrated DEFinition for Function Modeling
IDEF3
Integrated DEFinition for Process Description Capture
SP
SignPush – сервис для работы с простой электронной подписью, разработанный компанией ООО «Бизнес Системы»
TO-BE
Как должно быть
Содержание
Введение 6
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 8
1.1 Характеристика объекта автоматизации 8
1.2 Нормативно-правовая база предметной области 10
1.3 Формализация существующего процесса обработки данных 11
1.4 Модель предметной области 14
1.4.1 Информационная модель 14
1.4.2 Функциональная модель 15
1.4.3 Программная модель 17
1.5 Анализ проблем предметной области 17
2 АНАЛИЗ И ВЫБОР ПРОЕКТНЫХ РЕШЕНИЙ 20
2.1 Анализ и выбор технологий проектирования 20
2.2 Обоснование проектных решений 21
2.3 Описание КИС «CRM» 23
2.4 Описание сервиса «SignPush» 25
3 ПРОЕКТИРОВАНИЕ РЕШЕНИЯ ПО ИНТЕГРАЦИИ 33
3.1 Постановка задачи и требования к системе 33
3.2 Модель процесса обработки данных «TO-BE» 36
3.2.1 Информационная модель 36
3.2.2 Функциональная модель 37
3.2.3 Формализация процесса обработки данных 39
3.3 Проектирование интерфейса для программного решения 42
4 РАЗРАБОТКА РЕШЕНИЯ ПО ИНТЕГРАЦИИ 46
4.1 Интеграция простой электронной подписи с помощью сервиса SignPush 46
4.2 Результат интеграции в структуре метаданных КИС «CRM» 65
Заключение 67
Библиографический список 69
Приложение А Акт внедрения 73
Введение
Увеличение объема информации и внедрение компьютерных технологий стали предъявлять повышенные требования к организации документооборота. В этих условиях возникает необходимость рационализации отработанных методов поиска, обработки и хранения информации (документов) с разработкой новых приемов, режимов и методик оценки, анализа и оптимизации документационных потоков организаций, используя современные компьютерные технологии.
Системы электронного документооборота на сегодняшний день стремительно внедряются повсеместно. Они имеют неоспоримый ряд преимуществ, таких как, например, электронный архив, по сравнению с обработкой бумажных документов. Нельзя спорить с тем фактом, что отказаться полностью от бумажных документов не удастся никогда, однако, доминировать всё же будет использование электронных вариантов над бумажными.
В IT компании ООО «Бизнес Системы» было принято решение интегрировать сервис «SignPush» для использования простой электронной подписи при подписании внутренних документов компании.
В данной работе мы рассмотрим подписание внутреннего документа простой электронной подписи с помощью сервиса SignPush, на примере, внутреннего документа «Электронная заявка».
Актуальность данной работы состоит в том, что активно развиваются технологии электронной подписи, которые нацелены на оптимизацию существующих процессов документооборота.
Объект автоматизации – IT-компания ООО «Бизнес Системы.
Предмет автоматизации – существующий процесс подписания внутренних документов между сотрудниками компании ООО «Бизнес Системы».
Цель работы – оптимизировать существующий процесс подписания внутренних документов компании ООО «Бизнес Системы» путем интеграции простой электронной подписи через мобильное приложение SignPush.
Для достижения заданной цели были поставлены следующие задачи:
– Выполнить анализ объекта автоматизации, которым является IT-компания ООО «Бизнес Системы».
– Описать существующий процесс подписания внутренних документов компании.
– Выявить узкие места в существующем процессе подписания внутренних документов.
– Провести реинжиниринг существующего процесса с целью устранения узких мест и выполнения цели данной работы.
– Обосновать необходимость реинжиниринга существующего процесса с помощью построения дерева целей.
– Провести анализ корпоративной информационной системы компании ООО «Бизнес Системы».
– Определить технические требования к интеграции простой электронной подписи в существующий процесс с помощью мобильного приложения SignPush.
– Спроектировать интерфейс, который будет использоваться после интеграции.
– Разработать программное решение по интеграции простой электронной подписи с помощью сервиса SignPush.
– Запустить в эксплуатацию разработанное решение по интеграции.
Результаты данной работы были доложены на заседании кафедры «Прикладная информатика».
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
1.1 Характеристика объекта автоматизации
Объектом исследования является компания «Бизнес Системы», которая занимается автоматизацией управления и учета на базе программных продуктов «1С». Компания успешно работает в сфере информационных технологий с 2004 года.
С 2006 года «Бизнес Системы» является официальным партнером ведущего российского разработчика – фирмы «1С». Перечислим услуги, оказываемые компанией.
– Консультации на этапе подбора программного продукта и его демонстрация.
– Поставка программного продукта, установка платформы, конфигурации ПП, создание информационной базы.
– Адаптация программ фирмы «1С» с учетом специфики бизнес-процессов организации.
– Консультационная, технологическая и методическая поддержка.
– Проведение семинаров, обучение пользователей и ИТ-специалистов навыкам работы с программой.
Организационная структура компании состоит из 7 отделов: отдел продаж (3-4 человека), отдел бухгалтерии (1-2 человека), отдел программирования (7 человек), отдел сервисного сопровождения (3 человека), отдел 1С:Бухгалтерия предприятия (хоз. расчет)(2 человека), отдел 1С:Зарплата и кадры (3 человека), отдел 1С:Бухгалтерия государственных учреждений (6 человек). У каждого отдела есть сотрудники, которые подчиняются руководителю своего отдела, а руководитель подчиняется директору.
На рисунке 1 схематично изображена организационная структура компании ООО «Бизнес Системы».
Рисунок 1 – Организационная структура компании
ООО «Бизнес Системы»
Рассмотрим задачи каждого отдела:
Отдел сервисного сопровождения занимается вопросами настройки оборудования, технических проблем с компьютерами, а также информационно-технической поддержкой продуктов 1С (подключение сервисов 1С, установка платформ, обновлений).
Отдел консультации по «1С:Бухгалтерии» (хоз. расчет) – занимается вопросами хозяйственного расчета, не касаясь государственного учета. Помимо «1С:Бухгалтерии» специалисты отдела занимаются консультациями по конфигурациям «1С:УНФ» (Управление нашей фирмой), «1С:ERP», «1С:Розница», а так же отраслевыми решениями, например, «1С:Бухгалтерия сельскохозяйственного учреждения».
Отдел консультации по «1С:Бухгалтерия» (бюджет) – занимается вопросами государственного учета, государственных, бюджетных предприятий.
Отдел разработки – занимается обновлением доработанных конфигураций и доработками конфигураций.
Отдел консультации по «1С:Зарплата и кадры» – занимается вопросами учета кадров, заработной платы, начислений, отпусков, больничных.
Вся работа с клиентами по обращениям отражается с помощью документа «Электронная заявка», в котором содержатся все необходимые поля для отражения проделанной работы. Документ «Электронная заявка» подписывается между сотрудниками фирмы только в том случае, когда работа производилась по проекту, где назначенным внутренним заказчиком является один из сотрудников фирмы. В данной работе мы будем рассматривать процесс подписания внутренних документов на примере документа «Электронная заявка».
Специалисты данных отделов для отражения проделанной работы с клиентом используют документ «Электронная заявка» как внутренние исполнители, а руководители отделов обычно являются внутренними заказчиками. Ответственным по заявкам является один из числа сотрудников отдела продаж, назначенным руководителем отдела продаж.
1.2 Нормативно-правовая база предметной области
Ведение учета, а также разработка всех программных решений регламентируется определенными нормативно-правовыми документами. Регламентирующими документами, влияющими на подписание документов, а также нормативно-правовыми документами, в рамках которых ведется анализ процесса подписания документов в компании ООО «Бизнес Системы»:
– Федеральный закон «О персональных данных» от 27.07.2006 N 152-ФЗ [1]. Является главным законом, регламентирующим деятельность, связанную с использованием каких-либо персональных данных.
– Федеральный закон «Об электронной подписи» от 06.04.2011 N 63-ФЗ [3]. Является главным законом, регламентирующим деятельность, связанную с электронной подписью. Дает понятия «электронная подпись», «ключ электронной подписи», «корпоративная информационная система», «участники электронного взаимодействия». Нарушение данного закона влечет за собой основание отзыва лицензии у системы учета электронной подписи.
– Положение об использовании простой электронной подписи для внутреннего электронного документооборота в ООО «Бизнес Системы». Является локальным нормативным актом ООО «Бизнес Системы» и определяет порядок и условия работы сотрудников с электронными документами в Информационной Системе, непосредственно связанными с их трудовой деятельностью, с применением простой электронной подписи.
– Должностная инструкция по организационному взаимодействию между сотрудниками и инструкция по работе в «CRM».
1.3 Формализация существующего процесса обработки данных
При изучении процесса рукописной подписи документа «Электронная заявка», был описан существующий бизнес-процесс.
Перечень документов, участвующих в бизнес-процесе представлен в таблице 1.
Таблица 1 – Перечень документов, участвующих в бизнес-процессах
Наименование входа/выхода
Тип
Электронный документ «Электронная заявка»
Электронный документ
Бумажный документ «Электронная заявка»
Бумажный документ
Подписанный исполнителем бумажный документ «Электронная заявка»
Бумажный документ
Подписанный исполнителем и заказчиком бумажный документ «Электронная заявка»
Бумажный документ
Перечень бизнес-ролей, участвующих в бизнес-процессах «AS-IS» представлен в таблице 2.
Таблица 2 – Бизнес-роли бизнес-процессов «AS-IS»
Бизнес-роли
Организационные единицы
1 Внутренний исполнитель
Рядовой сотрудник
2 Внутренний заказчик
Руководитель отдела внутреннего исполнителя
3 Ответственный по заявкам
Сотрудник отдела по работе с клиентами
Разработанный бизнес-процесс представлен на рисунке 2.
Рисунок 2 – Бизнес-процесс Комплексный процесс обработки и подписи документа «Электронная заявка» (AS-IS)
Описание бизнес-процесса AS-IS представлено в таблице 3.
Таблица 3 – Описание модели бизнес-процесса (AS-IS)
Наименование операции,
исполнитель, сроки
Входы, выходы, требования
1
2
01 Корректировка содержания эл. заявки
Исполнитель:
Внутренний исполнитель
Сроки:
Любое время
Входы:
Отсутствуют
Выходы:
Электронный документ «Электронная заявка»
02 Подпись документа эл. заявка
Требования:
Корректно заполнить документ эл. заявка
02 Распечатка документа электронная заявка
Исполнитель:
Внутренний исполнитель
Сроки:
После корректировки содержания документа
Входы:
01 Корректировка содержания эл. заявки
Выходы:
03 Подпись документа эл. заявка
Требования:
Распечатать печатную форму документа электронной заявки
03 Подпись бумажной версии документа эл. заявка
Внутренний исполнитель
Сроки:
После распечатки документа электронная заявка
Входы:
02 Распечатка документа электронная заявка
Выходы:
04 Проверка содержания заявки
Требования:
Подписать документ ручкой
04 Проверка содержания заявки
Исполнитель:
Внутренний заказчик
Сроки:
После подписи бумажной версии документа эл. заявки
Входы:
03 Подпись бумажной версии документа эл. заявка
Выходы:
05 Содержание корректное?
Требования:
Проверить корректность заявки
05 Содержание корректное?
Исполнитель:
Внутренний заказчик
Сроки:
После проверки содержания
Входы:
04 Проверка содержания заявки
Выходы:
(Да) 06 Подпись документа внутренним заказчиком
(Нет) 01 Корректировка содержания эл. заявки
Требования:
Утвердить или отправить на доработку
06 Подпись документа внутренним заказчиком
Исполнитель:
Внутренний заказчик
Сроки:
После проверки содержания
Входы:
05 Содержание корректное?
Выходы:
07 Внесение документа «Заявка» на основе подписанного документа
Требования:
Подписать рукописно бумажную версию документа
07 Внесение документа «Заявка»
Исполнитель:
Ответственный за внесение заявок
Сроки: В поставленный срок
Входы:
06 Подпись документа внутренним заказчиком
Требования:
Внести документ «Заявка» на основе подписанной бумажной версии документа
1.4 Модель предметной области
1.4.1 Информационная модель
Построим информационную модель комплексного процесса обработки и подписи документа «Электронная заявка» AS-IS в виде «черного ящика».
На вход в комплексный процесс обработки и подписи документа «Электронная заявка» поступает подготовленный (корректно заполненный) документ «Электронная заявка». В роли механизма процесса выступают КИС «CRM», внутренний исполнитель, внутренний заказчик и ответственный за внесение заявок. Правовые и организационные моменты регламентируется должностной инструкцией компании, 152-ФЗ «О персональных данных». При завершении процесса мы получаем подписанный исполнителем и заказчиком бумажный документ «Электронная заявка» и документ «Заявка».
Информационная модель обработки входящих документов представлена в виде «черного ящика» на рисунке 3. Информационная модель создана в Business Studio 5. Business Studio – система бизнес-моделирования, позволяющая спроектировать эффективную организацию [18].
Рисунок 3 – Информационная модель AS-IS
1.4.2 Функциональная модель
В результате декомпозиции модели «черного ящика» была построена функциональная модель предметной области, включающая в себя 3 этапа:
1) Распечатка документа и рукописное подписание документа «Внутренним исполнителем».
2) Подписание документа «внутренним заказчиком».
3) Внесение документа «Заявка» ответственным за внесение заявок.
Опишем подробнее каждый этап:
На первом этапе «внутренний исполнитель» распечатывает печатную форму документа «Электронная заявка» на принтере и подписывает его.
После подписи «внутренний исполнитель» относит подписанный документ на проверку и подпись «Внутреннему заказчику». «Внутренний заказчик» проверяет документ, и если всё верно и принимает выполненные работы, тогда он подписывает документ. Если не согласен с содержанием заявки, то отправляет на корректировку внутреннему исполнителю. Внутренний исполнитель после корректировки начинает процесс с первого этапа.
После подписи внутренним заказчиком внутренний исполнитель передает подписанный бумажный документ «Электронная заявка» ответственному за внесение заявок. В свою очередь, ответственный за внесение заявок создает документ «Заявка» на основании бумажного документа «Электронная заявка» и сохраняет подписанную заявку в архив.
На этом процесс обработки и подписания документа «Электронная заявка» считается завершенным.
Описанная выше функциональная модель, представлена на рисунке 4.
1.4.3 Программная модель
Программная модель предметной области состоит на основе прикладного и базового программного обеспечения (ПО). В таблице 4 указаны базовое и прикладное ПО, используемое при исполнении процессов на базовой кафедре.
Таблица 4 – Базовое и прикладное ПО
Базовое программное обеспечение
Прикладное программное обеспечение
Операционная система – Windows 10
Платформа автоматизации – 1С: Предприятие 8.3
Антивирусная программа – Kaspersky Security 2019
Хранилище документов – 1С: Документооборот 8
Архиватор – WinRAR
Браузер – Google Chrome
Офисный пакет – Microsoft Office 2013
Платформой автоматизации является последняя версия программы «1С:Предприятие», а именно «1С:Предприятие 8.3».
Хранилищем документов является конфигурация «1С:Документооборот 8», который зарекомендовал себя с наилучшим образом на IT рынке.
Пакет офисных программ представлен от компании Microsoft, а именно Microsoft Office 2013, в котором присутствует набор всех необходимых офисных инструментов.
1.5 Анализ проблем предметной области
Анализ существующего бизнес-процесса объекта автоматизации выявил ряд узких мест, которые необходимо устранить в будущем. В таблице 5 показаны узкие места рассмотренного ранее бизнес-процесса.
Таблица 5 – Узкие места существующих бизнес-процессов
Объект
исследования
Уровень проблем
Итого
узких мест
Организационный
Информационный
Технический
Нормативно-методический
«Процесс рукописной подписи документа «электронная заявка»»
0
3
0
0
3
Итого:
0
3
0
0
3
В таблице 6 приведен перечень рисков и потенциальные последствия этих рисков.
Таблица 6 – Перечень узких мест и связанные с ними риски
Описание типового узкого места
Потенциальные риски
Проблемы информационного уровня
1 Процесс подписания происходит не в КИС «CRM»
1 Большая вероятность возникновения ошибки,
2 Риск потери информации
2 Документ распечатывается на бумаге
1 Риск потерять информацию;
2 Нерациональное использование ресурсов.
3 Документы подписываются рукописной подписью на бумаге
1 Появление рисков человеческого фактора
На основе выявленных узких мест бизнес-процессов было построено дерево проблем, которое представлено на рисунке 5.
Рисунок 5 – Дерево проблем существующего процесса
Описание дерева проблем существующего процесса:
Основной проблемой в исследуемом процессе является отсутствие электронной подписи при подписании корпоративных документов. Данная проблема ведет к тому, что подписываются бумажные версии внутренних (корпоративных) документов, что в свою очередь увеличивает количество используемой бумаги и как следствие – увеличение суммы расходов. Так же увеличивается время на подписание, т.к. нужно передвигаться по офису для подписания документов, и не всегда нужный сотрудник будет на месте, и из-за этого падает продуктивность сотрудников. Ещё одной проблемой является использование рукописной подписи вместо электронной, что ведет к риску человеческого фактора как при подписании (например, подделка подписи), так и при хранении подписанных версий.
2 АНАЛИЗ И ВЫБОР ПРОЕКТНЫХ РЕШЕНИЙ
2.1 Анализ и выбор технологий проектирования
Существует множество различных технологий проектирования, но для данной задачи были выбраны 3 технологии проектирования, такие как: нотация BPMN, структурное и объектно-ориентированное проектирование. Рассмотрим каждую технологию.
Модель и нотация бизнес-процессов (BPMN, Business Process Model and Notation) – система условных обозначений (нотация) для моделирования бизнес-процессов [18].
Основная цель BPMN – создание стандартного набора условных обозначений, понятных всем бизнес-пользователям. Бизнес-пользователи включают в себя бизнес-аналитиков, создающих и улучшающих процессы, технических разработчиков, ответственных за реализацию процессов и менеджеров, следящих за процессами и управляющих ими. Следовательно, BPMN призвана служить связующим звеном между фазой дизайна бизнес-процесса и фазой его реализации [18].
Сущность структурного подхода к разработке ИС заключается в её декомпозиции (разбиении) на автоматизируемые функции. Система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны. При разработке системы «снизу-вверх» от отдельных задач ко всей системе целостность теряется, возникают проблемы при информационной стыковке отдельных компонентов [30].
Объектно-ориентированный подход использует объектную декомпозицию, при этом статическая структура описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами. Целью методики является построение бизнес-модели организации, позволяющей перейти от модели сценариев использования к модели, определяющей отдельные объекты, участвующие в реализации бизнес-функций [25].
Для данного процесса был выбран структурный подход, так как с помощью него можно наглядно продемонстрировать суть процесса.
Для анализа и построения предметной области будет использоваться программное средство Business Studio, которое включает в себя нужную методологию IDEF0.
Для проектирования интерфейса будет использовано программное обеспечение Balsamiq Mockups, которое позволяет отобразить большое количество элементов разных интерфейсов.
2.2 Обоснование проектных решений
Для обоснования проектных решений было разработано дерево целей, зеркально отражающее дерево проблем, представленное на рисунке 6.
Дерево целей показывает, что, если оптимизировать процесс подписания внутренних документов в компании произойдут благоприятные изменения: документы будут подписывать не рукописно на бумаге, а в информационной системе, и так же будет использована электронная подпись, которая равнозначна рукописной. Данные изменения повлекут за собой уменьшение затрат на бумагу, вследствие чего уменьшаться сумма расходов, увеличится скорость подписания внутренних документов благодаря тому, что ходить по офису не нужно будет, искать внутреннего заказчика по офису не нужно, благодаря чему будет выиграны дополнительные минуты для работы. При использовании электронной подписи снимается ответственность с сотрудника, который отвечает за хранение распечатанных и подписанных версий электронных заявок. Данные будут храниться на сервере.
Рисунок 6 – Дерево целей обоснования проектного решения
Электронная подпись – информация в электронной форме, которая присоединена к другой информации в электронной форме (подписываемой информации) или иным образом связана с такой информацией, и которая используется для определения лица, подписывающего информацию.
Преимущества электронной подписи перед рукописной:
– повышение конфиденциальности операций по обмену документами;
– придание юридической силы документам;
– сокращение расходов на подготовку, доставку, учет и хранение документов;
– создание системы контроля исполнительской дисциплины и повышение прозрачности процессов делопроизводства.
2.3 Описание КИС «CRM»
Проведем анализ корпоративной информационной системы компании ООО «Бизнес Системы» «CRM»: конфигурация на основе «1С:Бухгалтерия 1.0» на обычном интерфейсе, затем силами сотрудников была переведена на управляемый интерфейс. Вариант работы – клиент-серверный (один из вариантов работы системы «1С:Предприятие 8». Реализован на основе трехуровневой архитектуры «клиент-сервер» [18]), под управлением базы данных MS SQL Server. В процессе работы были интегрированы подсистемы «АРБИС: Управление фирмой-франчайзи» (конфигурация, которая автоматизирует бизнес-процессы фирмы-франчайзи «1С») [16], проведена бесшовная интеграция «1С:Документооборот 8» – современная ECM-система (Enterprise Content Management) с широким набором возможностей для управления деловыми процессами и совместной работой сотрудников [14], частично внедрены некоторые подсистемы из библиотеки стандартных подсистем (БСП) – работа с адресами, управление пользователями, администрирование и другие. «1С:Библиотека стандартных подсистем» (БСП) предоставляет набор универсальных функциональных подсистем, готовые разделы для пользовательской документации и технологию для разработки прикладных решений на платформе «1С:Предприятие». С применением БСП становится возможной быстрая разработка новых конфигураций с уже готовой базовой функциональностью, а также включение готовых функциональных блоков в существующие конфигурации. Использование БСП при разработке прикладных решений на платформе «1С:Предприятие» позволяет также достичь большей стандартизации конфигураций и уменьшить время на изучение и внедрение прикладных решений за счет их унификации по набору используемых стандартных подсистем [13]. А также были добавлены метаданные, в которых возникла необходимость при рабочих процессах.
Для отражения выполняемых работ сотрудников с клиентами был разработан документ «Электронная заявка», который отражает информацию о проделанной работе, сотруднике-исполнителе, контрагенте, времени работы и другой дополнительной информацией. Форма документа «Электронная заявка» представлена на рисунке 7.
Рисунок 7 – Форма документа «Электронная заявка»
Документ «Электронная заявка» используется только для отражения выполненных работ с клиентом. Этот документ передается клиенту на подпись с помощью курьера, либо по электронной почте. После того как клиент подпишет данный документ и пройдет оплата – сотрудник, ответственный за внесение заявок обязан будет создать документ «Заявка», на основании подписанной электронной заявки. После этого заявка считается отработанной.
Документ «Заявка» отражает информацию о стоимости часа, количестве часов, количестве проектных часов, количестве оплачиваемых часов, часов к оплате. Движения этого документа отражаются во взаиморасчетах с клиентами и являются основополагающим документом, на основании которого начисляется заработная плата сотруднику.
На рисунке 8 представлена форма документа «Заявка».
Рисунок 8 – Форма документа «Заявка»
2.4 Описание сервиса «SignPush»
Сервис «SignPush» является разработкой компании ООО «Бизнес Системы», целью которого является использование простой электронной подписи, сохраняя при этом – «рукописную» подпись. Под рукописной подписью здесь понимается подпись на экране смартфона или планшета, а не на бумаге. Сервис не хранит подписываемый файл, а хранит лишь его хеш-сумму (уникальный набор символов, соответствующий состоянию документа), по которой можно безошибочно определить подписанный документ. Сервис также хранит координаты подписи, благодаря этому, можно загрузить подписанный документ и картинки подписей установятся в то место, куда устанавливал место подписи подписант.
Пример подписанного документа с установленной подписью представлен на рисунке 9.
Рисунок 9 – Документ с установленной подписью
Рассмотрим основные возможности официального сайта signpush.ru.
Авторизация на сайте поддерживается как с помощью пароля, так и с помощью подписи. После авторизации открывается главная страница сайта, где отображаются устройства данной учетной записи, с возможностью переназначить основное устройство, либо удалить устройство из списка зарегистрированных. Главная страница сайта представлен на рисунке 10.
Рисунок 10 – Главная страница сайта SignPush
На странице сайта «Документы» отображаются документы, которые необходимо подписать, ожидающие подписи и список всех документов. О каждом документе отображается информация следующая информация: наименование документа, дата создания документа, описание файла, размер файла, хеш-сумма файла, а также дата последнего изменения. Также есть возможность подписать, удалить документа и посмотреть список участников подписи (подписантов).
Страница сайта «Документы» представлена на рисунке 11.
Рисунок 11 – Страница сайта «Документы»
На странице сайта «Участники» отображается список подписантов, с возможностью удаления и добавления участников. Добавление осуществляется по адресу электронной почты. На рисунке 12 представлена страница сайта «Участники».
Рисунок 12 – Страница сайта «Участники»
На сайте есть возможность подписывать документы. Для этого необходимо перейти на страницу «Создать документ». Далее необходимо загрузить документ в формате PDF. Затем нажать на кнопку «Отправить на подпись», которая находится в правом верхнем углу в виде картинки письма. Окно отправки документа представлено на рисунке 13.
Рисунок 13 – Окно отправки документа на подпись
После нажатия на кнопку «Да» необходимо установить место подписи. На документе появиться квадрат, который необходимо разместить в нужное место. Размеры области подписи можно корректировать, растягивая и сужая область подписи. На рисунке 14 представлена область установки подписи.
Рисунок 14 – Область установки места подписи
Теперь рассмотрим работу с мобильным приложением SignPush.
1) Установить приложение SignPush можно с Google Play [27];
2) После открытия приложения нажимаем кнопку «Регистрация»;
3) Заполняем поля e-mail и логин. Далее возможны 2 пути: создать учетную запись с паролем или с подписью. Здесь необходимо определиться с назначением подписи: если подпись требуется каждый раз проверять корректность подписи установленному эталону, тогда нужно регистрироваться с помощью подписи. Если регистрироваться с помощью пароля, тогда подтверждающим фактом подписи станет установленный пароль, но при этом подпись будет требоваться, но проверка корректности производиться не будет. Чтобы регистрироваться с помощью подписи, необходимо нажать на соответствующее поле и затем кнопку «Регистрация». Форма регистрации в приложении SignPush представлена на рисунке 15.
Рисунок 15 – Форма регистрации в приложении SignPush
После регистрации на e-mail, указанный при регистрации поступит письмо с ссылкой для подтверждения регистрации. После перехода по ссылке из письма – учетная запись будет подтверждена и можно будет войти в приложение с помощью регистрационных данных.
После входа в приложение на экране отображается основное окно приложения, которое показывает сколько документов необходимо подписать, сколько документов ожидают подписи других участников подписания, кнопка просмотра списка всех документов. Так же отображается e-mail, имя пользователя и ID устройства. Присутствует возможность изменить эталон подписи и сменить пароль, а также выйти из учетной записи. Основное окно приложения SignPush представлено на рисунке 16.
Рисунок 16 – Основное окно приложения SignPush
При авторизации, либо подписи документа – открывается окно для рукописной подписи на экране смартфона.
На рисунке 17 представлено окно для подписи в мобильном приложении.
Рисунок 17 – Окно для подписания в мобильном приложении
Всё взаимодействие с SignPush строится через API (англ. Application Programming Interface – программный интерфейс приложения) – это набор способов и правил, по которым различные программы общаются между собой и обмениваются данными. [30].
Официальное описание API SignPush позволяет производить все необходимые действия с сервисом [25]. Перечислим основные возможности API SignPush:
– Получить информацию об учетной записи пользователя;
– Производить авторизацию в сервисе SignPush;
– Создавать документы на подпись;
– Добавлять подписантов;
– Удалять подписантов из документов;
– Получить информацию о подписании документа;
Перечисленные выше возможности API SignPush позволяют полноценно использовать сервис в любой информационной системе, на любой платформе.
В следующем разделе опишем технические требования и разработанное решение по интеграции.
3 ПРОЕКТИРОВАНИЕ РЕШЕНИЯ ПО ИНТЕГРАЦИИ
3.1 Постановка задачи и требования к системе
Перечислим технические требования к процессу подписания документов:
1) На форме списка документа «Электронная заявка» должна присутствовать индикация состояния подписания документа картинкой (подписан/не подписан).
2) Подписать документ возможно только в том случае, если в документе указан «Внутренний заказчик».
3) Отображение кнопки «Подписать» должно быть динамическим по следующим правилам:
– «Внутренний исполнитель» должен видеть кнопку «Подписать» в том случае, если документ им ещё не подписан.
– «Внутренний заказчик» должен видеть кнопку «Подписать» только тогда, когда документ подписан «Внутренним исполнителем».
– Другие сотрудники не должны видеть кнопку «Подписать».
4) При нажатии на кнопку «Подписать» должна быть осуществлена проверка на наличие файла печатной формы заявки, прикрепленного к внутреннему документу «Электронной заявки» в Документообороте. Если файл отсутствует – его необходимо сформировать и прикрепить в ДО. Если файл существует и документ кем-то подписан, необходимо сверить Hash-суммы – алгоритм хеширования, который используется для проверки целостности и подлинности файлов, в случае с файлами – Hash-сумма позволяет определить изменялся ли подписанный файл и прикреплённого файла для избежание факта подмены прикрепленного файла, для обеспечения 100% гарантии подписи одного и того же документа всеми подписантами.
5) Необходимо предварительно заложить несколько типов подписи: пароль, андроид, планшет, отпечаток пальца, КЭП (квалифицированная электронная подпись).
6) Для выбора типа подписи с помощью SignPush необходимо выбрать «Андроид» на форме подписания документа.
7) После выбора типа подписи «Андроид» – необходимо провести проверку наличия учетной записи SignPush.
– Если документ подписывает «Внутренний исполнитель», и у него отсутствует учетная запись – необходимо сообщить ему об этом и запретить дальнейшее подписания с помощью SignPush. При этом можно выбрать любой другой тип подписи, например «Пароль».
– Если документ подписывает «Внутренний исполнитель», и у «Внутреннего заказчика» отсутствует учетная запись – необходимо сообщить об этом и дать возможность продолжить подписание или отказать от подписания с помощью SignPush.
– Если документ подписывает «Внутренний заказчик», и у него отсутствует учетная запись – необходимо сообщить ему об этом и запретить дальнейшее подписания с помощью SignPush. При этом можно выбрать любой другой тип подписи, например «Пароль».
8) В информационно базе необходимо хранить токен (ключ) авторизации SignPush после первой успешной авторизации для оптимизации скорости подписания. При подписании второго и следующих документов за текущие сутки, – запрос на авторизацию не должен отправляться, т.к. должен быть использован ключ авторизации, сохранённый в информационной базе. Так же существует ряд исключений, когда необходима повторная авторизация. Исключениями являются ситуации, когда подписант выходил из учетной записи на устройстве, либо сменил пароль или эталон подписи. В этих случаях при попытке авторизации – SignPush вернёт ошибку авторизации. Отображать ошибку не требуется, а нужно сразу отправлять запрос на авторизацию. Если же после данного запроса сервис возвращает ошибку – необходимо сообщить её пользователю.
9) Процесс подписания должен сопровождаться комплексным бизнес-процессом в «1С:Документооборот». Бизнес-процесс состоит из двух этапов: согласование заявки с «Внутренним заказчиком» (тип задачи – «Согласование») и внесение заявки ответственным за ввод заявок (тип задачи – «Исполнение»). Порядок выполнения этапов – по очереди. Согласовать заявку можно только после подписи «Внутренним заказчиком», выдавать ошибку если идет попытка согласовать неподписанный документ.
Рассмотрим модель взаимодействия систем при подписании документов с помощью простой электронной подписи, представленную на рисунке 18.
Рисунок 18 – Модель взаимодействия систем
В подписании участвуют CRM, ДО, Сервер SignPush и смартфон. CRM используется как основной элемент, где происходит визуальное отображение подписания документа, ДО используется в процессе подписания (после подписи внутренним исполнителем запускается бизнес-процесс согласования/внесения эл. заявки). CRM отправляет запросы на сервер SignPush, который перенаправляет нужную информацию на смартфон и смартфон отправляет данные на сервер об авторизации, факте подписания.
3.2 Модель процесса обработки данных «TO-BE»
3.2.1 Информационная модель
Рассмотрим, как изменится информационная модель, представленная на рисунке 19 при интеграции простой электронной подписи в исследуемый процесс.
Рисунок 19 – Информационная модель TO-BE
Входные данные и участники процесса не изменятся: входными данными будет подготовленный документ «Электронная заявка», участниками процесса будут внутренний исполнитель, внутренний заказчик и ответственный по заявкам. Регулировать процесс будут: 63-ФЗ «Об электронной подписи», должностная инструкция компании ООО «Бизнес Системы», 152-ФЗ «О персональных данных» и Положение об использовании простой электронной подписи для внутреннего электронного документооборота в ООО «Бизнес Системы». На выходе из процесса будет не бумажная версия документа «Электронная заявка», а электронная, так же завершенный бизнес-процесс и сформированный документ «Заявка», на основе документа «Электронная заявка».
3.2.2 Функциональная модель
Функциональная модель процесса «TO-BE» раскрывает функциональные компоненты информационной модели посредством её декомпозиции по методологии IDEF0. Функциональная модель представлена на рисунке 20.
Функциональная модель TO-BE так же состоит из трех основных блоков:
1) Подпись документа внутренним исполнителем. На данном этапе «Внутренний исполнитель» подписывает подготовленный документ «Электронная заявка» простой электронной подписью через мобильное приложение SignPush. Сразу после подписи автоматически запускается комплексный бизнес-процесс согласования/внесения эл. заявки.
2) На вход во второй этап «Внутренний заказчик» получается бизнес-процесс согласования, который он может согласовать или не согласовать. При попытке согласования будет выполнена проверка подписания документа внутренним исполнителем. Согласовать документ можно только после того, как документ будет подписан всеми подписантами (внутренним исполнителем и внутренним заказчиком).
3) После согласования документа «Электронная заявка» запускается бизнес-процесс исполнение – для внесения документа «Заявка» ответственным по внесению заявок. Ответственный за внесение заявок обязан внести документ «Заявка», на основании документа «Электронная заявка».
Рисунок 20 – Функциональная модель TO-BE
3.2.3 Формализация процесса обработки данных
Интегрируемое решение, проектируемое и разрабатываемое в данной работе призвано оптимизировать работу участников бизнес-процессов в рамках процесса обработки и подписания внутреннего документа «Электронная заявка». Для определения целесообразности проведения разработки, необходимо разработать бизнес-процесс TO-BE.
Теперь весь процесс будет происходить в КИС CRM, без использования распечатки на бумаге, и подписываться документы будут простой электронной подписью, а не рукописной подписью. Опишем данный процесс:
Первой задачей процесса является заполнение содержания документа «Электронная заявка» внутренним исполнителем. Затем внутренний исполнитель подписывает документа простой электронной подписью с помощью мобильного приложения SignPush. После подписи автоматически запускается бизнес-процесс согласования заявки (пункт 9 ТЗ).
Следующим шагом является проверка содержания документа внутренним заказчиком. Результатом проверки могут быть два события: отправка на корректировку содержания и подпись документа. После подписи документа внутреннему заказчику необходимо согласовать задачу бизнес-процесса.
После согласования задачи запускается задача на внесение документа «Заявка» для ответственного за внесение заявок. Он обязан внести документ «Заявка» на основании подписанного документа «Электронная заявка». После внесения документа, ответственному за внесение заявок необходимо исполнить назначенную ему задачу бизнес-процесса.
Внутреннему исполнителю, как автору бизнес-процесса, приходят задачи на ознакомление с выполнением задача бизнес-процесса. После их завершения процесс подписания документа «Электронная заявка» простой электронной подписью считается успешно завершенным.
На рисунке 21 представлен бизнес-процесс TO-BE.
Рисунок 21 – Бизнес-процесс TO-BE
Рассмотрим описание бизнес-процесса TO-BE в таблице 7.
Таблица 7 – Описание модели бизнес-процесса TO-BE
Наименование операции,
исполнитель, сроки
Входы, выходы, требования
1
2
01 Корректировка содержания эл. заявки
Исполнитель:
Внутренний исполнитель
Сроки:
Любое время
Входы:
Отсутствуют
Выходы:
02 Подпись документа эл. заявка
Требования:
Корректно заполнить документ эл. заявка
02 Подпись документа эл. заявка
Внутренний исполнитель
Сроки:
После подписи документа
Входы:
01 Корректировка содержания эл. заявки
Выходы:
03 Проверка содержания заявки
Требования:
Подписать документ с помощью электронной подписи SignPush
03 Проверка содержания заявки
Исполнитель:
Внутренний заказчик
Сроки:
После подписи документа эл. заявки
Входы:
02 Подпись документа эл. заявка
Выходы:
04 Содержание корректное?
Требования:
Проверить корректность заявки
04 Содержание корректное?
Исполнитель:
Внутренний заказчик
Сроки:
После проверки содержания
Входы:
03 Проверка содержания заявки
Выходы:
(Да) 05 Подпись документа внутренним заказчиком
(Нет) 01 Корректировка содержания эл. заявки
Требования:
Утвердить или отправить на доработку
05 Подпись документа внутренним заказчиком
Исполнитель:
Внутренний заказчик
Сроки:
После проверки содержания
Входы:
04 Содержание корректное?
Выходы:
06 Согласование задачи
Требования:
Подписать документ с помощью электронной подписи SignPush
06 БП.Согласование задачи по подписанию (бизнес-процесс)
Исполнитель:
Внутренний заказчик
Сроки:
После подписи
Входы:
05 Подпись документа внутренним заказчиком
Выходы:
07 Внесение документа «Заявка»
09 БП.Ознакомление с согласованием задачи
Требования:
Согласовать задачу бизнес-процесса по согласованию заявки
Продолжение таблицы 7
Наименование операции,
исполнитель, сроки
Входы, выходы, требования
1
2
08 БП.Исполнение задачи внесения заявки
Исполнитель:
Ответственный за внесение заявок
Сроки:
В течение 2х дней после поступления задачи по внесению заявки
Входы:
07 Внесение документа «Заявка»
Выходы:
10 БП.Ознакомление с исполнением задачи внесения заявки
Требования:
Исполнить задачу внесения заявки по бизнес-процессу
09 БП.Ознакомление с согласованием Исполнитель:
Внутренний исполнитель
Сроки:
После получения задачи и 2 дня после
Входы:
09 Ознакомление с исполнением
Требования:
Ознакомиться с исполнением задачи внесения заявки
10 БП.Ознакомление с исполнением задачи внесения заявки
Исполнитель:
Внутренний исполнитель
Сроки:
После получения задачи и 2 дня после
Входы:
09 Исполнение задачи внесения заявки
Требования:
Ознакомиться с исполнением задачи внесения заявки
Разработанный бизнес-процесс устраняет все выявленные узкие места в существующем бизнес-процессе, подтверждая целесообразность реинжиниринга существующего процесса.
3.3 Проектирование интерфейса для программного решения
Необходимо спроектировать интерфейсы, для визуального понимания будущего процесса.
Проектирование интерфейса производилось в программе Balsamiq Mockups. Рассмотрим спроектированный интерфейс.
При нажатии на кнопку «Подписать» в документе «Электронная заявка» должна отобразиться форма подписания документа (рисунок 22). В ней дожна содержаться информация о дате подписи, какой документ подписывается, кем подписывается и каким типом подписи. Изменять можно только тип подписи и комментарий.
Рисунок 22 – Форма подписания документа
На форме подписания должна быть возможность выбора типа подписи (пароль, андроид, планшет, отпечаток пальца, КЭП). Форма подписания документа с выбором типа подписи показана на рисунке 23.
Рисунок 23 – Форма подписания документа с выбором типа подписи
После нажатия на кнопку «Подписать» – должно появится сообщение о том, что Push-уведомление на авторизацию было отправлено на ваше главное устройство, где выполнен вход в приложение SignPush. Сообщение представлено на рисунке 24.
Рисунок 24 – Сообщение об отправке запроса на авторизацию
Для информативности этапы подписи должны быть показаны на форме подписания (рисунок 25).
Рисунок 25 – Основное форма подписания документа
Затем после успешной авторизации будет выдано сообщение об отправке запроса на подписание документа.
Сообщение об отправке запроса на подписание представлена на рисунке 26.
Рисунок 26 – Сообщение об отправке запроса на подписание
После успешной подписи – на форме должен быть запущен бизнес-процесс согласования документа и на форме должна быть информация об успешной подписи. На рисунке 27 представлена форма подписания с информацией об успешной подписи и запуске бизнес-процесса.
Рисунок 27 – Форма подписания с информацией об успешной подписи
На этом подпись считается установленной и можно просто закрыть форму или ввести комментарий. Основной интерфейс спроектирован, далее перейдем к сбору технических требований и интеграции сервиса SignPush.
4 РАЗРАБОТКА РЕШЕНИЯ ПО ИНТЕГРАЦИИ
4.1 Интеграция простой электронной подписи с помощью сервиса SignPush
Рассмотрим разработанное решение по интеграции простой электронной подписи в КИС «CRM» при подписания внутренних документов компании ООО «Бизнес Системы» на примере документа «Электронная заявка».
Для открытия формы подписания документа на форму документа «Электронная заявка» была добавлена кнопка «Подписать». Видимость кнопки «Подписать» формируется динамически, согласно пункту 3 технического задания. Форма документа с кнопкой подписать представлена на рисунке 28.
Рисунок 28 – Форма документа «Электронная заявка» с кнопкой «Подписать»
При нажатии на кнопку «Подписать», если документ не проведен, будет показан вопрос о необходимости проведения документа перед подписанием. Вопрос о проведении документа перед подписанием представлен на рисунке 29.
Рисунок 29 – Вопрос о проведении документа перед подписанием.
Если документ был уже проведен, либо после нажатия кнопки «Да» на предыдущем окне – откроется форма подписания документа. При открытии формы будет выполнена проверка на наличие присоединенного файла печатной электронной заявки в формате pdf в «1С:Документооборот». Если файл отсутствует, то сформируем печатную форму документа, сохраним в формате pdf и прикрепим к внутреннему документу электронной заявки «1С:Документооборот». У документа «Электронная заявка» формирование печатной формы происходит в модуле формы. Код формирования печатной формы представлен ниже.
ПечатнаяФормаДокумента = ВладелецФормы.ПечатнаяФормаЗаявки();
Форма подписания документа представлена на рисунке 30.
Рисунок 30 – Форма подписания документа
Для подписания документа с помощью сервиса SignPush – необходимо на форме подписания указать тип подписи – «Андроид». На рисунке 31 представлен список выбора типа подписи.
Рисунок 31 – Форма подписания документа с выбором типа подписи
После выбора типа подписи «Андроид» – запускается проверка на наличие учетной записи SignPush у обоих подписантов (внутреннего исполнителя и внутреннего заказчика). Тут возможны 3 варианта развития событий:
1) Если у исполнителя (инициатора подписи) нет учетной записи – будет показано сообщение о том, что невозможно подписать документ с помощью SignPush (рисунок 32), дальнейшие проверки выполняться не будут. Листинг проверки наличия учетной записи у подписанта представлен ниже.
Функция ПроверкаПользователяПоEmail(АдресЭП = “”) Экспорт
ApiKey = ПолучитьAPIkey();
HTTPСоединение = Новый HTTPСоединение(ПолучитьПрефиксБазы() + “signpush.ru”,,,,,Истина);
HTTPЗапрос = Новый HTTPЗапрос(“/api/v4/user/” + АдресЭП);
HTTPЗапрос.Заголовки.Вставить(“apikey”, ApiKey);
HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(HTTPОтвет.ПолучитьТелоКакСтроку());
JSON = ПрочитатьJSON(ЧтениеJSON);
Ключ = Новый Структура;
Ключ.Вставить(“Ответ”, ?(JSON.status = 0, Истина, Ложь));
Ключ.Вставить(“Сообщение”, JSON.message);
ОбработатьОтветСервиса(JSON.status, Ключ.Сообщение);
Возврат Ключ;
КонецФункции
На рисунке 32 представлено сообщение о невозможности подписания документа.
Рисунок 32 – Сообщение о невозможности подписания документа
2) Если у внутреннего заказчика отсутствует учетная запись в сервисе SP, то подписать документ с помощью SP для внутреннего исполнителя будет возможно, и будет показан вопрос о подписи документа с помощью SP с указанием информации о том, что внутренний заказчик не сможет подписать документ с помощью SignPush (рисунок 33).
Рисунок 33 – Форма с сообщением о том, что у внутреннего заказчика отсутствует учетная запись в SignPush
3) Если все подписанты имеют учетную запись в сервисе SignPush, то в таком случае начнётся процесс авторизации в сервисе SignPush. В «CRM» был разработан регистр для хранения токенов (ключей) доступа к сервису SignPush. При первой успешной авторизации полученный токен будет сохранен в этот регистр для последующих авторизаций за текущие сутки. То есть при попытке подписать другой документ за текущие сутки, запрос авторизации не будет инициирован, а токен будет получен из разработанного регистра. Рассмотрим пример, когда документ подписывается первый раз за текущие сутки. В таком случае будет отправлен запрос на авторизацию. После отправки запроса на авторизацию – пользователю будет показано сообщение об этом событии, представленное на рисунке 34.
Рисунок 34 – Сообщение об отправке запроса на авторизацию
Текст процедуры отправки запроса на авторизацию представлен ниже.
Функция ОтправитьЗапросНаАвторизацию(Параметры) Экспорт
Ключ = Новый Структура;
Ключ.Вставить(“Ответ”, Ложь);
Ключ.Вставить(“Расшифровка”, Новый Структура);
ApiKey = ПолучитьAPIkey();
Если Параметры.МассивПолучаетелей.Количество() Тогда
Для Каждого ТекСтрока Из Параметры.МассивПолучаетелей Цикл
СтрокаПолучателей = СтрокаПолучателей + ТекСтрока + “,”;
КонецЦикла;
СтрокаПолучателей = Лев(СтрокаПолучателей, СтрДлина(СтрокаПолучателей) – 1);
СтрокаПолучателей = Прав(СтрокаПолучателей, СтрДлина(СтрокаПолучателей) – 1);
КонецЕсли;
HTTPСоединение = Новый HTTPСоединение(ПолучитьПрефиксБазы() + “signpush.ru”,,,,,Истина);
HTTPЗапрос = Новый HTTPЗапрос(“/api/v4/paper/auth”);
HTTPЗапрос.Заголовки.Вставить(“apikey”, ApiKey);
HTTPЗапрос.Заголовки.Вставить(“Content-Type”, “application/json”);
ТелоЗапроса = “{“
+ Символы.ПС + “””title””: “”” + СокрЛП(Параметры.Заголовок) + “””,”
+ Символы.ПС + “””is_public””: ” + 1 + “,”
+ Символы.ПС + “””email””: “”” + СокрЛП(Параметры.АдресЭП) + “””,”
+ Символы.ПС + “””hash””: “”” + СокрЛП(Параметры.HashСеанса) + “””,”
+ Символы.ПС + “””invite””: “”” + СтрокаПолучателей + “”””
+ Символы.ПС + “}”;
HTTPЗапрос.УстановитьТелоИзСтроки(ТелоЗапроса);
HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(HTTPОтвет.ПолучитьТелоКакСтроку());
JSON = ПрочитатьJSON(ЧтениеJSON);
Ключ.Ответ = ?(JSON.status = 0, Истина, Ложь);
Ключ.Сообщение = JSON.message;
Если JSON.Свойство(“errors”) Тогда
Ключ.Расшифровка = JSON.errors;
КонецЕсли;
Если JSON.Свойство(“auth_key”) Тогда
Ключ.Токен = JSON.auth_key;
КонецЕсли;
Возврат Ключ;
КонецФункции
При нажатии на кнопку «ОК» на предыдущем окне – окно закроется и на форме будет отображено текущее состояние подписания через SP (рисунок 35). Текущее состояние проверяется обработчиками ожидания. Код обработчика ожидания для проверки авторизации представлен ниже.
&НаКлиенте
Процедура ПроверитьАвторизациюОбработчик() Экспорт
Если Авторизован тогда
ОтключитьОбработчикОжидания(“ПроверитьАвторизациюОбработчик”);
Если ЭтоПервичнаяПодпись Тогда
Если СозданДокумент Тогда
ПодписатьДокументПоEmail(1);
Элементы.ТекущееСостояние.Заголовок = “Ожидание подписания документа…”;
Иначе
СоздатьДокумент(1);
Элементы.ТекущееСостояние.Заголовок = “Создание документа в SignPush…”;
КонецЕсли;
ИначеЕсли ТребуетсяСоздатьДокументНа1Лицо Тогда
СоздатьДокумент(1);
Элементы.ТекущееСостояние.Заголовок = “Создание документа в SignPush…”;
Иначе
ПодписатьДокументПоEmail(1);
Элементы.ТекущееСостояние.Заголовок = “Ожидание подписания документа…”;
КонецЕсли;
Иначе
Если ПроверкаАвторизацииБезОшибок() Тогда
ПодключитьОбработчикОжидания(“ПроверитьАвторизациюОбработчик”, 3, 1);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Рисунок 35 – Форма подписи документа с отображением состояния
подписания документа через SignPush
После появления сообщение об отправке запроса на авторизацию – на мобильном устройстве будет получено Push-уведомление на запрос авторизации, представленный на рисунке 36.
Рисунок 36 – Push-уведомление на мобильном устройстве
о необходимости подтверждения авторизации
Необходимо нажать на уведомление чтобы открыть форма приложения SignPush для подписи /авторизации, представленную на рисунке 37. В установленное место необходимо поставить свою подпись.
Рисунок 37 – Форма для подписи в приложении SignPush
После ввода подписи – она сравнивается с введенным эталоном и, если процент сходства менее 60% (значение 60% устанавливается по умолчанию и может быть изменено администратором SignPush), будет показана ошибка слишком низкого сходства подписи с эталоном и кнопкой повторить, которая представляет возможность ввести подпись ещё раз.
Сообщение об ошибке слишком низкого сходства подписи представлено на рисунке 38.
Рисунок 38 – Сообщение об ошибке низкого сходства подписи
Если же сходство подписи выше установленного лимита – будет выдано сообщение об успешной подписи и её процент сходства с эталоном подписи, установленном при первом входе в приложение (рисунок 39).
Рисунок 39 – Сообщение о сходстве текущей подписи с эталоном подписи
Затем из CRM будет отправлен запрос на подписание документа. Листинг процедуры подписания документа представлен ниже.
Функция ПодписатьДокументПоEmail(Параметры) Экспорт
Ключ = Новый Структура;
Ключ.Вставить(“Ответ”, Ложь);
Ключ.Вставить(“Расшифровка”, Новый Структура);
ApiKey = ПолучитьAPIkey();
HTTPСоединение = Новый HTTPСоединение(ПолучитьПрефиксБазы() + “signpush.ru”,,,,,Истина);
HTTPЗапрос = Новый HTTPЗапрос(“/api/v4/paper/document”);
HTTPЗапрос.Заголовки.Вставить(“apikey”, ApiKey);
HTTPЗапрос.Заголовки.Вставить(“token”, Параметры.token);
HTTPЗапрос.Заголовки.Вставить(“Content-Type”, “application/json”);
ТелоЗапроса = “{“
+ Символы.ПС + “””email””: “”” + СокрЛП(Параметры.АдресЭП) + “””,”
+ Символы.ПС + “””hash””: “”” + СокрЛП(Параметры.Hash) + “””,”
+ Символы.ПС + “””coordinates””: ” + СокрЛП(Параметры.Координаты) + “”
+ Символы.ПС + “}”;
HTTPЗапрос.УстановитьТелоИзСтроки(ТелоЗапроса);
HTTPОтвет = HTTPСоединение.Изменить(HTTPЗапрос);
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(HTTPОтвет.ПолучитьТелоКакСтроку());
JSON = ПрочитатьJSON(ЧтениеJSON);
Ключ.Ответ = ?(JSON.status = 0, Истина, Ложь);
Ключ.Сообщение = JSON.message;
Возврат Ключ;
КонецФункции
Для пользователя будет показано сообщение о том, что отправился запрос на подписание документа, представленное рисунке 40.
Рисунок 40 – Сообщение об отправке запроса на подписание документа
На мобильное устройство придет запрос на подписание (Push-уведомление). Там процедура точно такая же ка и при авторизации. После успешной подписи документа в мобильном приложении в CRM документ подпишется, запуститься бизнес-процесс согласования документа. На форме так же будет отображена внизу информация об успешном подписании, представленная на рисунке 41.
Рисунок 41 – Форма подписания документа после успешной подписи
После подписания идёт следующий алгоритм действий: проверяется двухфакторное подписание документа с помощью функции, которая возвращает строковое представление текущего состояния подписания документа («подписан», либо «подписан исполнителем»). Перечитываем форму владельца, т.к. могли быть изменения. Обновляем отображение кнопки «Подписать», обновляем динамический список подписей в документе, устанавливаем доступность кнопок управления присоединенными файлами. Если документ подписан только внутренним исполнителем – запускам бизнес-процесс согласования документа. А также изменяем отображение формы для отображения состояния о подписании документа. Код описанного алгоритма представлен ниже.
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
СостояниеДокумента = ПроверитьДвухФакторноеПодписание();
Если ЭтоЗапускИзВладельца Тогда
ВладелецФормы.Прочитать();
ВладелецФормы.ОбновитьОтображениеКнопкиПодписать();
ВладелецФормы.УстановитьПараметрыДинамическогоСписка_ПодписаниеДокументов();
ВладелецФормы.УстановитьДоступностьКнопокФайлов();
Если СостояниеДокумента = “Подписан” Тогда
//Состояние(“Отправка в ОРК…”);
Если НЕ ОтправкаВОРКУжеБыла Тогда
Если НЕ ВладелецФормы.Элементы.Найти(“ФормаОтправитьПоПочте”) = Неопределено Тогда
ВладелецФормы.Элементы.ФормаОтправитьПоПочте.Заголовок = “Отправить в ОРК”;
КонецЕсли;
ОтправкаВОРКУжеБыла = Истина;
КонецЕсли;
ИначеЕсли СостояниеДокумента = “Подписан исполнителем” Тогда
Если НЕ ОтправкаВОРКУжеБыла Тогда
Состояние(“Запуск бизнес-процесса согласования…”);
ВладелецФормы.СоздатьБП();
ОтправкаВОРКУжеБыла = Истина;
КонецЕсли;
Элементы.ТипПодписи.ТолькоПросмотр = Истина;
Элементы.Комментарий.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу;
Если НЕ ЭтоПервичнаяПодпись Тогда
Элементы.КомментарийРасширеннаяПодсказка.Заголовок = “Подпись успешно установлена.
|При необходимости можно ввести комментарий, либо просто закрыть форму.”
Иначе
Элементы.КомментарийРасширеннаяПодсказка.Заголовок = “Подпись успешно установлена. Бизнес-процесс автоматически стартовал.
|При необходимости можно ввести комментарий, либо просто закрыть форму.”;
// ++БС:ННС 05.11.2020 Изменим заголовки, ведь документ уже подписан. Теперь только сохраняем.
Элементы.ФормаКнопка1.Заголовок = “Сохранить и закрыть”;
Элементы.ФормаКнопка1.Отображение = ОтображениеКнопки.Текст;
Элементы.ФормаКнопка2.Заголовок = “Сохранить”;
Элементы.ФормаКнопка2.Отображение = ОтображениеКнопки.Текст;
ОповеститьОбИзменении(СсылкаНаДокумент);
КонецЕсли;
КонецПроцедуры
После закрытия формы подписания – форма документа электронная заявка будет обновлена. В комментарии будет записана информация о запуске бизнес-процесса и время его запуска. На форму документа «Электронная заявка» будут добавлены кнопки «Просмотр документа» и «Свойства документа», а так же строка с названием подписанного файла, который можно открыть и просмотреть. На рисунке 42 представлена форма документа «Электронная заявка» после того, как документ был подписан.
Рисунок 42 – Форма подписанного документа электронная заявка
При нажатии на кнопку «Свойства документа» откроется форма с информацией о подписи из сервиса SignPush. Ниже представлен код функции получения данных о подписях документа.
Функция ПолучитьСтатусДокумента(Параметры) Экспорт
Ключ = Новый Структура;
Ключ.Вставить(“Сообщение”, “”);
ApiKey = ПолучитьAPIkey();
HTTPСоединение = Новый HTTPСоединение(ПолучитьПрефиксБазы() + “signpush.ru”,,,,,Истина);
HTTPЗапрос = Новый HTTPЗапрос(“/api/v4/paper/document/” + СокрЛП(Параметры.hash));
HTTPЗапрос.Заголовки.Вставить(“apikey”, ApiKey);
HTTPЗапрос.Заголовки.Вставить(“token”, Параметры.token);
HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(HTTPОтвет.ПолучитьТелоКакСтроку());
JSON = ПрочитатьJSON(ЧтениеJSON);
Ключ.Ответ = ?(JSON.status = 0, Истина, Ложь);
Ключ.Сообщение = JSON.message;
Возврат Ключ;
КонецФункции
На рисунке 43 представлена форма просмотра свойств документа.
Рисунок 43 – Форма «Свойства документа»
При нажатии на кнопку «Просмотр документа» откроется печатная форма заявки с установленной подписью. Картинку подписи получаем с помощью API «SignPush». Форма разработана программно. Создание элементов идёт программно.
Картинки подписей получаем из API запросом информации о документе в формате Base64. Base64 – специальный метод кодирования информации в 64-разрядный код (6 бит), широко используемый в приложениях электронной почты для кодирования бинарных данных. Затем сохраняем в двоичные данные и из полученных двоичных данных формируем картинку подписи.
Код формирования картинок подписей представлен ниже.
Функция КартинкиПодписейДокументаSignPush(Ссылка, ВыводитьПодписиSP = Ложь) Экспорт
Если НЕ ВыводитьПодписиSP Тогда
Возврат Новый Структура();
КонецЕсли;
Набор = РегистрыСведений.ПодписаниеДокументов.СоздатьНаборЗаписей();
Набор.Отбор.Владелец.Установить(Ссылка);
Набор.Прочитать();
СтруктураКартинокПодписей = Новый Структура();
Если Набор.Количество() Тогда
Параметры = Новый Структура(“hash, token”, Набор[0].HashФайла, “”); // Передаём пустой токен, т.к. документы публичные и не требуется авторизация
Результат = ПолучитьСтатусДокумента(Параметры);
Если Не Результат.Ответ Тогда
Возврат СтруктураКартинокПодписей;
КонецЕсли;
ФизЛицоСотрудника = ПодписаниеДокументовСервер.ФизЛицоУчастника(Ссылка, “Исполнитель”);
ФизЛицоУчастникаЗаказчика = ПодписаниеДокументовСервер.ФизЛицоУчастника(Ссылка, “Заказчик”);
АдресЭПИсполнителя = ИнтеграцияСSignPush.ПолучитьEmailФизЛица(ФизЛицоСотрудника);
АдресЭПЗаказчика = ИнтеграцияСSignPush.ПолучитьEmailФизЛица(ФизЛицоУчастникаЗаказчика);
Для Каждого ТекСтрока Из Результат.Расшифровка.signatures Цикл
Если ЗначениеЗаполнено(ТекСтрока.signature) И ТекСтрока.email = АдресЭПИсполнителя Тогда
СтруктураКартинокПодписей.Вставить(“ПодписьИсполнителя”, Новый Картинка(Base64Значение(ТекСтрока.signature)));
КонецЕсли;
Если ЗначениеЗаполнено(ТекСтрока.signature) И ТекСтрока.email = АдресЭПЗаказчика Тогда
СтруктураКартинокПодписей.Вставить(“ПодписьЗаказчика”, Новый Картинка(Base64Значение(ТекСтрока.signature)));
КонецЕсли;
КонецЦикла;
КонецЕсли;
Возврат СтруктураКартинокПодписей;
КонецФункции
В процедуру формирования печатной формы документа «Электронная заявка» добавляем динамическое добавление/удаление картинок подписи, так как картинки подписи установлены на нужные места в макете, с нужным размером.
Макет печатной формы представлен на рисунке 44.
Рисунок 44 – Макет печатной формы документа электронная заявка
Процедура замены/удаления картинок подписей представлена ниже.
Процедура ВывестиПодписиSignPush(Ссылка, ВыводитьПодписиSP, ОбластьСПодписями) Экспорт
// ++БС:ННС 11.11.2020
СтруктураПодписей = ИнтеграцияСSignPush.КартинкиПодписейДокументаSignPush(Ссылка, ВыводитьПодписиSP);
НомерРисунка = ОбластьСПодписями.Рисунки.Количество()-1;
Пока НомерРисунка >= 0 Цикл
Рисунок = ОбластьСПодписями.Рисунки[НомерРисунка];
Если Рисунок.Имя = “ПодписьИсполнителя” Тогда
Если СтруктураПодписей.Свойство(Рисунок.Имя) Тогда
Рисунок.Картинка = СтруктураПодписей.ПодписьИсполнителя;
Иначе
ОбластьСПодписями.Рисунки.Удалить(Рисунок);
КонецЕсли;
ИначеЕсли Рисунок.Имя = “ПодписьЗаказчика” Тогда
Если СтруктураПодписей.Свойство(Рисунок.Имя) Тогда
Рисунок.Картинка = СтруктураПодписей.ПодписьЗаказчика;
Иначе
ОбластьСПодписями.Рисунки.Удалить(Рисунок);
КонецЕсли;
КонецЕсли;
НомерРисунка = НомерРисунка – 1;
// –БС:ННС 11.11.2020
КонецЦикла;
КонецПроцедуры
Печатная форма электронной заявки с подписью отображена на рисунке 45.
Рисунок 45 – Печатная форма документа с подписями
После подписи внутренним исполнителем запускается комплексный бизнес-процесс согласования/внесения заявки, шаблон которого представлен на рисунке 46.
Рисунок 46 – Шаблон комплексного процесса согласования/внесения электронной заявки
Данный шаблон действует для большинства работ, но есть некоторые проекты, где необходим дополнительный контроль ещё одного сотрудника. Для этого в проекте указывается ответственный. Форма проекта представлена на рисунке 47.
Рисунок 47 – Форма проекта с заполненным ответственным лицом
Для такого рода проектов разработан другой шаблон процесса, в котором добавлена ещё одна задача согласования для ответственного за проект. Шаблон комплексного процесса подписания/согласования эл заявки с контролирующим представлен на рисунке 48.
Рисунок 48 – Шаблон комплексного процесса подписания/согласования
с контролирующим
В бесшовной интеграции с «1С:Документооборот 8» нет возможности создавать задачи комплексных бизнес-процессов с изменением участников бизнес-процесса. Поэтому в «1С:Документооборот 8» была произведена доработка процедуры запуска комплексного бизнес-процесса через веб-сервис:
// ++БС:ННС 26.08.2020
Если БПОбъект.Этапы.Количество() = 2 Тогда
ШаблонБизнесПроцесса = БПОбъект.Этапы[0].ШаблонБизнесПроцесса.ПолучитьОбъект();
ШаблонБизнесПроцесса.Исполнители[0].Исполнитель = Справочники.Пользователи.НайтиПоНаименованию(Объект.stages[0].participants);
ШаблонБизнесПроцесса.Наименование = “Согласовать ” + БПОбъект.Наименование;
ШаблонБизнесПроцесса.НаименованиеБизнесПроцесса = ШаблонБизнесПроцесса.Наименование;
ШаблонБизнесПроцесса.Записать();
ШаблонБизнесПроцесса = БПОбъект.Этапы[1].ШаблонБизнесПроцесса.ПолучитьОбъект();
ШаблонБизнесПроцесса.Исполнители[0].Исполнитель = Справочники.Пользователи.НайтиПоНаименованию(Объект.stages[1].participants);
ШаблонБизнесПроцесса.Наименование = “Внести заявку по ” + БПОбъект.Наименование;
ШаблонБизнесПроцесса.НаименованиеБизнесПроцесса = ШаблонБизнесПроцесса.Наименование;
ШаблонБизнесПроцесса.Записать();
КонецЕсли;
Продолжение кода процедуры для запуска комплексного бизнес-процесса.
Если БПОбъект.Этапы.Количество() = 3 Тогда
ШаблонБизнесПроцесса = БПОбъект.Этапы[0].ШаблонБизнесПроцесса.ПолучитьОбъект();
ШаблонБизнесПроцесса.Исполнители[0].Исполнитель = Справочники.Пользователи.НайтиПоНаименованию(Объект.stages[0].participants);
ШаблонБизнесПроцесса.Наименование = “Согласовать ” + БПОбъект.Наименование;
ШаблонБизнесПроцесса.НаименованиеБизнесПроцесса = ШаблонБизнесПроцесса.Наименование;
ШаблонБизнесПроцесса.Записать();
ШаблонБизнесПроцесса = БПОбъект.Этапы[1].ШаблонБизнесПроцесса.ПолучитьОбъект();
ШаблонБизнесПроцесса.Исполнители[0].Исполнитель = Справочники.Пользователи.НайтиПоНаименованию(Объект.stages[1].participants);
ШаблонБизнесПроцесса.Наименование = “Согласовать проектную заявку ” + БПОбъект.Наименование;
ШаблонБизнесПроцесса.НаименованиеБизнесПроцесса = ШаблонБизнесПроцесса.Наименование;
ШаблонБизнесПроцесса.Записать();
ШаблонБизнесПроцесса = БПОбъект.Этапы[2].ШаблонБизнесПроцесса.ПолучитьОбъект();
ШаблонБизнесПроцесса.Исполнители[0].Исполнитель = Справочники.Пользователи.НайтиПоНаименованию(Объект.stages[2].participants);
ШаблонБизнесПроцесса.Наименование = “Внести заявку по ” + БПОбъект.Наименование;
ШаблонБизнесПроцесса.НаименованиеБизнесПроцесса = ШаблонБизнесПроцесса.Наименование;
ШаблонБизнесПроцесса.Записать();
КонецЕсли;
Первая задача согласования запускается после подписи внутренним исполнителем. Пример задачи согласования представлен на рисунке 49.
Рисунок 49 – Задача согласования эл. заявки внутренним заказчиком
При попытке согласовать внутренним заказчиком будет выполнена проверка на наличие подписи. Сообщение о необходимости подписать документ представлено на рисунке 50.
Рисунок 50 – Сообщение о необходимости подписать документ перед согласованием задачи
После согласования заявки внутренним заказчиком запускается задача на исполнение для ответственного по заявкам. Данный сотрудник обязан ввести документ «Заявка» на основании электронной заявки. На рисунке 51 представлена задача на внесение документа «Заявка».
Рисунок 51 – Форма задачи исполнения для ответственного по заявкам
После согласования и исполнения задач внутреннему исполнителю приходят задачи на ознакомление. После их завершения процесс подписания эл. заявки заканчивается.
4.2 Результат интеграции в структуре метаданных КИС «CRM»
В результате интеграции были добавлены следующие метаданные в КИС «CRM».
– Подсистема «SignPush». В неё будут включены все описанные ниже объекты.
– Общий модуль «ИнтеграцияСSignPush». В нем содержатся серверные процедуры и функции для работы с AIP SignPush. В нём содержатся процедуры «отправить запрос на авторизацию», «получить статус документа» и другие.
– Общий модуль «ИнтеграцияСSignPushКлиент». В нем содержатся клиентские процедуры и функции для работы с компонентой SignPush. В нём содержатся процедуры «установить место подписи», «открыть форму информация о документе» и другие.
– Общий модуль «ПодписаниеДокументовКлиент». В нем содержатся клиентские процедуры и функции для работы с подписанием документов. В нём содержатся процедуры «открыть форму подписания», «сформировать печатную форму документа на клиенте» и другие.
– Общий модуль «ПодписаниеДокументовСервер». В нем содержатся клиентские процедуры и функции для работы с подписанием документов. В нём содержатся процедуры «требуется прикрепление файла», «сформировать печатную форму документа на сервере» и другие.
– Общая форма «SP_ФормаИнформацииОДокументе» которая используется для отображения состояния подписания документа. Отображает информацию об имени устройства, дата подписи, координаты подписи, вероятность подписи (процент совпадения эталона и подписи документа).
– Регистр сведений «SP_ОсновныеНастройкиSignPush». Служит для хранения основных настроек («API_Key»).
– Регистр сведений «SP_ТокенПользователя». Служит для хранения токенов авторизации пользователей.
– Регистр сведений «SP_КоординатыОбъектов». Служит для хранения координат подписываемых объектов.
На рисунке 52 представлены метаданные подсистемы SignPush, добавленные в КИС «CRM».
Рисунок 52 – Метаданные подсистемы «SignPush»
На этом разработку интеграции можно считать завершенной. Об успешной интеграции простой электронной подписи во внутренний документооборот свидетельствует акт внедрения, подписанный генеральным директором компании ООО «Бизнес Системы». Акт внедрения представлен в приложении А.
Заключение
В результате выполнения магистерской диссертации на предприятии ООО «Бизнес Системы» был оптимизирован процесс подписания внутренних документов компании путем интеграции простой электронной подписи с помощью мобильного приложения SignPush. Оптимизация существующего процесса, согласно акту внедрения, позволила:
– сократить время на сбор и контроль подписей;
– полностью отказаться от использования бумаги для подписания внутренних документов;
– повысить достоверность идентификации подписи;
В результате работы были выполнены все поставленные задачи:
– Выполнен анализ объекта автоматизации, которым является IT-компания ООО «Бизнес Системы». Компания ООО «Бизнес Системы», занимается автоматизацией управления и учета на базе программных продуктов «1С». Компания успешно работает в сфере информационных технологий с 2004 года. С 2006 года «Бизнес Системы» является официальным партнером ведущего российского разработчика – фирмы «1С». Организационная структура компании состоит из 7 отделом, которые занимаются поддержкой, консультаций, разработкой программ на платформе «1С». документ «Электронная заявка». Процесс подписания внутренних документов рассматривался на примере документа «Электронная заявка», который используется для отражения выполненных работ сотрудников в корпоративной информационной системе «CRM».
– Описан существующий процесс обработки и подписания документа «Электронная заявка» в нотациях IDEF0, BPMN. Был построен и описан существующий бизнес-процесс обработки и подписания документа «Электронная заявка». В бизнес-процессе были выявлены следующие узкие места информационного уровня: в процессе подписания, как документ, используется распечатанная печатная форма документа «Электронная заявка»; документы подписываются рукописной подписью, а не электронной.
– Проведен реинжиниринг существующего процесса, с целью устранения выявленных ранее узких мест. В результате реинжиниринга все узкие места были устранены, тем самым подтвердив необходимость внедрения нового процесса в производство.
– Проведен анализ корпоративной информационной системы «CRM». КИС «CRM» является самописной конфигурацией на платформе «1С», которая была разработана для удовлетворения нужд компании.
– Определены все технические требования для нового процесса контроля и подписи документа «Электронная заявка» простой электронной подписи с помощью сервиса SignPush.
– Спроектирован интерфейс предлагаемого решения в программе Balsamiq Mockups.
– В КИС «CRM» было разработано программное решение по интеграции в процесс контроля и подписи документа «Электронная заявка» простой электронной подписи с помощью мобильного приложения SignPush.
– Разработанное программное решение было успешно внедрено в производственный процесс. Об этом свидетельствует составленный акт внедрения.
Результаты магистерской диссертации полностью соответствуют решению поставленных задач и достижению цели.
Библиографический список
1 Российская Федерация. Законы. О персональных данных: федер. Закон: [принят Гос. Думой 8 июля 2006 г.: одобр. Советом Федерации 14 июля 2006 г.]. – Собрание законодательства РФ. – 2006. – №31. Ст 3451
2 Российская Федерация. Законы. Об информации, информационных технологиях и о защите информации: федер. Закон: [принят Гос. Думой 8 июля 2006 г.: одобр. Советом Федерации 14 июля 2006 г.]. – Собрание законодательства РФ. – 2005. – №31. Ст 2431
3 Российская Федерация. Законы. Об электронной подписи: федер. Закон: [принят Гос. Думой 25 марта 2011 года.: одобр. Советом Федерации 30 марта 2011 года.]. – Собрание законодательства РФ. – 2011. – №31. Ст 2
4 Положение о выпускных квалификационных работах СМК УМУ ПГИА 2016, принятого на заседании учёного совета ФГБОУ ВО «СибАДИ» 02.02.17 протокол №18
5 Волкова, В. Н. Теория систем и системный анализ: учебник для академического бакалавриата / В. Н. Волкова, А. А. Денисов. – 2-е изд., перераб. и доп. – М.: Издательство Юрайт, 2018. – 462 с. – (Серия: Бакалавр. Академический курс). – ISBN 978-5-534-02530-9. – Режим доступа: www.biblio-online.ru/book/7057E48D-241E-4EF2-B636-5C8 (дата обращения: 03.11.2020)
6 Долганова, О. И. Моделирование бизнес-процессов: учебник и практикум для академического бакалавриата / О. И. Долганова, Е. В. Виноградова, А. М. Лобанова; под ред. О. И. Долгановой. – М.: Издательство Юрайт, 2018. – 289 с. – (Серия: Бакалавр. Академический курс). – ISBN 978-5-534-00866-1. – Режим доступа: www.biblio-online.ru/book/F2743D07-D00B-40E6-A294-F82 (дата обращения: 03.11.2020)
7 Остринская, Л. И. Проектирование и разработка информационных систем [Электронный ресурс] : учебно-методическое пособие по подготовке и выполнению выпускной квалификационной работы : [направление «Прикладная информатика» для всех форм обучения] / Л. И. Остринская, С. Ю. Пестова ; СибАДИ, кафедра “Прикладная информатика в экономике”. – Электрон. дан. – Омск : СибАДИ, 2017. – 105 с (дата обращения: 03.11.2020)
8 Проектирование информационных систем: учебник и практикум для академического бакалавриата / Д. В. Чистов, П. П. Мельников, А. В. Золотарюк, Н. Б. Ничепорук; под общ. ред. Д. В. Чистова. – М.: Издательство Юрайт, 2018. – 258 с. – (Серия: Бакалавр. Академический курс). – ISBN 978-5-534-00492-2. – Режим доступа: www.biblio-online.ru/book/DB21D667-C845-49E2-929B-B87 (дата обращения: 03.11.2020)
9 Радченко М.Г. 1С:Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы / Радченко М.Г., Хрусталева Е.Ю. – М.: Издательство. ООО «1С-Паблишинг», 2013. – 330с.
10 Разработка управляемого интерфейса / В.А. Ажеронок, А.В. Островерх, М.Г. Радченко, Е.Ю. Хрусталева. – М.: Издательство. ООО «1С-Паблишинг», 2010. – 400-420 стр.
11 Рыбальченко М. В. Архитектура информационных систем: учебное пособие для вузов / М. В. Рыбальченко. – М.: Издательство Юрайт, 2018. – 91 с. – (Серия: Университеты России). – ISBN 978-5-534-01159-3. – Режим доступа: www.biblio-online.ru/book/453CB056-891F-4425-B0A278FF
12 Стружкин Н. П. Базы данных: проектирование: учебник для академического бакалавриата / Н. П. Стружкин, В. В. Годин. – М.: Издательство Юрайт, 2018. – 477 с. – (Серия: Бакалавр. Академический курс). – ISBN 978-5-534-00229-4. – Режим доступа: www.biblio-online.ru/book/BF8DDE6E-054D-4BB4-A6FA-2E9
13 1С:Библиотека стандартных подсистем [сайт]. – Режим доступа: https://v8.1c.ru/tekhnologii/standartnye-biblioteki/1s-biblioteka-standartnykh-podsistem/ (дата обращения: 05.11.2020)
14 1С:Документооборот 8 [сайт]. – Режим доступа: https://v8.1c.ru/doc8/ (дата обращения: 05.11.2020)
15 1С:ИТС [сайт]. – Режим доступа: http://its.1c.ru/db/aboutits#content:13:hdoc (дата обращения: 03.11.2020)
16 1С-АРБИС: Управление фирмой-франчайзи [сайт]. – Режим доступа: https://arbis29.ru/products/1s-arbis-upravlenie-firmoy-franchayzi/ (дата обращения: 05.11.2020)
17 Balsamiq Mockups [сайт]. – Режим доступа: https://balsamiq.com/ (дата обращения: 03.11.2020)
18 Business Studio [сайт]. – Режим доступа: https://www.businessstudio.ru/ (дата обращения: 15.10.2020)
19 Microsoft Office Visio [сайт]. – Режим доступа: https://bsomsk.ru/ (дата обращения: 05.11.2020)
20 SignPush [сайт]. – Режим доступа: https://signpush.ru/ (дата обращения: 29.10.2020)
21 Официальный сайт компании ООО «Бизнес Системы» [сайт]. – Режим доступа: https://bsomsk.ru/ (дата обращения: 05.11.2020)
22 Интеграция 1С:Документооборот [сайт]. – Режим доступа: https://v8.1c.ru/doc8/integratsiya-s-lyubymi-resheniyami/ (дата обращения: 05.11.2020)
23 Клиент-серверный вариант работы [сайт]. – Режим доступа: https://v8.1c.ru/platforma/klient-servernyy-variant-raboty/ (дата обращения: 05.11.2020)
24 Настройка прав пользователей в 1С 8.3 [сайт]. – Режим доступа: https://1s83.info/administrirovanie/nastroyka-prav-polzovateley-v-1s-8-3.html (дата обращения: 24.10.2020)
25 Объектно-ориентированный подход [сайт]. – Режим доступа:http://life-prog.ru/2_35570_sushchnost-ob-ektno-orientirovanoda.html (дата обращения: 24.10.2020)
26 Описание API SignPush [сайт]. – Режим доступа: https://signpush.ru/api/docs#/Device/get_device (дата обращения: 05.11.2020)
27 Приложение SignPush [сайт]. – Режим доступа: https://play.google.com/store/apps/details?id=com.bsomsk.signpush (дата обращения: 29.10.2020)
28 Программирование в 1С: Предприятие 8.3 [сайт]. – Режим доступа: http://programmist1s.ru/otboryi-v-1s-8-3-upravlyaemyie-formyi/ (дата обращения: 25.10.2020)
29 Публикация на веб-сервере [сайт]. – Режим доступа https://its.1c.ru/db/pubmobile1c#content:22:hdoc:_top:публикация%20на%20веб-сервере (дата обращения: 29.10.2020)
30 Разработка функциональной модели [сайт]. – Режим доступа: https://officeapplications.net/microsoft-visio/ (дата обращения: 05.11.2020)
31 Что такое API? [сайт]. – Режим доступа: https://skillbox.ru/media/code/chto_takoe_api/ (дата обращения: 05.11.2020)
Приложение А
Акт внедрения
72
66