Backend состоит из микросервисов, каждый сервис ответственен за интеграцию с системами CRM, VCS и др. Микросервисы представляют собой набор «Maven-проектов». Проекты расширяемы и переиспользуемы за счёт фреймворка SmartActors. Пользователь взаимодействует с сервисами через ядро.
Ядро следит за выполнением бизнес-процессов и обменивается сообщениями с другими сервисами.
Новые функциональности добавляется без остановки работы сервиса путем версионирования.
В качестве базы данных мы используем PostgreSQL. Данные представляют собой документы. Так мы можем хранить любой набор полей для любого бизнес-процесса.
Клиентская часть создана с помощью React. При разработке был применен компонентно-ориентированный подход: все приложение разбито на компоненты, что позволяет переиспользовать код и легко расширять компонентную базу.
Ant Design как библиотека UI-компонентов значительно сокращает кодовую базу и позволяет не изобретать велосипед заново, а использовать уже готовые и отработанные компоненты.
Для отображения бизнес-процессов была выбрана библиотека React Flow. Данная библиотека предоставляет множество возможностей как для отображения диаграмм, так и для их создания и редактирования.