Решение «конструктор или код» принимается за час, если перестать спорить о сложности и померить восемь величин: размер сценария в узлах, число записей за прогон, размер файла, объём операций в месяц, требование ко времени ответа, необходимость отката всех шагов, требование к аудиту и частоту изменений логики. У каждой из восьми есть порог, за которым конструктор перестаёт быть дешёвым решением и становится дорогим. Ниже — эти пороги с числами и арифметикой, которую можно пересчитать на своих данных.

Второй результат такого замера обычно неожиданный: чистых случаев мало. В большинстве процессов часть шагов уверенно ложится в конструктор, а один-два узла упираются в порог. Правильный ответ здесь не «всё переписать», а гибрид: тонкий сценарий-оркестратор в конструкторе и небольшой собственный сервис на тяжёлую логику. На модельном процессе с потоком 100 000 операций в месяц гибрид обходится в 589 600 ₽ за три года против 648 400 ₽ у чистого конструктора и 762 000 ₽ у полностью собственной разработки.

Мы платформы не перепродаём и на подписках не зарабатываем, поэтому разбираем и обратную сторону: три статьи расходов, которые есть у low-code и которых нет в коде, и три статьи, которые есть только у кода. Отдельно — про тестируемость, откат и тот момент, когда парк сценариев перестаёт быть управляемым. Все цены и статусы платформ — по состоянию на сентябрь 2026 года.

Восемь критериев с порогами

Пороги ниже — не догма, а рабочие ориентиры, за которыми стоит одна общая логика: конструктор дёшев, пока прогон помещается в память, читается глазами и повторяется без последствий. Как только одно из трёх свойств теряется, цена владения растёт быстрее, чем экономия на разработке.

КритерийИзмеримый порогКонструктор уместенНужен код
Размер сценария25 узлов и 3 вложенных ветвленияНовый человек понимает схему за минуту, правку вносит владелец сценарияСхему невозможно прочитать без автора, каждая правка делается наугад
Записей за один прогон500 записейЗаписи идут потоком, каждая обрабатывается независимоНужна постраничная обработка, хранение позиции и своя очередь
Размер данных за прогон15 МБ на файлФайл проходит через узел целикомФайл кладётся в хранилище, по процессу идёт ссылка, а не содержимое
Объём операций в месяц по одному сценарию121 000 операцийОплата за операции дешевле разработки и сопровожденияСобственный сервис окупается за три года — расчёт ниже
Требование ко времени ответа30 секунд с гарантиейОчередь прогонов и ретраи допустимы, задержка ничего не ломаетНужны явные гарантии, приоритеты и предсказуемая очередь
ТранзакционностьПоявление условия «все шаги или ни одного»Шаги независимы, повтор безопасен по идемпотентному ключуНужен откат уже выполненных шагов — это транзакция в сервисе или в учётной системе
Требование к аудитуНеобходимость предъявить неизменяемый след проверяющемуХватает истории прогонов на 30–90 днейНужен собственный журнал с регламентом хранения и защитой от правки
Частота изменений логики4 правки в месяцПравок много: владелец меняет ветку за час, релиз не нуженПравок мало, но они крупные: релизный цикл не мешает, а скорость конструктора не нужна
Последний критерий работает в обратную сторону — и об этом забывают

Семь порогов из восьми при превышении толкают в сторону кода. Восьмой — наоборот: чем чаще меняется логика, тем сильнее выигрывает конструктор. Процесс, который правят по два раза в месяц, в коде стоит 24 задачи разработчику в год — это 336 000 ₽ при ставке 3 500 ₽/час и четырёх часах на изменение с релизом. В конструкторе те же правки вносит владелец сценария за час своего времени. Поэтому «переписать всё в код» проигрывает не на технике, а на скорости изменений в живом бизнесе.

сравнениеgranica-lowcode-i-razrabotki--01
Восемь критериев выбора между конструктором и кодом с числовыми порогами по каждому

Восемь горизонтальных шкал, одна под другой. У каждой слева зона «конструктор», справа зона «код», между ними отметка порога с числом: 25 узлов, 500 записей за прогон, 15 МБ на файл, 121 000 операций в месяц, 30 секунд гарантированного ответа, «все шаги или ни одного», «неизменяемый след для проверяющего», 4 правки логики в месяц. У последней шкалы зоны подписаны наоборот, и она выделена рамкой с подписью «критерий работает в обратную сторону». Подписи по-русски.

