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

Заметным трендом сейчас является рост популярности no- и low-code подходов к разработке ПО. Подобные изменения в свое время пережили традиционные рынки вместе с появлением конвейерного производства, которое сделало доступным для массовой аудитории не только товары, но и оборудование. Похожий принцип заложен и в эволюции вендорных компаний. Причем в последние годы этот процесс заметно ускорился — благодаря цифровизации бизнеса и росту доли заказов с неизбежно похожими параметрами. 

Между тем, до конца разобраться в специфике low-code до сих пор не получается не только у клиентов, но даже у ИТ-специалистов. Например, часть профессионального сообщества опасается, что развитие low-code приведет к отказу от дорогой high-code разработки. В свою очередь клиенты, которые привыкли к high-code, воспринимают low-code продукты как инструмент для создания эскиза информационной системы. Рассмотрим особенности разных подходов к разработке ПО и критерии, по которым их выбирают вендоры и заказчики.

Low-code платформы: инструмент для инструмента

Апологеты high-code исходят из того, что каждый заказчик является уникальным и имеет особые потребности, обусловленные спецификой своих бизнес-процессов. И это, конечно же, правда. Но лишь отчасти. Именно поэтому, работая в парадигме high-code, компании каждый раз заново воспроизводят похожие алгоритмы — делают плюс-минус одни и те же CRM-системы, хелпдески, BPM-решения и так далее. Для клиентов это означает потерю времени, для разработчиков — высокие трудозатраты, уменьшение маржинальности и невозможность тиражировать свои продукты. Все это заставляет вендоров искать пути решения проблемы и постепенно включать в свою линейку low-, no- и даже self-code платформы.

Принцип действия каждого из этих подходов можно описать на примере конструктора Lego. Например, high-code разработка предполагает создание каждой детали будущей конструкции фактически вручную — код пишут программисты. Это нетехнологично и долго, причем для всех сторон. 

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

Можно сказать, что предпосылки для разработки low-code платформ появились вместе с созданием Excel, а первые попытки внедрить этот инструмент — около 20 лет назад. Постепенно концепция low-code становилась все более востребованной. Например, для нашей компании Naumen поворотным моментом стал период пандемии: массовый переход клиентов на удаленку показал, что потребности бизнеса в цифровизации требуют изменений, а значит нужны изменения и в нашей продуктовой линейке. К созданию low-code платформы — Naumen Platform — мы приступили в 2020-м году, однако продукты по методологии low-code создаются в Naumen уже более 15 лет. 

Основная идея low-code лежит в создании базы универсальных решений: на их основе можно наращивать различную функциональность, их можно адаптировать под различные интерфейсы. Среди таких блоков могут быть UI-builder, работа с данными, построение бизнес-процессов, систем безопасности и так далее. Возвращаясь к аналогии с Lego: в случае с low-code клиент вместе с набором деталей получает доступ к 3D-принтеру, который позволяет наращивать недостающие детали по мере появления новых задач.

Без кода: многообразие видов

Своего рода продолжением идеи low-code стали no-code платформы, с помощью которых можно создавать приложения без кода — за счет комбинаций определенных блок-схем. Если говорить на языке Lego, речь идет о готовом конструкторе, наборе кубиков, из которых в идеале можно построить все, что угодно. 

Предполагается, что создатель ПО заранее предусмотрел все возможные запросы заказчика, которому остается лишь провести рукой по тачпаду, чтобы собрать информационную систему. Идея красивая, но все еще сложно реализуемая, ведь инструмент должен быть гибким настолько, чтобы позволить каждому реализовать необходимый функционал. Довольно сложно представить себе автомобиль и звездолет, построенный из одних и тех же деталей Lego — именно поэтому производитель конструктора выпускает разные серии конструкторов. По такому же пути вынуждены идти no-code разработчики — выбирать специализацию мобильных приложений, RPA, CRM, BPM и так далее. 

У no-code есть еще одна неприятная особенность. Универсальный конструктор предполагает избыток деталей — их всегда будет намного больше, чем требуется клиенту для решения его задач. Однако no-codе решения не продаются по частям. Чтобы реализовать какую-то фичу (например, автоматизировать процесс сравнения документов), придется купить всю коробку, а если возникла потребность в кастомизации — прибегнуть к созданию решений, сравнимых с high-code разработкой. Впрочем, в продуктах этого сегмента всегда предусмотрены места, которые разработчики оставили для написания кода, что, кстати, автоматически переводит no-code платформы в класс low-code.

