О модуле Платформы
Модуль Платформы — проект или набор проектов DevTools Платформы и соответствующие этому проекту или набору проектов бэкенд-сервисы, которые реализуют общие для множества приложений функции определенной функциональной области.
В состав дистрибутива Платформы могут быть включены следующие типы модулей:
- бизнес-модули — модули, составляющие бизнес-ценность Платформы;
- демонстрационные модули — модули, демонстрирующие примеры разработки приложений на базе Платформы.
Примерами бизнес-модулей могут являться, например, следующие:
- бизнес-модуль управления организационной структурой и сотрудниками;
- бизнес-модуль организационно-распорядительного документооборота;
- бизнес-модуль по управлению пользователями и пользовательскими профилями.
Использование бизнес-модулей позволяет сократить затраты временных и человеческих ресурсов на разработку приложений на базе Платформы.
В зависимости от возможности пользовательской настройки бизнес-модули Платформы могут быть представлены в следующих форматах:
- Бизнес-модуль без возможности пользовательской настройки. Не содержит открытых кодов артефактов, например, кодов моделей данных, бизнес-процессов, элементов пользовательского интерфейса, и не поддерживает пользовательскую настройку.
- Бизнес-модуль с полной пользовательской настройкой. Распространяется с открытым исходным кодом артефактов и подробной документацией к этим артефактам. Разработчики приложений на базе Платформы могут доработать бизнес-модуль согласно требованиям к разрабатывамым ими приложениям.
- Бизнес-модуль с частичной пользовательской настройкой. Распространяется с частично открытым исходным кодом. Разработчики приложений на базе Платформы могут частично доработать бизнес-модуль согласно требованиям к разрабатывамым ими приложениям.
Бизнес-модуль распространяется в виде дистрибутива, который включает следующие сущности:
- бинарные артефакты DevTools;
- не обязательно: исходные коды артефактов DevTools;
- не обязательно: образы Docker-контейнеров сервисов бизнес-модуля;
- не обязательно: исходные коды сервисов бизнес-модуля;
- манифест, содержащий описание импортируемой и экспортируемой функциональности.
Манифест бизнес-модуля включает следующую информацию:
-
об экспортируемых сущностях:
- список экспортируемых бизнес-модулем API в формате OpenAPI;
- список экспортируемых бизнес-модулем схем GraphQL для доступа к его API;
- информацию об элементах пользовательского интерфейса бизнес-модуля, которые доступны для использования в других бизнес-модулях и программных продуктах;
- информацию об определенных в бизнес-модуле и доступных извне бизнес-процессах;
-
о внешних зависимостях:
- список API в формате OpenAPI, которые требуют внешней реализации для работы бизнес-модуля;
- список схем GraphQL, которые должны быть реализованы внешними по отношению к бизнес-модулю компонентами;
- информацию о внешних элементах пользовательского интерфейса, которые должны быть импортированы в бизнес-модуль для обеспечения его работы;
- информацию о внешних бизнес-процессах, которые могут быть реализованы с использованием функциональности бизнес-модуля;
-
о совместимости с версиями DevTools Платформы.