Семь порогов толкают в сторону кода, восьмой — обратно в конструктор

Как этим пользоваться на практике, видно на двух примерах. Первый: разбор входящей почты, 900 писем в месяц, двенадцать узлов, повтор безопасен по идентификатору письма, логика меняется каждый раз при появлении нового типа отправителя. Ни один порог не превышен, восьмой критерий прямо указывает на конструктор — решение принято, спорить не о чем. Второй: разнесение банковских платежей по счетам с частичными оплатами и объединёнными переводами. Записей за прогон немного, зато сразу три порога нарушены — транзакционность, аудит и нечитаемое ветвление. Здесь конструктор соберут за неделю, он даже заработает, а через квартал бухгалтерия обнаружит расхождение, которое никто не сможет объяснить, потому что повторить прогон на тех же данных уже нельзя.

Три статьи расходов low-code, которых нет в коде — и три наоборот

Спор о цене обычно заканчивается на смете запуска, где конструктор выигрывает всегда и с разгромным счётом. Смысл появляется, когда обе стороны раскладывают эксплуатацию. У каждого подхода есть по три статьи, которых у другого нет вовсе.

  • Только у low-code: оплата за операции. Счёт растёт вместе с успехом — удвоился поток заявок, удвоилась строка расходов. В собственном сервисе обработка записи стоит долю копейки серверного времени, и рост потока на счёт почти не влияет.
  • Только у low-code: часы внутреннего владельца сценариев. Тридцать сценариев съедают около 14 часов в месяц — правки, разбор сбоев, ответы коллегам «а почему не пришло». По внутренней ставке 1 100 ₽ это 184 800 ₽ в год, и в бюджете эта строка обычно не появляется вообще.
  • Только у low-code: привязка к платформе. Переносимого формата сценария между площадками не существует. Переезд означает пересборку каждого сценария руками: в среднем 6 часов на сценарий, для парка из 30 штук — 180 часов и 630 000 ₽ по ставке подрядчика.
  • Только у кода: цена первой версии. Один и тот же процесс — 49 000 ₽ сборки в конструкторе против 420 000 ₽ разработки сервиса. Разница в 8,5 раза оплачивается сразу, а окупается годами, если окупается вообще.
  • Только у кода: зависимость от человека, который умеет его читать. Сценарий в конструкторе разберёт любой аккуратный сотрудник; сервис на незнакомом стеке — только разработчик. Уход одного человека превращается в риск для процесса, и снимается он документацией и код-ревью, то есть деньгами.
  • Только у кода: собственный релизный контур. Тестовая среда, выкладка, мониторинг приложения, откат неудачного релиза — всё то, что в конструкторе идёт «в комплекте» и не требует отдельной сметы.
графикgranica-lowcode-i-razrabotki--02
Годовая смета парка из 30 сценариев: пять статей расходов и доля подписки в 24 процента

Столбчатая диаграмма из пяти статей годовой сметы, суммарно 889 200 ₽: доработки и новые ветки — 336 000 ₽, операции платформы — 216 000 ₽, часы внутреннего владельца — 184 800 ₽, подрядчик на сложные сбои — 126 000 ₽, потери от простоя — 26 400 ₽. Столбец «операции платформы» подписан «24 % сметы». Над диаграммой заголовок «Парк из 30 сценариев, 120 000 операций в месяц». Единицы — рубли в год, все значения подписаны.

Подписка — четверть сметы; доработки стоят в полтора раза дороже

Годовая смета парка: где на самом деле лежат деньги

Модельная компания: 60 человек, 30 действующих сценариев, 120 000 операций в месяц. Внутренний час сотрудника — 1 100 ₽ (оклад 120 000 ₽ со взносами на 160 рабочих часов), час инженера подрядчика — 3 500 ₽, модельная цена операции — 0,15 ₽ (по массовым тарифам российских платформ вилка укладывается в 0,10–0,25 ₽ и зависит от объёма).

