Creatio development guide
PDF

Логические уровни приложения

Glossary Item Box

Общие сведения

С точки зрения логических уровней взаимодействия архитектура системы bpm'online может быть представлена следующим образом (Рис. 1):

Рис. 1. — Логические уровни взаимодействия

1. База данных

Это уровень физического хранения данных. В базе данных хранятся не только пользовательские данные, но и настройки приложения, а также настройки прав доступа к приложению.

Основные функции базы данных:

  • хранение данных;
  • управление данными;
  • хранение конфигурационных настроек.

Физические объекты базы данных — это:

  • таблицы;
  • представления;
  • хранимые процедуры;
  • индексы;
  • триггеры в таблицах.

Как правило, в процессе разработки на платформе bpm'online не возникает необходимости работы с объектами базы данных напрямую. В системе есть инструменты, которые позволяют работать с данными непосредственно из интерфейса системы.

Однако на уровне базы данных с помощью представлений и хранимых процедур можно реализовать свою бизнес-логику и вызывать ее в своих конфигурационных элементах.

Существуют задачи, которые логичнее и быстрее реализуются именно на уровне базы данных, например, настройка пользовательского правила поиска дублей.

2. Серверное ядро

Это набор библиотек, которые реализуют базовую функциональность приложения. Серверные библиотеки реализованы на языке C# с использованием классов платформы .NET Framework.

Серверное ядро является неизменяемым компонентом системы. То есть у разработчика есть возможность создавать экземпляры серверных классов и использовать функциональность серверных библиотек, но при этом нельзя вносить изменения в эти классы и библиотеки.

Основные компоненты серверного ядра:

  • ORM-модель данных и методы работы с ней. В большинстве случаев для доступа к данным рекомендуется использовать именно объектную модель, хотя прямой доступ к базе данных также реализован в компонентах серверного ядра.
  • Пакеты и механизм замещения.
  • Библиотеки серверных элементов управления. К таким элементам управления относятся страницы, построенные на технологии ASP.NET, формирующиеся на сервере, например, страницы раздела конфигурация.
  • Системные веб-сервисы.
  • Функциональность основных дизайнеров и системных разделов.
  • Библиотеки для интеграции с внешними сервисами.
  • Движок бизнес-процессов (ProcessEngine). Это важный элемент системы, который умеет выполнять настроенные в виде диаграмм алгоритмы.

3. Клиентское ядро

Основной задачей этого уровня является обеспечение работы клиентских модулей. Классы клиентского ядра реализованы на языке JavaScript с использованием различных фреймворков. Они предназначены для создания пользовательского интерфейса и реализации других бизнес-задач на стороне браузера.

Основные компоненты клиентского ядра:

  • Внешние библиотеки клиентских фреймворков. Например, библиотека RequireJS, предназначенная для реализации механизма асинхронной загрузки клиентских модулей, фреймворк ExtJs, предназначенная для реализации клиентского интерфейса.
  • Песочница (sandbox) — специальный компонент клиентского ядра, предназначенный для обеспечения взаимодействия между различными клиентскими модулями путем обмена сообщениями.
  • Клиентские модули — файлы на языке JavaScript, на которых реализована функциональность основных объектов системы.

4. Конфигурация

Конфигурация — это набор функциональности, который доступен пользователям конкретного рабочего пространства, а именно:

  • Серверная логика.
  • Автогенерируемые классы, являющиеся продуктом работы настроек системы.
  • Клиентская логика — страницы, кнопки, действия, отчеты, бизнес-процессы и прочие настраиваемые конфигурационные элементы.

Конфигурация — это легко изменяемая часть системы. Конкретную конфигурацию формируют такие типы элементов:

  • Объекты — сущности, предназначенные для хранения данных, которые объединяют таблицу в базе данных и класс на серверной стороне.
  • Бизнес-процессы — настраиваемые элементы, которые представляют собой визуальный алгоритм пользовательских действий.
  • Клиентские модули.

Все элементы конфигурации сгруппированы в пакеты.

Пакет — это конечный набор функциональности, который может быть добавлен в конфигурацию и может быть удален.

Окончательная функциональность системы формируется набором пакетов в конфигурации (рис. 2).

Рис. 2. — Конфигурация в bpm'online

© Terrasoft 2002-2019.

Был ли данный материал полезен?

Как можно улучшить эту статью?