Автораспределение заявок в LogicBPM: заявка сама находит свободного специалиста нужного уровня


Контекст
LogicBPM — Service Desk: заявки, доски, команды и графики работы. Все обращения попадают в общую очередь команды.
Проблема
Заявки разбирали вручную: часть назначал старший смены, остальные операторы брали сами из общей очереди. Пока старший был занят, новые заявки висели без исполнителя. А сами операторы выбирали удобное: быстрые заявки разбирали сразу, сложные лежали до последнего и уходили в просрочку SLA. Новички брали то, с чем не справлялись, одни набирали заявки про запас, у других было пусто.
Моя роль
Ведущий дизайнер Service Desk. Спроектировал раздел, собрал прототип на дизайн-системе и передал его в разработку.
Ограничения
- Алгоритм распределения живёт на бэкенде — интерфейс управляет только его входными данными;
- Ручное назначение остаётся: автоматика не должна мешать руководителю вмешаться;
- Кто на смене, система узнаёт из соседнего раздела «График работы»;
- Только компоненты дизайн-системы; доменные элементы — локальные компоненты раздела.
Результат
Заявка назначается в момент создания — сотруднику на смене, с нужным скиллом, подходящим грейдом и свободным местом в очереди. Выбирать удобное больше не из чего: у каждой заявки сразу есть ответственный. Руководитель настраивает правила один раз и вмешивается только в исключениях.
−98%
Время до назначения
−60%
Просрочек SLA
≈2 ч
Экономии в день
1. Что ломалось при ручном разборе
Заявка ждёт, пока её возьмут
Новая заявка лежала в общей очереди, пока старший смены не освободится или кто-то из операторов не решит её забрать. Время реакции по SLA шло, а работа ещё не началась.
Берут удобное
Операторы сами выбирали, что взять: быстрые и понятные заявки разбирали сразу, а длинные и неприятные висели до последнего и первыми уходили в просрочку.
Не тот уровень
Новички брали сложные заявки по эквайрингу и ОФД, не справлялись и отдавали на эскалацию — второй круг по SLA.
Перекос нагрузки
Кто-то набирал заявки про запас, у других очередь была пустой. Руководитель не видел картину целиком и тратил часы на ручное перераспределение.
2. Логика решения
Система назначает, человек задаёт правила
Мы не стали делать «умную кнопку назначить» и оставлять общую очередь, из которой берут сами. Руководитель описывает команду и правила, а система применяет их к каждой новой заявке. Заявка уходит сотруднику, если он сейчас на смене по графику, у него есть нужный скилл, грейд не ниже минимального для категории и в очереди есть место до лимита. Если подходят несколько — тому, у кого очередь короче.
Грейд
Уровень сотрудника: от джуна до лида. Правило задаёт минимальный грейд для категории — сложное не уйдёт новичку.
Скилы
Темы, в которых сотрудник разбирается: продажи, эквайринг, ОФД, оборудование. Заявка ищет того, кто знает её тему.
Лимит очереди
Сколько заявок система может назначить на человека. Учитываются все его заявки в любом статусе. Пустое поле — без ограничения.
График работы
Распределение идёт только на тех, кто сейчас на смене. Отдельно вести «кто сегодня работает» не нужно — данные берутся из графика команды.
3. Раздел: команда слева, правила справа


Вся команда на одном экране
Карточка отвечает на три вопроса руководителя: кто это и какого уровня, в чём разбирается, насколько загружен. Очередь — полоса заполнения «4/10», перекос нагрузки виден сразу. Если лимита нет, вместо числа стоит знак бесконечности, а полоса пустая. Действия с сотрудником — в меню на карточке, чтобы сетка оставалась спокойной.
Статус команды — главный переключатель
Плашка над сеткой показывает, работает ли автораспределение и сколько людей сейчас в графике и активно. Шар живой, пока автоматика включена, и серый, когда выключена: состояние считывается боковым зрением, без чтения подписи. Сотрудники отсортированы по ФИО, вручную порядок не меняется.
4. Правила распределения


Правило отвечает на два вопроса
Модалка разбита на «Какие заявки» и «Кому распределять»: категории заявок, минимальный грейд и нужные скилы. Все поля обязательны — пока они пустые, кнопка неактивна. Под полями живой счётчик «Подходит 4 сотрудника из 12»: руководитель видит последствия правила до того, как его сохранит. То же число потом стоит в карточке правила.


Правила всегда перед глазами
Панель закреплена справа и не уезжает вместе с сеткой сотрудников — длинный список правил скроллится внутри неё. Новое правило встаёт в конец и сразу включено. Правило можно отредактировать, выключить или удалить: выключенное остаётся в списке с пометкой «Выключено», а после удаления номера пересчитываются по порядку.
Открытый вопрос, который я вынес команде
Если в правиле несколько скилов, должен ли сотрудник владеть всеми или достаточно любого? Для правила «Миддл · Эквайринг, ОФД» это разница между одним подходящим человеком и пятью. От ответа зависят счётчик «Подходит N», подпись поля и то, кому реально уйдут заявки, поэтому я зафиксировал вопрос и вынес на решение до постановки задачи в разработку.


Массовая настройка для запуска
При первом включении руководителю нужно описать всю команду. Вместо десятка модалок — одно окно с грейдом и скилами каждого сотрудника. Если кому-то уже настроили их точечно, поля приходят заполненными.
5. Безопасное отключение


Временно — по умолчанию
Чаще всего сотрудника выключают на пару часов: обучение, созвон, сложный клиент. Поэтому в подтверждении есть «Отключить временно» с временем, до которого он выключен, — не нужно помнить, что его надо включить обратно. Вместо грейда на карточке появляется чёрная метка «Отключен», а вместо «Очереди заявок» — подпись «Автораспределение отключено».


Выключить всё — с подтверждением
Отключение на всю команду — опасное действие, поэтому оно идёт через красную модалку. Карточки сотрудников тускнеют, но настройки сохраняются: включение возвращает всё как было, одним переключателем и без подтверждения.
6. Итог
Результат
Время до назначения сократилось на 98%: заявка получает исполнителя в момент создания, а не когда кто-то освободится или решит её взять. Просрочек SLA стало на 60% меньше — сложные заявки больше не лежат, пока разбирают удобные. Нагрузка между операторами выровнялась, эскалаций из-за «не того уровня» стало меньше.
Что вынес
Автоматика, которой доверяют, — это не точный алгоритм, а понятные правила и простой способ её остановить. Больше всего времени ушло не на экраны, а на модель: какие три параметра достаточно знать о сотруднике.