Год владения парком из 30 сценариев
Операции платформы: 120 000 в месяц × 0,15 ₽ × 12 месяцев216 000 ₽
Часы внутреннего владельца сценариев: 14 часов в месяц × 1 100 ₽ × 12184 800 ₽
Подрядчик на разбор сложных сбоев: 3 часа в месяц × 3 500 ₽ × 12126 000 ₽
Доработки и новые ветки: 24 изменения в год × 4 часа × 3 500 ₽336 000 ₽
Потери от простоя: 4 отказа в год по 3 часа, 72 задержанные заявки, теряется 15 %, конверсия 20 %, маржа 12 000 ₽26 400 ₽
Итого889 200 ₽ за год. Подписка на платформу — 24 % этой суммы, доработки — 38 %

Отсюда два практических вывода, которые меняют переговоры с подрядчиком. Первый: торговаться за тариф платформы почти бессмысленно — даже двукратная скидка на подписку снимает 12 % годовой сметы, тогда как отказ от шести необязательных доработок снимает вдвое больше. Второй: строка «часы внутреннего владельца» существует при любой архитектуре, и она не исчезает при переходе в код — там она просто переименовывается в задачи разработчику и дорожает втрое. Сравнивать конструктор с кодом надо по полной смете, а не по цене запуска. Методику, по которой мы приводим такие сметы к окупаемости и сроку возврата, мы описывали отдельно — она работает одинаково и для конструктора, и для собственной разработки.

Тестируемость и откат: аргумент, который перевешивает цену

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

  1. 1Нет отдельного контура. Правка чаще всего вносится в боевой сценарий, потому что копия сценария в том же аккаунте ходит в те же боевые системы: создаёт настоящие сделки и отправляет настоящие письма. На своём сервере это лечится вторым экземпляром платформы — он стоит только памяти; в облаке приходится либо заводить отдельные тестовые учётные записи во всех подключённых системах, либо править вживую.
  2. 2Нельзя повторить прогон на исходных данных. История прогонов показывает, что произошло, но подставить те же входные данные и пройти путь заново удаётся не всегда: часть данных уже изменена, часть внешних вызовов не идемпотентна. В итоге разбор сбоя превращается в реконструкцию по логам вместо воспроизведения.
  3. 3Нет полноценного отката. Конструктор откатывает версию схемы, но не последствия прогона: созданные сделки, отправленные письма, изменённые остатки. Компенсирующие действия проектируются вручную, и в 90 % сценариев их не проектируют вовсе.

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

схема процессаgranica-lowcode-i-razrabotki--03
Схема тестового контура: боевой сценарий, копия, сухой прогон и собственный журнал обработанного

Схема из двух дорожек. Верхняя «Боевой контур»: триггер, узлы, запись в CRM и учёт. Нижняя «Тестовый контур»: тот же набор узлов, но конечные блоки заменены на «журнал сухого прогона» с пометкой «ничего не создаётся». Между дорожками вертикальные стрелки-сверки с подписью «сравнение результата». Слева от обеих дорожек общий блок «Идемпотентный ключ: поле, по которому распознаётся повтор». Справа блок «Собственный журнал обработанного» с подписью «срок хранения задаёте вы, а не тариф».

Три приёма, которые возвращают конструктору воспроизводимость

Гибрид: конструктор как оркестратор, сервис на тяжёлую логику

Гибридная схема выглядит так. Конструктор оставляет за собой то, что делает хорошо: слушает события, ходит в чужие системы за данными, маршрутизирует, уведомляет, ставит задачи. Всё, что упирается хотя бы в один порог, выносится в отдельный небольшой сервис: расчёт, разбор документа, массовая выгрузка, транзакционная операция. Сценарий вызывает этот сервис как обычный внешний адрес и получает готовый ответ.

Выигрыш тут не только в производительности. Во-первых, тяжёлые шаги перестают тарифицироваться: разбор документа из пятидесяти строк — это один вызов сервиса, а не пятьдесят операций платформы. В нашей модели доля шагов, остающихся в конструкторе, падает примерно до 20 %, и вместе с ней падает счёт. Во-вторых, самая сложная часть логики получает нормальные тесты, версии и откат, а самая изменчивая часть остаётся там, где правка занимает час. В-третьих, сервис получается маленьким: 180 000 ₽ разработки против 420 000 ₽ за полную замену процесса кодом, потому что интеграции, авторизации и маршрутизация остаются на конструкторе.

карта связейgranica-lowcode-i-razrabotki--04
Карта гибридной архитектуры: сценарий-оркестратор в конструкторе и микросервис на тяжёлую логику

