Привет, Хабр! Меня зовут Евгений Янес, я ведущий руководитель IT-направления в СберТехе — компании, которая строит Platform V, цифровую платформу Сбера для разработки бизнес-приложений.  В статье расскажу, как мы создали Platform V Incident Manager — продукт для автоматизации процесса обработки ошибок, а за счёт функции обработки связанных инцидентов оптимизировали работу сразу нескольких бизнес-процессов. Один из ключевых показателей в финтехе — пользовательский опыт. Положительный опыт — не только простота, удобство, скорость, но ещё и непрерывность взаимодействия. Любой, даже самый сложный бизнес-процесс, состоящий из множества операций, должен завершаться успешно, чтобы клиент получил нужный результат. В Сбере, чья экосистема состоит из десятков продуктов и услуг, таких сложных процессов очень много. Чаще всего они исполняются автоматически. Но бывают и нестандартные случаи, когда в процессах задействованы сервисы, находящиеся вне контура банка. Например, в СберЗдоровье есть интеграции для обмена данными с медицинскими информационными системами ЕСИА, ЕГИСЗ или частными клиниками. И если информационная система клиники-партнёра окажется недоступной, то есть возникнет сбойная ситуация, это приведёт к неисполнению процесса, а клиент не сможет записаться к врачу.  Предвидеть такие инциденты сложно, но с ними нужно уметь работать: фиксировать, обрабатывать и исправлять незаметно для пользователей. Причём простого решения для автоматической регистрации сбойных ситуаций в этом случае недостаточно. Нужна частичная замена второй линии поддержки — продукт, который сможет самостоятельно обрабатывать инциденты по заданному сценарию и помогать предвосхищать их там, где это возможно. Этим продуктом для Сбера стал Platform V Incident Manager — инструмент автоматизации процесса обработки сбойных ситуаций. Он позволяет хранить полную информацию о сбоях, историю изменений и метаданные пользователей, работающих с отклонениями, а также обрабатывать инциденты в ручном и автоматическом режиме. Задачи, под которые изначально разрабатывался продукт: максимальная автоматизация и упрощение процесса обработки инцидентов; оптимизация работы команд сопровождения: им нужен был инструмент с удобным интерфейсом, возможностью легко находить узкие места в процессах и действовать быстро даже в случае неизвестных ошибок; соблюдение высоких стандартов безопасности — реализация отказоустойчивой автоматизированной системы с разграничением прав доступа и отсутствием потери передаваемых данных об инцидентах. Platform V Incident Manager — сервис полного цикла для работы с отклонениями. Он принимает инциденты, возникшие при выполнении бизнес-процессов, обрабатывает их согласно настройкам (автовызов корректирующих сценариев/ручной разбор пользователем) и отправляет сотрудникам уведомления о сбойных ситуациях. Есть пользовательский интерфейс для ручной обработки инцидентов и возможность составлять отчёты о результатах обработки ошибок, аналитические данные по ошибкам бизнес-процесса. При работе с Platform V Incident Manager отклонения можно передавать напрямую от бизнес-процесса или через систему бизнес-мониторинга. Если при исполнении операции бизнес-процесса бизнес-мониторинг идентифицирует расхождение фактической работы процесса с должной, то мониторинг фиксирует отклонение и передаёт его на дальнейшую обработку в Platform V Incident Manager. Дальше снова несколько вариантов: автоматический вызов корректирующего сценария или отправка ошибки на ручной разбор. Наш продукт умеет фиксировать отклонения, вызывать корректирующий сценарий, уведомлять сотрудников. Но даже этого недостаточно, если речь идёт о процессе, в котором, помимо внешних сервисов, участвуют ещё и разные подразделения банка.  Один из таких процессов — оплата сотовой связи. В ней, помимо онлайн-приложения и самого банка, участвуют провайдер и оператор сотовой связи. Каждый участник отвечает за свой участок, тесно связанный с предыдущим. Приложение обеспечивает наличие услуги в базе данных и формирует запрос, банк передаёт запрос провайдеру и регистрирует платёж, провайдер проверяет платёж и передаёт банку и клиенту статус о выполнении или ошибке.  А теперь представьте, что провайдер сменил формат ответа, и у клиента в приложении перестали проходить платежи.  Приходится вручную искать взаимосвязи между событиями, выстраивать правильную последовательность обработки и, возможно, пересобирать процесс с нуля. На это уходят силы, время. А клиенты заваливают поддержку гневными обращениями.  Для таких ситуаций мы внедрили в Platform V Incident Manager функцию обработки связанных инцидентов. Она позволяет выявить группу ошибок, выстроить между ними взаимосвязь и запустить каскадную обработку, при которой устранение одной или нескольких ошибок запускается только после устранения исходной причины. В нашем примере вместо автоматического повторения операции, которое создало бы лишнюю нагрузку на сервис, Сбер, получив уведомление об ошибке, фиксирует его в Platform V Incident Manager и передаёт информацию об отклонении в фабрику приложения. Последняя также фиксирует информацию об инциденте и отмечает, что в сервисе уже есть подобный инцидент.  Platform V Incident Manager автоматически связывает события, разделяя ошибки на главные и зависимые: главной становится ошибка со стороны провайдера, зависимыми — ошибки платежа и запроса. Как только главное отклонение будет устранено ― система примет новый формат ответа провайдера — сервис применит корректирующий сценарий, последовательно исправит остальные ошибки и перезапустит операцию. Быстро и незаметно для большинства клиентов.   Важно отметить, что Platform V Incident Manager создавался и развивался с ориентиром на пользователей — службы сопровождения в банке. Поэтому мы сделали процесс максимально гибким и настраиваемым. Процесс связывания инцидентов создаётся индивидуально под каждый бизнес-процесс: мы запрашиваем у сотрудников описания инцидентов и на их основе создаём зависимости, которые позволяют связать ошибки и успешно их обработать. Кроме склеивания можно настроить множество других параметров. Например, количество повторов операции, которое необходимо совершать до завершения бизнес-процесса, или способ обработки инцидентов: все главные — вручную, все зависимые — автоматически или наоборот.  Мы реализовывали функцию в первую очередь для себя, так как нужно было максимально упростить, автоматизировать этот процесс: снизить количество ручного заведения заявок, повысить скорость обработки отклонений, сделать процесс обработки инцидентов более прозрачным.  К тому же данная функциональность ещё и является уникальной, причём не только на российском рынке автоматизации обработки сбойных ситуаций, но также и на зарубежном. В Сбере продукт используют более чем в 70 бизнес-процессах, в том числе в среде финансов, благосостояния, розничного и корпоративно-инвестиционного бизнеса.  Нам удалось создать инструмент, который оптимально заходит на вторую линию поддержки. Дело в том, что Platform V Incident Manager заточен под работу с инцидентами, связанными с нарушениями логики работы бизнес-процесса, а также техническими ошибками. Такие инциденты чаще всего попадают именно на вторую линию, к специалистам, которые обеспечивают сопровождение сервиса, устранение ошибок при работе бизнес-процесса, настраивают тестовые среды, устанавливают патчи.  Сократив время выполнения этих запросов, можно серьёзно разгрузить сотрудников сопровождения. Итоги эксплуатации в Сбере показали, что из сотен тысяч отклонений, ежемесячно регистрируемых в Platform V Incident Manager, 100% ошибок сохраняются и успешно обрабатываются. А 96% из этого количества закрываются автоматически. В одном из бизнес-процессов такая автоматизация позволила сэкономить время 51 сотрудника: вместо рутины по разбору сбойных ситуаций они смогли заняться куда более интересными задачами.  В общем, Platform V Incident Manager точно нужен, если важна непрерывность работы систем, приложений или сервисов, ограничено время реагирования на инциденты, нужна удобная система: дружелюбный интерфейс, своевременные уведомления, делегирование и эскалация отклонений. При этом использовать инструмент можно не только в банковской отрасли, но и в любом бизнесе, независимо от сферы деятельности и численности команды.