Я не считаю процесс автоматизированным, пока сотрудник не может объяснить решение системы

Я не считаю процесс автоматизированным, пока сотрудник не может понять, почему система приняла решение. Кнопка может сработать без человека, статус — поменяться сам, письмо — уйти вовремя. Но если в спорной ситуации никто не может восстановить логику, автоматизация превращается в ещё одного молчаливого коллегу: все видят последствия, а спросить не у кого.
Это особенно заметно в процессах, где решение влияет на деньги, срок, клиента или безопасность. Система отклонила заказ, поставила задачу на паузу, не дала провести документ, отправила клиента в другую очередь. Само действие может быть правильным. Проблема начинается, когда человеку остаётся только догадываться: это ошибка данных, правило, ограничение прав или чей-то старый обходной путь?
Автоматическое не значит бесконтрольное
У автоматизации есть соблазнительная сторона: она избавляет от повторяющихся действий. Но правило не снимает с компании ответственность за решение. Оно лишь переносит её в момент, когда правило было придумано, согласовано и включено.
Представим простой случай. Заказ автоматически попадает на дополнительную проверку, если сумма выше заданного порога или клиент просрочил оплату. Менеджер видит только статус «ожидает проверки» и начинает звонить в бухгалтерию, склад и поддержку. Через пятнадцать минут заказ всё ещё стоит, хотя системе было достаточно показать: «порог суммы превышен; следующая роль — финансовый контролёр».
Разница кажется косметической, но на деле это разница между работой и поиском виноватого. Сотрудник не обязан помнить все правила компании. Зато система обязана не прятать то правило, по которому она остановила или направила операцию.
Я стараюсь смотреть на автоматическое решение как на короткое объяснение, которое должно пережить отсутствие автора настройки. Если это объяснение нельзя дать одной-двумя нормальными фразами, правило, скорее всего, ещё слишком сырое.
Сначала назвать решение, а не техническое действие
В командах часто обсуждают автоматизацию техническими глаголами: «создадим задачу», «поставим webhook», «добавим проверку». Полезнее начать раньше: какое решение принимает бизнес и какие условия для него действительно важны?
Например, не «система должна отправить письмо при задержке», а «клиенту нужно сообщить о риске задержки до того, как он сам узнает о нём из молчания». Тогда появляется нормальный разговор: что считается риском, из каких данных это видно, кто отвечает за исключение и когда письмо отправлять не нужно.
Так же стоит различать событие и вывод. Событие: остатка недостаточно. Вывод: заказ нельзя подтвердить без решения по замене или сроку поставки. Если система показывает только событие, человек всё равно должен сам собирать смысл из соседних экранов. Если показывает вывод, он понимает, зачем вообще пришло уведомление.
Этот подход близок к тому, как я предлагаю начинать внедрение: сначала определить решение, которое человек будет принимать в системе, и лишь затем выбирать форму, роль и обучение. Иначе автоматизация просто ускоряет знакомую путаницу.
У правила должен быть паспорт
Не нужен тяжёлый документ на десятки страниц. Достаточно, чтобы для каждого критичного правила можно было быстро ответить на несколько вопросов:
- какое решение оно принимает или подсказывает;
- какие данные участвуют в проверке и откуда они берутся;
- какой результат увидит пользователь;
- кто владеет правилом со стороны бизнеса;
- кто может остановить его или обработать исключение;
- как понять, что правило перестало соответствовать реальной работе.
Такой паспорт полезен не только разработчикам. Руководитель видит границы ответственности, специалист поддержки — куда идти с вопросом, а сотрудник на операции — почему система ведёт его именно этим путём. Это похоже на маркировку в электрощите: не обязательно знать всю схему здания, но важно без гадания понимать, какой автомат за что отвечает.
Особенно важен владелец. У технической команды может быть право реализовать логику, но не должно быть обязанности единолично решать, когда допустимо задержать отгрузку, отклонить заявку или попросить дополнительное согласование. Такие условия принадлежат процессу, а не коду.
Показать данные, на которых основан вывод
Объяснение не должно превращаться в стену из служебных полей. Человеку нужны только данные, которые могут изменить его следующий шаг. Если документ не проводится из-за лимита, покажите лимит, уже использованную сумму, период и того, кто может подтвердить исключение. Если заявка попала в другую очередь, покажите признак маршрутизации и контакт следующего владельца.
При этом полезно оставлять след глубже: когда правило сработало, какая версия правила действовала, какие значения были на входе и что сделал человек после. Это не «логирование ради логирования». Без такого следа через месяц невозможно отличить ошибку программы от изменившегося процесса или неверных исходных данных.
Я бы не обещал сотруднику абсолютную прозрачность каждого технического шага. Ему не нужно знать внутреннее устройство интеграции. Ему нужно видеть деловое объяснение и путь дальше. Техническая детализация должна быть доступна тем, кто расследует проблему, но не мешать обычной работе.
Исключение — не сбой в идеальном процессе
Самые болезненные ситуации возникают не в стандартном ходе работы, а на границе правила. Постоянный клиент просит отгрузить часть заказа раньше. Сумма формально выше порога, но условия уже согласованы. Данные пришли с опозданием, а решение нужно принять сейчас.
Если в такой момент остаётся только попросить администратора «что-нибудь поправить», команда начнёт обходить систему. Поэтому у критичного правила заранее должен быть законный путь исключения: кто его инициирует, кто подтверждает, на какой срок оно действует и где потом видно причину.
Здесь важно не спутать гибкость с бесконтрольностью. Разрешить любую ручную правку — всё равно что оставить дверь склада открытой, потому что иногда нужно быстро занести коробку. Нормальный путь исключения сохраняет скорость, но не уничтожает память процесса. О том, как такие случаи передавать дальше, я разбирал отдельно: исключение не должно теряться между ролями.
Проверить правило на живом случае
Хорошая проверка начинается не с вопроса «тест прошёл?», а с вопроса «сможет ли человек объяснить, что произошло?». Я бы взял несколько реальных или честно составленных ситуаций: обычную, пограничную и явно ошибочную. Для каждой попросил бы сотрудника без помощи автора настройки сказать:
- что система решила;
- почему она так решила;
- что нужно сделать дальше;
- как действовать, если решение не подходит.
Если ответы звучат как «надо спросить у Ивана» или «иногда само проходит», правило ещё не стало частью процесса. И неважно, насколько аккуратно оно написано в коде.
Полезно проверять и обратный ход: что будет, если входные данные придут дважды, запоздают или окажутся неполными? В автоматизации всегда есть соблазн считать идеальный сценарий единственным. Но бизнес узнаёт качество системы именно в неровный день, когда поставщик задержался, сотрудник заболел или клиент поменял условия.
Правило должно уметь стареть
У каждого правила есть дата, когда оно было разумным. Компания вводит лимит, меняет порядок согласования, запускает новый канал продаж. Через полгода меняется ассортимент, появляются другие полномочия, а правило остаётся жить своей жизнью. Оно продолжает срабатывать технически правильно, но делово уже ведёт людей в тупик.
Поэтому я бы не оставлял критичные настройки без регулярного вопроса: что изменилось вокруг этого решения? Не нужен еженедельный аудит каждой галочки. Достаточно договориться о событиях, которые запускают пересмотр: поменялась политика продаж, появился новый тип клиента, повторяется один и тот же обход, выросло число ручных исключений или сменился владелец процесса.
В этот момент важно не исправлять правило незаметно. У изменения должна быть понятная причина: какие ситуации перестали проходить, что теперь будет считаться нормой, кого коснётся новая логика и как откатиться, если в первые дни что-то пойдёт не так. Такой короткий журнал решений часто ценнее большой схемы, которую никто не открывал с прошлого года.
Это не бюрократия. Это способ не превратить автоматизацию в археологию, где команда раскопками выясняет, почему одна цифра в форме запускает цепочку из пяти действий. Когда у правила есть владелец, основание и след изменений, его можно спокойно обсуждать с бизнесом, а не бояться трогать.
Разделить ответственность между бизнесом и командой разработки
У понятного автоматического решения всегда две стороны. Бизнес отвечает за смысл: что считается допустимым, какой риск компания готова принять, кому можно дать исключение. Техническая команда отвечает за реализацию: как проверить условие надёжно, как не потерять данные, что делать при сбое и как показать результат пользователю.
Проблемы начинаются, когда одна сторона молча берёт на себя чужую работу. Если разработчик сам выбирает предел для финансового правила, он делает не техническое решение, а управленческое. Если руководитель просит «сделайте как раньше, только автоматически», не формулируя условия, команда вынуждена строить догадки.
Полезная встреча по новому правилу заканчивается не списком задач, а тремя короткими договорённостями: что именно решаем, кто подтверждает деловое правило и по какому признаку поймём, что оно помогает. После этого код и настройка становятся следствием, а не заменой разговора.
Как начать, если правил уже слишком много
Не стоит пытаться немедленно описать всю систему. Выберите один путь, где ошибки дороги или сотрудники чаще всего спрашивают «почему так». Это может быть остановка заказа, проверка оплаты, маршрут согласования или расчёт статуса. Соберите последние несколько спорных случаев и попробуйте восстановить их вместе с владельцем процесса.
Обычно уже на этом шаге находятся три вида проблем: правило не сформулировано, нужные данные живут в другом месте или исключение есть, но нигде не фиксируется. Для первого пилота достаточно сделать видимой причину, следующий шаг и ответственного. Когда люди перестают обходить именно этот участок, можно брать следующий.
Такой путь кажется медленнее большой переделки. На практике он быстрее даёт доверие. Сотрудники начинают видеть, что система не просто запрещает и требует, а помогает понять ситуацию. А владельцы процесса получают факты для пересмотра правил вместо набора раздражённых сообщений.
Не превращать объяснение в оправдание
Иногда команда добавляет к каждому действию длинный текст и считает задачу решённой. Но объяснение бесполезно, если из него нельзя сделать следующий шаг. Фраза «операция не соответствует политике» ничего не даёт. Фраза «заказ ждёт финансового подтверждения, потому что превышен лимит клиента; запросить исключение может руководитель продаж» уже возвращает человеку контроль.
Это же помогает замечать устаревшие правила. Когда одно и то же исключение приходится объяснять каждую неделю, проблема обычно не в пользователе. Возможно, лимит, маршрут или набор данных больше не соответствует реальности. Тогда пора менять правило осознанно, а не собирать вокруг него ручные костыли.
Я не стремлюсь сделать систему похожей на живого руководителя, который знает ответ на всё. Хорошая автоматизация честнее: она быстро делает повторяемое, показывает основания своего вывода и оставляет понятный путь там, где нужно человеческое решение. В этой точке она перестаёт быть чёрным ящиком и становится надёжной частью работы.
Если автоматическое решение сейчас вызывает больше звонков, чем снимает, полезно вернуться к границе, где его вообще можно безопасно отдавать правилу. Этот выбор не должен быть скрытым: не всякое решение стоит автоматизировать полностью.
Обсудим?