Карта из двух зон, разделённых пунктиром с подписью «граница ответственности». Левая зона «Конструктор — оркестратор»: узлы «событие», «получить данные из CRM», «получить данные из 1С», «маршрут», «уведомление», «постановка задачи», подпись «20 % шагов остаются тарифицируемыми». Правая зона «Собственный сервис»: блоки «разбор документа», «расчёт», «транзакционная запись», подпись «180 000 ₽ разработки, тесты и откат». Между зонами двусторонняя стрелка с подписью «контракт: список полей и коды ответа». Внизу отдельная стрелка «сервис недоступен → сценарий копит в очередь».

Граница проведена явно: интеграции и маршрут — в конструкторе, расчёт и разбор — в сервисе
Один процесс, три архитектуры, горизонт 36 месяцев при 100 000 операций в месяц
Чистый конструктор: сборка 49 000 ₽ + правки 59 400 ₽ + операции 100 000 × 0,15 ₽ × 36648 400 ₽
Гибрид: оркестратор 28 000 ₽ + сервис 180 000 ₽ + хостинг 54 000 ₽ + сопровождение 180 000 ₽ + правки 39 600 ₽ + операции 20 000 × 0,15 ₽ × 36589 600 ₽
Собственный сервис целиком: разработка 420 000 ₽ + хостинг 54 000 ₽ + сопровождение 288 000 ₽762 000 ₽
ИтогоНа 100 000 операций гибрид дешевле конструктора на 58 800 ₽ и дешевле кода на 172 400 ₽ за три года

Числа выше зависят от объёма, поэтому полезнее держать в голове не сумму, а формулу и две точки переключения. Расходы конструктора за три года равны 108 400 ₽ плюс 5,4 ₽ на каждую операцию месячного потока. Расходы гибрида — 481 600 ₽ плюс 1,08 ₽ на операцию, потому что в тарификации остаётся пятая часть шагов. Расходы полностью собственного сервиса — 762 000 ₽ почти независимо от объёма. Приравняйте попарно и получите пороги: 86 000 и 260 000 операций в месяц.

Поток по процессуДешевле всего за 36 месяцевПочему
До 86 000 операций в месяцЧистый конструктор — 108 400 ₽ плюс 5,4 ₽ за операциюРазработка сервиса не окупается: инженерные часы дороже, чем оплата операций
86 000 – 260 000 операций в месяцГибрид — 481 600 ₽ плюс 1,08 ₽ за операциюТяжёлые шаги уходят из тарификации, изменчивая часть остаётся дешёвой в правках
Свыше 260 000 операций в месяцСобственный сервис — 762 000 ₽Оплата за операции обгоняет стоимость разработки и сопровождения
графикgranica-lowcode-i-razrabotki--05
Три линии расходов за 36 месяцев с точками пересечения при 86 и 260 тысячах операций в месяц

График. Ось X — операций в месяц по процессу, от 0 до 300 000. Ось Y — расходы за 36 месяцев в рублях. Три линии: «конструктор» из точки 108 400 ₽ с наклоном 5,4 ₽ за операцию, «гибрид» из точки 481 600 ₽ с наклоном 1,08 ₽, горизонталь «собственный сервис» на 762 000 ₽. Отмечены две точки пересечения: 86 000 и 260 000 операций в месяц. Полоса между ними залита и подписана «зона гибрида». Отдельной меткой на оси X — 100 000 операций с тремя значениями: 648 400 ₽, 589 600 ₽, 762 000 ₽.

Средняя полоса — там, где выигрывает гибрид, и она шире, чем принято думать

Платформы по инженерным критериям

Если решение склонилось к конструктору, остаётся выбрать площадку. Почти все сравнения интеграционных платформ в выдаче написаны их же партнёрами, поэтому сравниваем по критериям, которые всплывают на втором году эксплуатации, а не на демонстрации. Тарифы, лимиты и списки коннекторов меняются — проверяйте их на дату решения, а таблицей пользуйтесь как набором вопросов, которые надо задать до подписания договора.

