С точки зрения проекта всё мобильное приложение - это процесс. Процесс, например, может начинаться с идентификации и авторизации и заканчиваться выходом из приложения. До конца своей работы в рамках приложения процесс должен демонстрировать пользователю требуемые экраны со всем необходимым функционалом. Глобально приложение не знает, какой экран будет следующим. Определение следующего экрана и его вида зависит от логики, сохраненной на текущий момент редактором процесса через систему администрирования. Далее будут рассмотрены элементы системы, призванные описывать мобильное приложение, его основной функционал и возможности редактирования.
Нода является основным строительным элементом процесса в рамках системы администрирования, отображаемым в палетке для формирования процессов на canvas. По уровню абстракции она находится над пресетами и экранами. Можно считать ноду подпроцессом, который представляет из себя один или несколько экранов приложения. Подпроцесс ноды начинается, когда логика приложения приводит к показу его экрана и заканчивается, когда происходит переход на другую ноду. В нодах предусмотрена вариативность, в каждой ноде может быть несколько наборов экранов (пресетов).
Пресет - набор экранов, предусмотренных в рамках определенной ноды. Наборы могут частично повторять друг друга. Нода может иметь, как ноль, так и несколько пресетов. Определение необходимого пресета происходит в зависимости от логики приложения и действий пользователя. Выбор необходимого пресета ноды доступен при настройке условных переходов.
Экраны буквально представляют собой экраны приложения. На экранах могут быть представлены поля и виджеты. Логика предоставления данных в приложение работает на уровне экранов. Логика работы условных переходов на данный момент редактируется на уровне нод, но работает также на уровне экранов.
Поле - минимальный строительный элемент приложения. Поля определяют внешний вид экрана. Полями являются текста, картинки, кнопки и т.п. Каждое поле имеет согласованный набор настроек, настраиваемый в системе администрирования. Приложение должно уметь обрабатывать эти настройки поля. Во многих полях хранятся тексты. Форматирование текстов происходит с помощью использования тегов с привязанными к ним настройкам.
Виджет - объединение полей и их свойств в один элемент, способный подключаться к экранам и нодам. Виджеты призваны предоставлять повторяющиеся на разных экранах наборы информации. В рамках каждого внутреннего поля виджет может иметь собственные данные. Внутри виджета также предусмотрена реализация тем (пресетов), таким образом, при добавлении одного виджета на экран можно выбрать его вариант отображения. Дополнительные варианты отображения и их редактирование доступны в системе администрирования. Логика работы виджетов такая, что редактирование его отображения будет приводить к его изменению во всех местах, где он был использован. Яркими представителями виджетов могут быть: рекламные баннеры, информационные блоки, повторяющиеся элементы приложения, например, top bar.
Поле может иметь только свои характеристики, специализированные под каждый экран/виджет отдельно.
Виджет может иметь один или несколько специализированных под себя наборов полей, а также свой набор настроек.
Экран может включать в себя виджеты, поля а также их специализированный набор настроек под себя. Важно понимать, что в отношении виджетов на уровне экранов есть возможность выбрать необходимый набор полей. При попытке изменения набора будет предложена возможность или изменить его для всех экранов, или создать полностью новый набор полей.
Редактирование полей для данного экрана никак не ограничено и будет иметь влияние только на данный экран.
Нода может включать в себя только экраны, при этом экраны могут быть объединены по пресетам, а могут и нет.