Суть подхода
Backend-Driven User Interface (UI) — это подход, при котором бизнес-логика, контент и функциональность приложения создаются на стороне бэкенда, а интерфейс (фронтенд) строится на основе данных, полученных с сервера.
В Backend-Driven UI бэкенд не только управляет данными в приложении, но и его версткой. Можно создавать новые страницы, запускать А/B-тесты и легко менять элементы навигации. Изменения появляются на всех платформах сразу и без ревью в магазинах. Мы создаём админку, в которой задаются вёрстка, все элементы и их свойства.
Примеры применения
Например, у нас в сервисе предполагается работа с однотипными элементами во всех разделах. И эти элементы должны состоять из типовых для проекта частей в разных комбинациях. Допустим, речь о формах, которые пользователь должен заполнить, чтобы заказать услугу. При этом у каждого типа пользователя индивидуальные формы в его юзер-флоу.
Мы делаем единый конструктор на бэкенде и визуализатор на фронте и управляем составом и функциональностью элементов на бэке. Это значительно сокращает расходы на развитие, масштабирование и поддержку всего сервиса.
На базе конструктора мы можем внедрить новые формы за 1-2 недели от получения задачи до релиза. А внести изменения разной сложности можно за 1-5 дней.
При этом самый большой пласт работ — интеграция первичных элементов. Далее добавление новых компонентов произойдёт в разы быстрее, чем если создавать и добавлять их независимо друг от друга.
Итоги
Экономия времени и бюджетов на внедрение новых интерфейсных решений огромная. Также это решение позволяет стандартизировать разработку: от планирования задач до решения интеграционных вопросов.