Инженерный критерийn8n на своём сервереAlbatoApiX-DriveNodul
Отдельный тестовый контурВторой экземпляр на том же сервере, стоит только памятиУточняйте наличие отдельного окружения: типовая практика — копия сценария в том же аккаунтеУточняйте наличие отдельного окруженияУточняйте наличие отдельного окружения
Повтор прогона на исходных данныхПрогон повторяется из истории, входные данные подменяются в узлеРучной перезапуск есть, подмена входных данных ограничена — проверяйте на демонстрацииРучной перезапуск есть, подмена входных данных ограниченаРучной перезапуск есть, подмена входных данных ограничена
Версионирование и откат схемыВыгрузка в файл, хранение в репозитории, откат к любой версииПроверяйте полноту экспорта: без него единственная версия — текущаяПроверяйте полноту экспортаПроверяйте полноту экспорта
Срок хранения истории прогоновЗадаёте сами, ограничение только дисковоеОграничен тарифом — уточняйте срок и что именно остаётся в теле запросаОграничен тарифомОграничен тарифом
Потолок по объёмуУпирается в сервер, лечится ростом машины и очередьюТарифный план по операциям: счёт растёт линейноТариф по связям и объёму: рост ступенямиТарифная сетка платформы
Юридический слойДанные не покидают контур, поручение обработки нужно только администраторуЮрлицо и серверы в РФ, соответствие ч. 5 ст. 18 152-ФЗВ реестре Минцифры — существенно для госзаказчикаРоссийская разработка, договор в рублях
Зрелость и коннекторы к российскому стекуКоннекторы к 1С, Битрикс24 и amoCRM пишутся через HTTP-узел, это часы на каждую связкуШирокий набор готовых коннекторов — основное преимуществоУпор на простые связки «система А → система Б»Моложе аналогов, сильные ИИ-узлы: наличие нужного коннектора проверяйте до договора

Ограничения, о которых в вендорских материалах не пишут, стоит проговорить прямо. У n8n на своём сервере их три: нужен администратор и дежурство, обновления и их совместимость со сценариями — ваша забота, готовых коннекторов к российскому стеку почти нет. У любой облачной платформы ограничение общее: через неё проходят персональные данные ваших клиентов, а значит нужен договор, поручение обработки и понимание срока хранения логов прогонов. Второе общее — переносимого формата сценария не существует, и уход с платформы стоит пересборки парка. Третье — глубина логики: там, где на своём сервере пишется двадцать строк кода, в облачном конструкторе придётся собрать десяток узлов или отказаться от задачи. Ни одно из этих ограничений не является поводом не пользоваться платформой; поводом является только то, что о них узнают через год.

сравнениеgranica-lowcode-i-razrabotki--06
Сравнение четырёх платформ по семи инженерным критериям второго года эксплуатации

Таблица-сравнение: четыре колонки-платформы (n8n на своём сервере, Albato, ApiX-Drive, Nodul) и семь строк-критериев: тестовый контур, повтор прогона, версионирование и откат, срок хранения истории, потолок по объёму, юридический слой, зрелость и коннекторы. Клетки заполнены короткими пометками, у неопределённых стоит знак вопроса с подписью «спросить на демонстрации». В колонке n8n отдельно выделено «данные не покидают контур», в колонке ApiX-Drive — «реестр Минцифры». Все подписи по-русски.

Вопросы, которые задают на втором году, лучше задавать на демонстрации

Тридцать сценариев и вопрос про владельца

Есть девятый критерий, которого нет в таблице, потому что он не про технику. Конструктор предполагает, что в компании есть человек, который держит парк сценариев в голове и в порядке. Пока сценариев пять, эту роль исполняет любой толковый сотрудник в свободное время. На тридцати она превращается в 14 часов в месяц, и в этот момент выясняется, что должности такой нет, в KPI это не входит, а в отпуск человек всё-таки уходит.

Гибрид без явной границы даёт два неуправляемых слоя вместо одного

Клубок из сценариев узнаётся по шести признакам: два сценария делают почти одно и то же, но чуть по-разному; есть сценарии, назначение которых никто не помнит; кто-то раз в неделю перезапускает прогон руками; клиенты получают письма от отправителя, которого нет ни в одной рассылке; никто не берётся оценить последствия отключения любого узла; правка вносится сразу в боевой контур. В гибридной схеме к этому добавляется седьмой признак и он опаснее прочих: логика расползается по обе стороны границы, и один и тот же расчёт оказывается сделан и в сценарии, и в сервисе — по-разному. Лечится это дёшево: карта запусков на одном листе, владелец у каждого сценария, правило именования, карантин на 30 дней для всего, чьё назначение не смог объяснить ни один сотрудник, и записанный контракт между конструктором и сервисом. Час на карту окупается на первом же инциденте.

