Или рассказ о том, что «Мал золотник, да дорог»
Этот пост Вам интересен, если:
-
Вы сотрудник Банка;
-
Вы работаете в ИТ подразделения Банка;
-
Задача, о которой пойдет речь, еще не автоматизирована;
-
Банк обслуживает физических лиц;
-
В Банке используется ПО АБС «Диасофт»;
-
В Банке используется ПО КОМИТА;
-
Банк ежедневно взаимодействует с ИФНС согласно 440-п ЦБ РФ.
Интро
С этой задачей я столкнулся абсолютно случайно. Мне ее подкинул старый знакомый, сотрудник ИТ не очень крупного универсального Банка, уверенно входящего в ТОП 100, но находящийся ближе к концу данного списка. Задача относится именно к Розничному сегменту бизнеса. В Банке есть команда своих программистов, но они расписаны на несколько месяцев вперед на исполнение более крупных и приоритетных (с точки зрения «бизнеса» задач. А сама задача организации обмена согласно 440-п ЦБ РФ, упала на моего знакомого неформально, когда пользователи пожаловались на свою тяжелую внутрибанковскую жизнь и он по доброте душевной решил им помочь.
Верхнеуровневый бизнес-процесс
Бизнес-процесс, о котором пойдет речь далее, выглядит следующим образом:

Если его тезисно описать словами, то он выглядит следующим образом:
Ежедневно, в рамках исполнения 440-п ЦБ РФ:
(»О порядке направления в банк отдельных документов налоговых органов, а также направления банком в налоговый орган отдельных документов банка в электронной форме в случаях, предусмотренных законодательством Российской Федерации о налогах и сборах»
ИФНС отправляет по электронной почте запросы в Банк по ФЛ (Физическим Лицам) у которых открыты счета в вашем Банке. Данные запросы попадают в Диасофт, обрабатываются там, и после этого с использованием системы защищенного документооборота КОМИТА, улетают по электронной почте обратно в ИФНС. При этом, в зависимости от клиентской базы банка, таких запросов ежедневно может приходить 100 | 1 000 | 10 000. А так же существуют штрафные санкции регулятора за непредоставление ответа и\или за несвоевременное предоставление ответа. И, понятное дело, Банк заинтересован этого избежать.
Шаги бизнес-процесса
Алгоритм действий пользователя следующий:
-
каждое утро (365 дней в году) производится выгрузка данных для отправки данных из Диасофт;
-
производится шифрование и подписание файлов для отправки. Учет самих файлов для отправки по составу и количеству осуществляется в документообороте КОМИТЫ;
-
т.к. АРМ обмена данными с ИФНС и сервисы банка находятся в разных сегментах сети, разделенных на физическом уровне, перенос зашифрованных и подписанных файлов производится ногами и руками сотрудника на flash-носителе в защищенную сеть Банка;
-
после этого на защищенном АРМ производится создание писем в MS Outlook с файлами отчетности, Пользователь вручную создает каждое письмо с предопределенным адресом получателя, темой письма и последовательно вкладывает в письмо соответствующий архив с данными и производит отправку email.
(безумное колличество ручной работы пользователя и отсутствие полноценной системы контроля отправок, собственно и являются предметом нашей микро-автоматизации).
-
далее производится получение квитков из ЦБ РФ обратным письмом ИФНС подтверждающим факт доставки и получения корреспонденции;
(здесь, к сожалению, мы и не сможем их обрабатывать и учитывать, поскольку файлы ответа о факте доставки зашифрованы и содержимое их нам недоступно)
-
далее происходит обратный поток бизнес-процесса, в рамках которого производится выгрузка полученных квитков из MS Outlook в папку для переноса в рабочую сеть Банка;
-
перенос файлов производится на flash-носителе, руками и ногами ответственного сотрудника Банка;
-
происходит загрузка квитков в КОМИТУ, расшифровка и снятие ЭЦП;
-
Комита сопоставит отправленные файлы с полученными квитками, статус документов в КОМИТЕ поменяется, все Ok.
-
Подгрузка квитанций в Диасофт уже является штатной автоматизированной процедурой и не требует нашего участия.
ROI или то, почему мы взялись за реализацию задачи
Лень, двигатель прогресса. Поэтому, перед любой автоматизацией, предполагающей затраты — сроки \ деньги, мы смотрим и пытаемся понять экономическую эффективность. Наш расчет производится через трудозатраты и ФОТ сотрудников Банка.
Расчетные трудозатраты персонала Банка на взаимодействие с ИФНС

Расчет выполнен исходя из получения 500 ежедневных запросов. Но, как я упомянул выше, для каждого Банка своя экономика — ежедневно может приходить 100 | 1 000 | 10 000. В данном случае Банк небольшой, поэтому запросов ИФНС приходит от 400 до 600 ежедневно.
Расчёт ROI
В расчете ROI (от англ. return on investment) мы исходим из следующих допущений и ограничений:
Сама по себе задача низкоквалифицированная, но требующая внимательности и педантичности ее исполнения. Поэтому ЗП сотрудника по логике небольшая, порядка 60 000 рублей ежемесячно. Фактически не знаю, это мое предположение, но реально может быть и выше. С учетом налогов на ЗП (48%), содержание одного такого сотрудника обходится Банку в 88 800 рублей в месяц, или 1 065 600 рублей ежегодно.
Далее считаем КПД сотрудника, т.к. он не робот и это значение не может равняться 100%. Примем допущение, что это очень работоспособный и ответственный сотрудник и его КПД составляет оптимистичные 75%, хотя по факту значительно ниже. Пруф по статистике КПД находится здесь. Таким образом, наш рассчитанный фонд трудоемкости увеличивается на 25% и составит 11,25 рабочих часов ежедневно.
Становится понятно, что для решения этой задачи банку требуются минимум 2-е штатных единицы, + 1 для резервирования, на случай отпусков и болезней. Общий годовой ФОТ группы из 3-х человек составит 88 800 х 12 х 3 = 3 196 800 рублей ежегодно. Это стоимость для Банка функции дистанционного общения с ИФНС по теме 440-П ЦБ РФ. Для упрощения оставляем за бортом человеческий фактор (ошибки отправки \ несвоевременная отправка ответов на запрос ИФНС) и как следствие репрессивные штрафы регулятора. По моей информации штрафы за одно нарушение менее 500 000 выписываются крайне редко, чаще больше.
Кстати говоря, в Диасофт есть модуль, отвечающий за решение этой простой задачи, но стоимость решений Диасофт, как моно-вендора, обычно космическая, требует затрат на приобретение ПО, внедрение и ежегодное сопровождения. Т.е. в варианте Диасофт «малой кровью» обойтись не получится.

Таким образом сравнение возможных затрат Банка выглядит таким образом:

Опираясь на этот реалистичный расчет, мы ушли в Банк договариваться по цене и срокам разработки скрипта, а также формировать Техническое задание.
«Хорошие люди всегда могут договориться.» Макс Фрай — Сборник Чужак
Техническое задание
Описание целевого бизнес-процесса автоматизации приведу кратко, выдержками из ТЗ:
-
ПАО «ХХХ Банк» обеспечивает получение входящего запроса со стороны ИФНС и обеспечивает его последовательную обработку внутри банковских систем. Результатом обработки каждого запроса ИФНС является результирующий файл, выгружаемый ответственным исполнителем банка из АБС (Диасофт).
-
Файл или набор файлов содержащий ответ на запрос ИФНС, относящихся к запросу или нескольким запросам выгружается в локальную исполнителем банка в выделенную директорию, после чего загружается в программу ПО КОМИТА с помощью которой шифруется подписывается ЭЦП.
-
Результатом исполнения п.2 является выгруженный готовый к отправке результирующий файл (архив) \ либо набор файлов, который ответственный исполнитель банка копирует на флеш-носитель информации предназначенный для физической транспортировке между сегментами сети ПАО «XXX Банк» и последующей отправки в ИФНС.
-
Ответственный исполнитель банка переносит файл \ пакет сформированных файлов с помощью флеш-носителя на АРМ IP: ХХХ.ХХ.ХХ.ХХ и перемещается посредством проводника Windows в директорию C:\IFNS_in, запускает скрипт отправки.
-
Результатом работы запущенного скрипта является автоматизированное взаимодействие с почтовым клиентом MS Outlook, в рамках исполнения которого:
-
создается электронное письмо с темой – «Отчет для ФНС» и адресом получателя fns440@ext-gate.svk.mskgtu.cdr.ru.
-
происходит вложение в тело письма файла из директории C:\IFNS_in;
-
происходит отправка письма.
-
при этом, в случае если в директории C:\IFNS_in содержится набор из нескольких файлов, скриптом обеспечивается последовательная отправка каждого файла с исполнением п.п. a, b, c;
-
В зоне ответственности Исполнителя находится:
-
Разработка Технического задания;
-
Согласование Технического Задания с Заказчиком;
-
Разработка скрипта с использованием языка программирования Python;
-
Установка скрипта на АРМ Заказчика и его настройка, либо разработка инструкции администратора по установке скрипта на АРМ пользователя силами Заказчика;
-
Разработка инструкции пользователя;
-
Разработка описания скрипта для обеспечения возможности доработки скрипта исполнителями Заказчика;
-
Приемка-сдача работ.
Ограничения рамок проекта:
В ответ на каждое письмо, отправленное в рамках исполнения скрипта, из ИФНС приходит ответное письмо, содержащее две вложенные квитанции:
-
транспортная;
-
с результатом обработки.
Данные ответные квитанции (файлы) должны быть сохранены ответственным исполнителем Банка на Flash-носителе и перемещены для целей загрузки обратно ПО КОМИТА, с целью контроля результатов отправок. Количественная и качественная сверка полученных со стороны ИФНС запросов, ответов, отправленных со стороны Банка в ИФНС производится средствами ПО КОМИТА.
Результат работ
Результатом наших работ явился небольшой исполняемый файл — run_transport.bat, в котором зашита вся бизнес-логика рабочего бизнес-процесса. Исполняемый файл по умолчанию помещается в папку С:\transport. И для удобства пользователя, ярлык с run_transport.bat помещается на рабочий стол.
Согласитесь, все любят большую красную кнопку, нажав на которую без лишних усилий получаешь результат.
Все настройки находятся в файле config.ini:
[OUTLOOK]
IFNS_OUT=C:\transport\IFNS_OUT*.txt
LOGDIR=C:\transport\LOG
ARCHIVE=C:\transport\ARCHIVE
SEND_FROM=
SEND_TO=email@example.ru
BODY_TEXT=Тело сообщения
SUBJECT=Заголовок сообщения
Скрипт отправляет файлы из папки IFNS_OUT через настроенный OUTLOOK на адрес SEND_TO, а все действия логируются в папку LOGDIR. Все передаваемые файлы после отправки помещаются в папку ARCHIVE, в подпапку соответствующего дня.
Вуаля, разработка закончена и инсталлирована на АРМ, клиент счастлив и готов подбрасывать новые темы «на подумать».
Резюме
Если у вас стоит подобная задача, welcome в комментарии.
Felix Leiter to James Bond : «Мы не жадные и не бедные.» Мартин Кэмпбелла Казино Рояль 2006
ссылка на оригинал статьи https://habr.com/ru/post/694866/
Добавить комментарий