Вернуться

Кейс Backend-Driven UI

NDA-клиент
Digital
На одном из проектов разработали конструктор на бэкенде, через который можно создавать типовые поля и выводить формы для ответов на фронтенде

На базе конструктора мы можем внедрять новые формы в сервис за 1-2 недели от получения задачи до фактического релиза. А внести изменения разной сложности можно за 1-5 дней.

Задача

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

Решение

Чтобы ускорить внедрение в сервис большого количества форм, мы реализовали на бэкенде конструктор, через который можно создавать типовые поля и выводить формы по шагам на фронте. Мы уже описывали принцип работы backend-driven UI подхода и его преимущества в другом решении.

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

Также на базе конструктора мы сделали формализованный контур передачи XML из заполненных форм во внешнюю систему.

Благодаря конструктору разработка MVP заняла всего три месяца, и теперь мы можем внедрить в сервис любую новую услугу за 1-2 недели. При этом большая часть работы — это просто согласование и регрессионное тестирование.

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

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

Теперь в разработанный нами сервис можно внедрять новые регионы практически без привлечения программистов.

Итог

Без конструктора разработка одной формы — это около двух месяцев работы с интеграционным тестированием и релизом мажорной версии. На базе конструктора мы можем внедрять новые формы за 1-2 недели от получения задачи до фактического релиза. А внести изменения разной сложности можно за 1-5 дней. Экономия времени и бюджетов на внедрение новых форм огромная.

Никита Храмов
Аккаунт-менеджер
Никита Храмов

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

Давайте обсудим ваш проект

Заполняя данную форму, вы принимаете условия Соглашения об использовании сайта, и соглашаетесь с Правилами обработки и использования персональных данных

Звоните, пишите

Давайте обсудим ваш проект

Никита Храмов
Аккаунт-менеджер
Никита Храмов

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

Заполняя данную форму, вы принимаете условия Соглашения об использовании сайта, и соглашаетесь с Правилами обработки и использования персональных данных
Блог