Матрица решений: десять типовых задач

Ниже — десять задач, которые встречаются почти в каждой компании, с рекомендацией по каждой. Это не универсальный ответ, а иллюстрация того, как восемь порогов работают на живых примерах: обратите внимание, что решение меняется не от названия задачи, а от объёма и обратимости.

ЗадачаОбъёмРекомендацияРешающий критерий
Приём заявок с сайта и из почты в CRM900 в месяцКонструкторПовтор безопасен, логика меняется часто
Синхронизация остатков 1С и сайтакаждые 15 минутКонструктор, но по событию, а не опросомЛогика тривиальна, дорого только число операций
Расчёт скидки по двенадцати условиямпри каждом заказеУчётная система или сервисВетвление не читается и не тестируется
Разнесение платежей по счетам с частичными оплатами400 в месяцСервис или доработка учётаНужны транзакция и доказуемый след
Уведомления и эскалации сотрудникам3 600 в месяцКонструкторДешёвая ошибка, простая проверка результата
Выгрузка каталога на 40 000 позицийеженедельноСервисБольше 500 записей за прогон
Распознавание накладных и занос в учёт600 в месяцГибридРаспознавание — сервис, маршрут и уведомления — конструктор
Ежедневная отчётность руководителю30 прогонов в месяцКонструкторРасписание — самый предсказуемый триггер
Отправка платёжных поручений в банк120 в месяцКод и обязательное подтверждение человекомНет права на дубль и на потерю
Классификация обращений языковой моделью4 000 в месяцГибрид с проверкой результатаОтвет недетерминирован, нужен порог уверенности и передача человеку

Четыре строки этой таблицы у нас собраны в готовые решения каталога — разбор входящей почты, распределение заявок между менеджерами, распознавание накладных и автоматическая сверка документов. В каждом сторона границы уже выбрана и обоснована, а в поставку входит то, что при самостоятельной сборке забывают: идемпотентный ключ, журнал обработанного, очередь необработанного и порядок приёмки. Смотреть их имеет смысл до того, как вы начнёте проектировать своё, — хотя бы чтобы сверить состав работ.

схема процессаgranica-lowcode-i-razrabotki--07
Поле решений по двум осям: объём за прогон и обратимость операции, с десятью задачами на нём

Схема-поле по двум осям: горизонтальная «объём за прогон» от единиц до десятков тысяч записей, вертикальная «обратимость операции» от «повтор безопасен» до «повтор недопустим». Поле разделено на три зоны: «конструктор» (левый нижний угол), «гибрид» (середина), «код» (правый верхний угол). На поле расставлены десять точек-задач с короткими подписями: приём заявок, синхронизация остатков, расчёт скидки, разнесение платежей, уведомления, выгрузка каталога, распознавание накладных, отчётность, платёжные поручения, классификация обращений. Границы зон подписаны «500 записей» и «нужна транзакция».

Решает не название задачи, а её место по двум осям

Как сформулировать задание подрядчику, если решение гибридное

Гибрид ломается не на технике, а на размытой ответственности: сценарий ждёт от сервиса одного, сервис отдаёт другое, и виноватого нет. Семь пунктов в задании закрывают почти все споры.

  1. 1Явно перечислите, что живёт в сценарии и что в сервисе. Не «интеграция с 1С», а список: маршрутизация, уведомления и постановка задач — в сценарии; разбор документа и расчёт — в сервисе.
  2. 2Опишите контракт между ними как список полей и кодов ответа, а не словами. Что сервис принимает, что возвращает, какой код означает «повтори позже», а какой — «эту запись обрабатывать не надо».
  3. 3Назовите идемпотентный ключ конкретным полем. Это одна строка в задании, которая экономит месяцы разбора дублей.
  4. 4Задайте пороги приёмки в числах: сколько записей за прогон, за какое время сервис обязан ответить, какая доля ошибок допустима и что происходит с остатком.
  5. 5Отдельно опишите поведение при недоступности сервиса: сценарий встаёт, копит записи в очередь или пропускает их. У этих трёх реакций разные последствия для бизнеса, и выбирать должен заказчик, а не разработчик.
  6. 6Зафиксируйте, кто владеет сценарием после сдачи и на каком основании вы можете менять его без подрядчика. Право на правку без согласования — это пункт договора, а не добрая воля.
  7. 7Пропишите состав передачи: выгрузка сценариев в ваш репозиторий, исходники сервиса, доступы и ключи API на ваших учётных записях, паспорт каждого сценария на полстраницы.

