Skip to main content
Version: 1.14.0

Введение и общая информация

BPMS (Business Process Management System) - программное обеспечение, которое позволяет управлять и непрерывно адаптировать процессы взаимодействия пользователя с ресурсами, за счёт моделирования этих процессов в доступном виде с использованием принятых нотаций, средствами администраторов системы. Дополнительными возможностями таких систем является симулирование, мониторинг и анализ процессов.

В нашем случае, система позволяет управлять процессом взаимодействия пользователя с клиентскими приложениями (Web, iOS, Android) с применением паттерна BFF (Backend-for-Frontend). Количество BFF и клиентских приложений, в рамках системы, не ограничено.

The BFF was part of the application

Компоненты системы

В BPMS входят следующие компоненты:

  1. Web приложение панели администратора
  2. Серверное приложение API панели администратора
  3. Серверное приложение API для потребителей

Основные термины

  1. Клиент BPMS
  2. Проект (приложение)
  3. Процесс
  4. Экран
  5. Группа элементов
  6. Виджет
  7. Компонент
  8. Параметры
  9. Действие
  10. Событие
  11. Цепочка условий
  12. Условие
  13. Сессия
  14. Внешний API
  15. Метод внешнего API
  16. Кастомный endpoint
  17. Ноды-функции

Основные функции BPMS

BPMS предоставляет набор тесно взаимосвязанных инструментов для полноценного проектирования, симуляции и мониторинга процесса взаимодействия с клиентскими приложениями. В частности, система позволяет настраивать и редактировать графический интерфейс клиентского приложения в реальном времени, за счёт подхода Backend-Driven UI, описывать бизнес логику приложения и BFF, описать собственные микросервисы, обеспечивать мониторинг ошибок и пользовательского опыта на этапе тестирование и эксплуатации клиентских приложений.

info

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

Настройка графического интерфейса и бизнес логики клиентского приложения

info

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

Система позволяет настроить:

  • Отображаемый интерфейс:
    • Состав экранов клиентского приложения;
    • Состав виджетов и компонентов на экранах;
    • Настройка визуального оформления виджетов и компонентов в зависимости от параметров;
    • Расположение виджетов и компонентов на экранах;
  • Поведение клиентского приложения:
    • Действия, которые происходят при определённом событии в рамках экрана;
    • Условия переходов между экранами при определённом событии и удовлетворении всех условий;
  • Отображаемый контент:
    • Настройка мультиязычности хранимого в системе контента;
    • Заполнение контента из внешних API.

Настройка бизнес логики BFF

Система позволяет настроить:

  • API gateway
    • Проксирование и маршрутизация запросов к внешним API;
    • Объединение данных из нескольких запросов к внешним API;
    • Выполнение кастомных python скриптов (ноды-функции) по запросу;
    • Валидацию данных, полученных от клиентского приложения;
    • Валидация данных в ответах от внешних API;
    • Настройка асинхронного взаимодействия с методами внешних API;
    • Мокирование данных от внешних API;
  • Хранение и кеширование данных на стороне системы.

Логирование и мониторинг

Система позволяет отслеживать:

  • Нагрузку на систему;
  • Последовательность запросов;
  • Данные запросов;
  • Путь пользователя клиентского приложения в рамках сессии;
  • Количество пользователей клиентского приложения;
  • Количество запросов к системе от клиентского приложения.

Сервисные функции

  • Поддержка работы с разными доменами для разных проектов (приложений);
  • Версионирование процессов;
  • Перенос процессов между проектами и средами;
  • Возможность подключить внешние системы к платформы sentry, которая входит в комплект поставки BPMS;
  • Возможность разработать

Aвторизация


Ключ пользователя — это своего рода «подпись» в BPM. Такой ключ выдаётся пользователю BPM после выполнения регистрационных/авторизационных действий. Ключ сообщает серверу, от имени какого именно пользователя осуществляются запросы и какие права у него есть. Время жизни ключа составляет 3 минуты.

Security Scheme Type:http
HTTP Authorization Scheme:bearer
Bearer format:JWT