ISIDA BPM

Объекты и процессы

Ключевые понятия, которыми оперирует ISIDA BPM, – «Бизнес-объект» и «Бизнес-процесс».

Бизнес-объект (Business Object), или просто Объект (Object) является особым образом организованным объектом данных. Объекту обычно соответствует какая-либо реальная сущность – например, «сотрудник», «подразделение», «заявка», «изделие», «кредитный договор». Объект имеет логическую структуру, то есть тот или иной набор характеристик – полей (Fields), в которых хранится информация. Например, в объекте «сотрудник» могут быть поля «фамилия», «имя» «год рождения», а в объекте «заявка» – «номер», «дата», «статус» и «содержание».

Объект характеризуется типом (Object Type). Именно тип объекта определяет его логическую структуру (набор полей).

Собственно данные хранятся во множестве экземпляров объекта (Object Instances), каждый из которых имеет тот или иной тип. Экземпляры объекта размещаются в базе данных.

Иногда под термином «объект» понимают его тип, а иногда – экземпляр объекта того или иного типа. Обычно, если нет уточнения, «объект» означает «тип объекта», но в каждом случае необходимо учитывать контекст и явные указания на применяемое значение термина.

Поле, в свою очередь, тоже всегда имеет тип (Field Type). Тип поля может быть простым (например, «число», «дата», «строка») либо сложным (в этом случае поле – это тоже объект иного, ранее определенного типа, например: «подразделение», «сотрудник», «контрольное событие»). Поле может быть единичным либо множественным, содержать ссылку на иной объект и т.п.

Объект может быть собственным, или «родным» (Native Object), либо заимствованным, или «приёмным» (Adopted Object).

«Родной» объект создается с помощью специального визуального инструмента – «Конструктора объектов». Для каждого типа объекта задается требуемый набор полей с указанием их типов и иных параметров. После того, как объект сконструирован, он автоматически «маппируется» (преобразуется) в соответствующую структуру реляционной базы данных: для этого типа объекта создаются нужные таблицы, индексы и т.п. Экземпляры объекта затем размещаются именно в этой структуре базы данных.

«Приёмный» объект принадлежит стороннему приложению, он внешний по отношению к ISIDA BPM и уже существует. Поэтому тип такого объекта только описывается в «Конструкторе объектов» (но не создается): указываются поля объекта и то, каким структурам «чужой» базы данных они соответствуют. При этом могут описываться не все поля объекта, а только те, которые нужны для работы. Таким образом, если для «родного» объекта логическая структура создается с помощью «Конструктора объектов» и затем автоматически преобразуется в соответствующую структуру базы данных, то для «приёмного» объекта и его логическая структура, и соответствующая структура базы данных уже существуют, и в «Конструкторе объектов» лишь указывается, какие поля можно использовать, и в каких элементах структуры базы данных эти поля размещаются. «Приёмные» объекты используются, если организуется взаимодействие либо совместная работа с независимо разработанными программными приложениями (чтобы использовать их данные), а также в некоторых специальных ситуациях – например, когда объект имеет очень сложную логическую структуру либо особую схему хранения в базе данных, и такой объект определяется не в Конструкторе объектов, а, например, низкоуровневыми системными средствами.

Другим ключевым понятием является Бизнес-процесс (Business Process), или просто Процесс (Process).

Бизнес-процесс – это совокупность (поток) взаимосвязанных действий (операций процесса), последовательность выполнения которых направлена на достижение установленного результата.

ISIDA BPM, являясь специализированной программной системой класса BPMS («системы управления бизнес-процессами»), отвечает за описание и выполнение бизнес-процессов.

В ISIDA BPM принято, что бизнес-процесс всегда строится для какого-либо бизнес-объекта, а выполнение бизнес-процесса понимается как «движение» этого объекта по «маршруту» (Route), зависящему от логики выполнения процесса. Такой объект называется «управляемым объектом» (Managed Object).

Как и для бизнес-объектов, для бизнес-процессов применяются понятия «тип» (Process Type) и «экземпляр» (Process Instance). Тип процесса определяет логику его выполнения. В системе запускаются и выполняются экземпляры процесса, каждый из которых относится к тому или иному типу.

Как и в случае с объектами, под термином «процесс» – в зависимости от контекста – могут пониматься как «тип процесса», так и «экземпляр процесса». Обычно, если нет уточнения, имеется в виду «тип процесса».

Для конструирования бизнес-процессов в составе ISIDA BPM имеется визуальный инструмент – Дизайнер процессов. Для описания процесса используется специальная нотация, основанная на стандарте Business Process Model and Notation (BPMN).

Процесс (тип процесса) описывается Дизайнере процессов как диаграмма, похожая на ориентированный граф, состоящий из точек и переходов между ними. В точке процесса может как выполняться операция – задача1 (Task), так и проверяться условия для определения дальнейшего движения – в этом случае точка представляет собой шлюз (Gateway).

1 В ISIDA BPM иногда вместо термина «задача» используется термин «процедура», то есть, в рассматриваемом контексте, эти термины являются синонимами.

ISIDA BPM поддерживает описание и исполнение как простых, так и сложных процессов: последовательных, параллельных, комбинированных; ветвящихся по условиям; имеющих возвраты/повторы; включающих подпроцессы и т.п.

Для каждой точки процесса, где предполагается выполнение действий пользователями2, устанавливаются исполнители – пользователи, которые должны выполнять предусмотренные задачи. Поддерживаются различные правила назначения исполнителей: может быть указан конкретный пользователь, несколько пользователей или категория (группа) пользователей, причем с разными условиями выполнения операции в точке. Кроме того, для точки или для процесса в целом можно указать контролеров – пользователей, которые получают возможность следить за ходом процесса или его части.

2 Могут быть точки процесса, в которых действия выполняются автоматически, без участия пользователей (людей), подробнее об этом ниже.

Описание типа процесса хранится в специальном хранилище – Репозитории процессов (Process Repository) – как шаблон, на основе которого создаются конкретные экземпляры процесса. За создание экземпляров процессов, их запуск и выполнение отвечает центральный компонент ISIDA BPM – Диспетчер процессов. Он хранит экземпляры процессов и связанную с их выполнением оперативную информацию в специальной базе данных, обеспечивает «движение» объектов по маршрутам, вызов требуемых задач и т.д.

Еще один компонент ISIDA BPM – Монитор процессов – представляет собой специальную визуальную среду, предназначенную для администрирования выполняющихся процессов. Он дает обзор исполняющихся / завершенных / прерванных процессов и позволяет осуществлять «ручное» управление ими: приостановку и возобновление процесса, повторное исполнение и/или пропуск точек маршрута, корректировку сценария процесса в ходе исполнения.