Эти же семь пунктов работают как фильтр подрядчиков. Исполнитель, который спокойно принимает пункт про право на самостоятельную правку и передачу исходников, рассчитывает зарабатывать на развитии. Исполнитель, который начинает объяснять, почему выгрузка сценариев «технически невозможна», рассчитывает зарабатывать на вашей несвободе. Что должно быть в договоре на разработку помимо этого, мы разбирали отдельно.

Когда low-code не подходит категорически

Мы зарабатываем в том числе на сборке сценариев, поэтому этот список стоит читать внимательнее остальных. В шести ситуациях конструктор не «чуть хуже», а неприменим, и мы отговариваем от него независимо от бюджета заказчика.

  • Необратимые операции без участия человека: платёжные поручения, списания со склада с материальной ответственностью, юридически значимые действия. Конструктор выполняет шаги по очереди и не умеет откатывать уже сделанное — значит, любой сбой в середине оставляет систему в состоянии, которого нет ни в одном регламенте.
  • Требование доказуемого следа. Если проверяющему надо предъявить, кто, когда и на каком основании изменил запись, и доказать, что журнал не редактировали, история прогонов конструктора для этого не годится: она хранится ограниченный срок и не проектировалась как доказательство.
  • Отраслевое регулирование с требованиями к среде. Там, где закреплён состав программного обеспечения и режим доступа, добавление в контур внешней платформы означает пересмотр всей аттестации. Дешевле сразу проектировать внутри разрешённого периметра.
  • Персональные данные особых категорий: сведения о здоровье, биометрия, паспортные данные в теле запроса. Через облачный конструктор такие поля не пропускают вообще — передают ссылку на защищённое хранилище, а сопоставление делают в своём контуре.
  • Жёсткий SLA на отдельную операцию. Очередь прогонов, ретраи и перезапуск платформы после обновления дают непредсказуемые задержки. Если задержка в 30 секунд означает штраф или потерянную сделку, нужны явные гарантии времени ответа, а их даёт только собственный контур.
  • Некому быть владельцем сценариев. Если в компании нет человека, готового тратить на парк 14 часов в месяц, и нет денег на подрядчика с поддержкой, конструктор проживёт до первой смены прайса или первого ушедшего сотрудника. Здесь честный ответ — не автоматизировать пока вовсе или взять готовое коробочное решение с чужой поддержкой.

Обратите внимание: пять причин из шести — не технические. Конструктор проигрывает не потому, что медленный, а потому, что не даёт доказуемости, обратимости и предсказуемости. Там, где эти три свойства обязательны, дискуссия о цене запуска не имеет смысла, и правильный ответ один из трёх: писать сервис, дорабатывать учётную систему штатными средствами или оставлять шаг человеку. Последний вариант обсуждают реже всего, а он часто выигрывает: операция, которая случается четыре раза в месяц и требует решения, дешевле в исполнении сотрудника, чем в поддержке сценария, который это решение имитирует.

сравнениеgranica-lowcode-i-razrabotki--08
Шесть стоп-сигналов для low-code и рекомендация по каждому из них

Таблица-сравнение из шести строк в две колонки. Слева стоп-сигнал: необратимые операции без человека, требование доказуемого следа, отраслевое регулирование среды, персональные данные особых категорий, жёсткий SLA на операцию, некому быть владельцем сценариев. Справа рекомендация: транзакция в сервисе или учётной системе, собственный журнал с регламентом хранения, проектирование внутри разрешённого периметра, ссылка вместо содержимого, собственный контур с гарантией времени ответа, коробочное решение с чужой поддержкой или отказ от автоматизации. Внизу подпись: «пять причин из шести — не про технику».

Пять причин из шести — не технические

Граница между конструктором и кодом проходит там, где вы перестаёте уметь доказать, что система сработала правильно.