Автор(-ы):
Радзиевская Анна
Секция
Информационные технологии, телекоммуникации
Ключевые слова
Аннотация статьи
В статье представлена авторская методика разработки IT-продуктов на основании применения технологии No-code, которая позволяет создавать продукт (веб-сайты, мобильные приложения, автоматизации и др.) существенно дешевле и быстрее. В итоге применение No-code способствует росту показателей эффективности деятельности субъектов предпринимательской деятельности.
Текст статьи
Что такое No-code и почему он появился
Мы живем в эпоху, когда любому бизнесу нужно присутствие в онлайн, т.е. необходимы IT продукты для работы с клиентами и функционирования бизнеса. Для того чтобы разработать бизнесу под себя IT продукты, необходимо привлекать команду разработки, стоимость которой от 1,5 млн руб./месяц, а сроки разработки от 6 мес. до нескольких лет. Соответственно ранее позволить такие стоимости и сроки мог только средний и крупный бизнес, у которых есть достаточно кол-во средств для инвестирования в разработку.
В то же время стартапам и малому бизнесу также необходима разработка, но позволить себе ее могут только единицы, да и ждать по несколько лет никто не готов, ведь рынок становится все более динамичным и нужно действовать быстро.
То есть мы приходим в ситуацию, когда спрос на IT-разработку растет, классических разработчиков не хватает на рынке, стоимость такой разработки огромная, а скорость очень низкая и становится неконкурентной в условиях сегодняшней динамики рынка (рис. 1).
Рис. 1. Рынок классической разработки
Данная проблема подтолкнула к созданию новых разработок без участия IT-отдела. А именно появлению No-code платформ – это программы, благодаря которым можно разрабатывать IT продукты не используя код. Принцип работы, как у визуальных конструкторов, в которых пользователь взаимодействует с элементами интерфейса, а в это время за него пишется код, но он его не видит и не работает с ним.
No-code платформы позволяют создавать продукт, как веб сайты, мобильные приложения, автоматизации и др. в десятки раз дешевле и быстрее, тем самым открывая целый новый рынок “быстрой и дешевой разработки” и помогают стартапам, малым бизнесам зайти на рынок, а среднему и крупному быстрее развиваться.
Помимо создания нового рынка, No-code стал конкурентом рынку классической разработки и постепенно “отъедает” его часть, т.е. мы наблюдаем случай дизрапшена рынка разработки методом разработки без кода (рис.2).
Рис. 2. Рынок разработки с приходом No-code
Отличия подхода No-code разработки от классической разработки
В классической разработке для того, чтобы разработать комплексно IT продукт от идеи до запуска необходима большая команда, где каждый участник команды имеет конкретную узкую квалификацию и выполняет определенный набор функционала. Таким образом все участники в большинстве своем являются не взаимозаменяемыми (например: продакт-менеджер не может выполнить работу backend-разработчика и наоборот) и отсутствие какого-либо члена команды является критичным для процесса разработки.
Основные члены команды и их функциональные роли в классической разработке.
В отличие от классической разработки в No-code разработке не нужна большая команда. Используя No-code платформы, специалист может самостоятельно разработать весь продукт “под ключ” (от идеи до запуска), включая фронтенд, бэкенд, дизайн и т.д., то есть заменить целую команду, которая обычно нужна в классической разработке (см. рис 3). Благодаря такому подходу стоимость разработки сокращается в 10-ки раз, а время в 5-8 раз, что выгодно для любого бизнеса.
Рис. 3. Для разработки продуктов на No-code не нужна команда, ее может заменить один специалист – No-code разработчик
То, что у ноукода низкий порог входа и что специалист, владеющий им, может разработать самостоятельно продукт, приводит к тому, что в бизнесах не IT-отделы могут сами решать свои задачи, тем самым разработка больше не является бутылочным горлышком для развития бизнеса. Данный тренд очень важный, ведь чем большая доля IT-задач будут решаться вне отдела разработки, тем выше будет скорость развития бизнеса.
Область применения No-code подхода
No-code имеет широкую область применения и используется в бизнесах любого размера: стартапах, малом бизнесе, среднем и крупном, а также для любой сферы бизнеса: ритеил, EdTech, фармацевтика, сервисные продукты, ресторанный бизнес и т.д.
No-code можно использовать как для разработки “клиентских” (внешних) продуктов, так и для внутренних продуктов и процессов компании.
Типы продуктов, которые можно разработать на No-code:
Где No-code применять нежелательно:
Этапы разработки IT-продуктов, используя No-code
Ниже описана методика, которой стоит следовать, чтобы разработать продукт или задачи в IT, используя No-code. Данная методика разработана Анной Радзиевской, основательницей Code Breakers. Методика наиболее подходит при создании новых продуктов и бизнесов (например, при создании MVP), а также отдельным проектам, которые запускаются в рамках существующих бизнесов. Используя данную методику, можно самостоятельно разработать продукт на No-code, либо подключить других специалистов на локальные задачи (например: дизайнера, продакт-менеджера). Этапы разработки продуктов показаны на рис.4.
Рис. 4. Процесс создания IT-продукта
Шаг 1. Описание идеи продукта/проекта/задачи
Прежде чем начинать разработку необходимо четко сформулировать что, зачем и почему планируется разработать. Данный этап очень важен, т.к. ответив на него, можно прийти к выводу, что на самом деле нет надобности данного продукта.
Необходимо ответить на следующие вопросы:
Для нового бизнеса или продукта:
Для продукта/задачи в рамках существующего бизнеса:
Шаг 2. Составление бизнес-требований
Составление бизнес-требований – один из ключевых и важнейших этапов разработки продуктов, ведь от качества его составления будет зависеть вся дальнейшая разработка, потраченный бюджет. На данном этапе необходимо продумать в деталях как будет работать весь продукт, а именно:
Пример, как выглядит описание процессов бизнеса представлен на рис. 5.
Рис. 5. Схема описания бизнес-процессов в продукте и клиентского пути
Шаг 3. Выделение MVP (минимально жизнеспособный продукт)
На данном этапе необходимо из бизнес-требований сформировать минимальный набор критически необходимого функционала, который позволит проверить бизнес-гипотезу при этом не потратив лишние ресурсы и время на разработку “не главных” функций. Основная задача – проверить жизнеспособность идеи, а не разработать полнофункциональный продукт. Самое важное – сфокусироваться на критическом функционале, без которого сама бизнес-идея перестает работать, т.е. отделить главное от второстепенного.
Что часто является второстепенным, что не стоит разрабатывать в первой версии (MVP):
Один из важных принципов данного этапа – создать очень гибкий продукт, который при ситуации неудачной бизнес-модели можно легко пересобрать и сделать pivot.
Шаг 4. Подбор стека инструментов
Понимая, какой функционал необходимо реализовать в MVP, а какой остается для последующих версий продукта, мы можем приступить к подбору стека (набора) No-code инструментов для реализации MVP.
Важно понимать, что мы именно делаем подбор “стека”, т.е. не значит, что необходимо использовать только 1 инструмент для реализации, это может быть микс из 2-6 разных No-code платформ и сервисов.
Но важно понимать, чем больше таких сервисов интегрировать, тем больше возникает риск, т.к. система/продукт становятся более хрупкими: если одно из звеньев не сработает, то это может привести к падению всей системы. Поэтому лучше ориентироваться на оптимальное кол-во инструментов в стеке и всегда отслеживать их работу.
Очень важно также учесть возможность подключения к платежным сервисам того стека, который выбран, а также проверить на возможность интеграции с необходимыми внешними сервисами.
При подборе стека важно мыслить не только что нужно для создания MVP, а как потом (при условии успешности бизнес-модели) можно будет масштабировать продукт. Важно, чтобы набор инструментов для MVP не был преградой к масштабированию.
Пример подбора стека инструментов для MVP онлайн магазина представлен на рис. 6.
Рис. 6. Схема: Пример стека инструментов для MVP онлайн магазина. Лендинг, на который ведутся клиенты с рекламы выполнен на Tilda, затем регистрация и создания заказа клиентов происходят через личный кабинет, разработанный на Bubble.io, проведение оплаты при заказе происходит через платежную систему Stripe, а при смене статуса заказа приходит оповещение клиенту через Twilio
Шаг 5. Составление продуктово-технического задания
После понимания что именно за функционал будет реализован в MVP и каким набором No-code инструментов, необходимо составить детальное продуктово-техническое задание. Оно включает в себя:
Данный этап очень важный, так как определяет всю дальнейшую разработку и является картой создания продукта.
Пример, как выглядят вайрфреймы мобильного приложения, представлен на рис. 6.
Рис. 7. Пример отрисовки вайрфреймов продукта
Шаг 6. Составление базы данных
База данных включает все, что содержит информацию о продукте и о клиентах. Для интернет-магазинов это каталоги, прайс-листы, данные покупателей, указанные в их профиле и т.д. Все, что хранится в базе данных доступно для изменения и извлечения при необходимости. Система базы данных представляет собой хранилище, куда приложение заносит полученную информацию. В No-code разработке есть базы данных, как внешние (Airtable, Google sheet), так и встроенные внутри приложения (базы данных Bubble, Glide и др. full stack no-code платформ).
Но важно понимать, что база данных требуется не каждого продукта. Если у вас одностраничный сайт (лэндинг), который предназначен для рекламы и ознакомления с товаром или услугой, то создание базы данных вовсе не требуется.
В No-code разработке используются реляционные базы данных. Реляционные базы данных – это базы, где вся информация хранится в таблицах, связанных друг с другом специальными отношениями. Эти отношения позволяют нам извлекать и объединять данные из одной или нескольких таблиц с помощью одного запроса.
Структура база данных представлена тремя уровнями от большего к меньшему (рис. 8):
Рис. 8. Как устроена база данных
Пример готовой базы данных приложения, показан на рис. 9.
Рис. 9. Пример структуры базы данных продукта
Шаг 7. Разработка дизайна, макетов, прототипирование
Имея продуктовое ТЗ и вайрфреймы, а также зная на каком No-code стеке будет реализован каждый из элементов продукта, нужно отрисовать дизайн там, где есть возможность кастомного дизайна (позволяет создать уникальный дизайн No-code инструмент). Бывает, что в некоторых No-code инструментах нет возможности кастомизировать дизайн полностью, а только изменить какие-либо характеристики: цвет, тени, внешний вид, фон и т.д. Данные ограничения также нужно учесть.
Если выбранный No-code инструмент позволяет сделать кастомный дизайн, то, если вы создаете дизайн самостоятельно можно воспользоваться шаблонами, либо привлечь дизайнера.
На данном этапе также важно продумать всю цветовую гамму и стиль продукта и всех его составляющих. Также нужно выполнить копирайтинг основных текстов (название меню, разделов, страниц и т.д.)
Шаг 8. Разработка: frontend, backend
В No-code подходе разработка frontend и backend (рис. 10) не имеет такого явного разграничения, поэтому выполняется совместно и параллельно. Лучше всего приложение разделить на части и последовательно создавать функциональность каждой из частей: личный кабинет клиента, который разделить на части: главная страница, страница входа, личный кабинет, профиль и т.д.
Процесс разработки лучше всего начинать с создания базы данных. База данных будет связывать все страницы/вкладки и части вашего приложения, т.е. являться основой. Далее уже создается frontend и параллельно задается функциональность backend:
Frontend разработка:
Backend разработка
Рис. 10. Структура IT-продукта
Шаг 9. Настройка интеграций с внешними сервисами
Интеграции в No-code инструментах с внешними сервисами обычно бывают уже нативно встроены, либо выполнены при помощи плагинов. Если данные варианты отсутствуют, то необходимо делать кастомную интеграцию при через API (рис. 11). Поэтому важно на этапе подбора стека проверить есть ли открытое API у сервиса, и может ли No-code инструмент выполнить данную интеграцию.
Основные интеграции, которые нужно учесть для продукта:
Важно иметь в виду, что в некоторых интеграциях может понадобиться помощь разработчиков, если нет встроенной интеграции у инструмента и сервиса.
Рис. 11. Внешние интеграции продукта
Шаг 10. Тестирование продукта
При тестировании очень важно проверить работоспособность приложения и корректность функциональности, которая была изначально заложена при составлении продуктово-технического задания. Основные этапы тестирования:
Типы тестирования, которые необходимо провести:
Также важно не забыть протестировать все необходимые интеграции с внешними сервисами, в особенности платежи, передачу данных о заявках пользователей и заказах.
Шаг 11. Запуск продукта на рынок
После проведения тестирования, устранения всех замечаний, необходимо подготовить продукт к запуску на пользователей:
После, важно также проверить командой соответствие всем необходимым первоначальным требованиям и начинать тестирование на пользователей.
После запуска продукта необходимо следить за его работоспособностью и выполнять поддержку, очень внимательно обращать на обратную связь от пользователей и проводить с ними интервью, чтобы понять, совпадает ли те смыслы и идеи, которые вы закладывали при разработке, с тем, как понимает пользователь ваш продукт и использует его.
Масштабирование продуктов на No-code
Для того чтобы при масштабируемости продукта/бизнеса No-code не стал бутылочным горлышком, важно особенно тщательно продумать при подборе No-code стека какие инструменты использовать.
Важно помнить, что чем больше инструментов задействовано, тем более хрупкой становится система и тем больший риск в перебоях работы. Поэтому, при масштабировании продуктов и добавлении с ростом бизнеса более сложного функционала, важно также ставить в приоритет full stack No-code инструменты (на которых сразу разрабатывается frontend, backend и база данных). Именно использование full stack платформ позволяет создавать более кастомную функциональность и избежать рисков интеграций множества платформ.
Также нужно помнить, что, если где-то функциональность No-code инструмента недостаточна, то можно привлечь разработку и расширить функционал.
Переход на классическую разработку
Важно учитывать, что переход стоит делать тогда, когда No-code действительно стал бутылочным горлышком и есть ограниченность в функционале, которая мешает развитию бизнеса.
Для перехода на классическую разработку лучше всего использовать частичную параллельную замещающую разработку. То есть параллельно с работой существующего продукта и процессов начать разработку наиболее критической части продукта на классической разработке. Затем постепенно перевести данные пользователей на новый продукт, разработанный на классической разработке и уже потом заменить сам продукт. Так итерационно можно полностью перевести все части бизнеса с ноукода на код.
Начало перехода обычно начинается с клиентских внешних продуктов, которые требуют больше качества в дизайне, нативных функциях и т.д. Внутренние продукты можно замещать позже.
Но важно помнить, что ноукод довольно мощный и позволяет усложнять функциональность с масштабированием бизнеса, поэтому многие продукты/бизнесы так и остаются на No-code, т.к. бизнесы не сталкиваются с ограничениями No-code и масштабируют продукты без разработчиков.
Поделиться
Радзиевская А.. Методика разработки IT-продуктов на основании применения технологии No-code // Актуальные исследования. 2020. №18 (21). С. 118-129. URL: https://apni.ru/article/5013-metodika-razrabotki-it-produktov-no-code