Апологеты еще одного подхода — self-code — связывают будущее программирования информационных систем с искусственным интеллектом, который будет сам подсказывать человеку, какие комбинации для каких целей необходимо использовать, и даже самостоятельно собирать интерфейс. Если мы посмотрим на представителей этого сегмента, то также увидим, что речь пока идет только о намерениях: с помощью AI можно сделать заказ на разработку, но заниматься проектом будут обычные программисты. 

Тем не менее, шаги в сторону AI предпринимаются, и это говорит о многом. Некоторые эксперты даже искренне верят в то, что уже к 2030 году информационные системы можно будет собирать не только с помощью AI, но даже используя VR технологии — то есть физически, через очки дополненной реальности. Несмотря на то, что пока все это кажется фаном, очевидно, что мир постепенно будет стремиться к очень умному no-code. Однако low-code все еще остается наиболее органичным подходом к разработке как для заказчика, так и исполнителя. 

ИТ-профессии: изменение личности

Переход на low-code платформы меняет не только рынок, но также корректирует требования к ИТ-специальностям. Этот процесс, разумеется, сопровождается различными мифами. Например, некоторые представители ИТ-сообщества считают, что новый подход к программированию погубит профессию разработчика. Это далеко от правды. Профессия программиста развивается, а параллельно с возникновением новых сегментов появляются новые специализации, например, разработчика программных решений на low- или no-code платформах. Вряд ли бизнес самостоятельно будет заниматься такими вопросами, поэтому для работы с этой линейкой продуктов понадобятся отдельные люди. 

Очевидно, что и классическая разработка не потеряет свою актуальность. Напротив, low-code позволит разработчикам уйти от рутины и заняться сложными, творческими задачами. Им не нужно будет каждый раз переписывать интерфейс. Вместо этого программисты станут создавать решения, на базе которых заказчики смогут реализовывать свои проекты. А это задача совсем другого порядка. Помните знаменитое: «Дай человеку рыбу, и он будет сыт один день, научи его ловить рыбу, и он будет сыт всегда»? Примерно такие же перспективы открывает перед рынком развитие новых подходов в разработке. 

С каждым годом уровень сложности low- и no-code платформ будет только расти. Это потребует работы больших команд, создающих обширную базу вариативных решений, отрабатывающих многочисленные гипотезы и алгоритмы. Для специалистов это означает появление новых вызовов. Разработка low- и no-code платформ требует иного мышления и уровня ответственности, ведь наша цель — сделать продукт, который сможет использовать человек без технического бэкграунда. 

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

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

Комментарии (2)


  1. AlexandreFrolov
    19.09.2023 11:01
    +3

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

    Увидел на сайте одной из компании ссылку на pdf-файл, в которой вместо доменного имени был указан адрес IP. Спросил, почему так?

    Мне ответили, что сайт сделан на платформе No-Code, и по другому сделать не получается)


  1. boldMahoney
    19.09.2023 11:01
    +2

    Подобная реклама идей no-code всплывает каждые пару-тройку лет. И каждый раз в конце одно и тоже - оно в итоге никому не нужно. Как показала практика в серьезных задачах такой подход неприменим. А как показывает история даже в простых задачах такие идеи не приживаются. Еще в лохматые времена, когда SQL изобретался как язык близкий к естественному, для аналитиков и менеджеров, чтобы заменить программистов как no-code решение, чтобы они сами себе могли выбирать данные из БД и строить требуемые отчеты. Но системы росли, данных становилось все больше, а человек ленив по своей натуре. Поэтому даже SQL пришлось в итоге писать самим программистам и отдавать уже готовые отчетики менеджерам и аналитикам. Вспомним с чего начинался html. Потом портянки кода стали очень длинными и их стали заменять скриптами. Скрипты стали писать и обслуживать программисты. Потом скрипты усложнились и их автоматизировали в различные конструкторы, движки и crm системы, так же рекламируя no-code подход при работе с ними. А потом и они усложнились и теперь для их использования снова нанимают программистов. Wordpress-программист: такую специальность слышали?

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