bpmn_ИНТ.ppt
- Количество слайдов: 100
Business Process Model and Notation (BPMN) Version 2. 0 Золотухина Е. Б. доцент, к. т. н.
Нотация это набор графических элементов и правил их комбинирования Нотация создавалась вне методологии !!! Необходимо использовать нотацию совместно с методологией
Разработчик нотации Business Process Model Notation BPMN 1. 0 - Инициативная группа по управлению бизнес процессами (Business Process Management Initiative(BMPI)) Разработчик нотации BPMN 1. 1, 1. 2, 2. 0 - The Object Management Group (OMG) Нотация версии 1. 2, 2. 0. называется Business Process Model and Notation (BPMN) OMG консорциум (рабочая группа), занимающийся разработкой и продвижением объектно-ориентированных технологий и стандартов. Основан в 1989 г. В 2005 г. Произошло слияние BMPI и OMG
Версии нотации BPMN ВЕРСИЯ НОТАЦИИ ГОД BPMN 1. 0 2004 BPMN 1. 1 2008 BPMN 1. 2 2009 BPMN 2. 0 (draft) 2009 BPMN 2. 0 (final) 2011
BPMN 1. х : графические пиктограммы и правила их комбинирования BPMN 2. 0 : графические пиктограммы и правила их комбинирования, формализует выполнение семантики всех элементов, уточняет состав событий, определяет модель хореографии
Главная цель BPMN обеспечение понятной нотацией всех ее бизнес-пользователей, начиная от бизнес-аналитиков, которые создают модели процессов, до разработчиков, ответственных за их реализацию и, наконец, людей, которые будут управлять и контролировать эти процессы BPMN обеспечивает стандартизированный мост между моделью бизнес-процессов и процессом его реализации
Важной особенностью нотации является возможность установить однозначное соответствие между элементами графической нотации и исполняемого языка описания бизнес-процессов на базе XML Значительная часть спецификации BPMN посвящена преобразованию диаграмм в код BPEL (Business Process Execution Language)
BPEL, полное название Web Services BPEL – WS-BPEL, ранее BPEL for Web Services – BPEL 4 WS, представляет собой перспективный открытый XML-стандарт для формализованного описания бизнеспроцессов и протоколов бизнесвзаимодействия, на который ориентируются все ведущие производители программных продуктов и технологий
Атрибуты объектов Каждый графический объект BPMN снабжен стандартизованным набором атрибутов На основе значений своих атрибутов в соответствии со спецификацией объекты BPMN могут быть преобразованы в конструкции языка BPEL
Атрибуты объектов
http: //www. omg. org/spec/BPMN/2. 0 http: //www. bpmn. org http: //www. bpmnforum. com/FAQ. htm
Нотация BPMN может быть использована при описании бизнес-процессов предприятия в процессе их реорганизации, регламентации, сертификации по международным стандартам качества, при определении требований к покупаемым, разрабатываемым, сопровождаемым системам, поддерживающим их деятельность, и создания исполняемых бизнес-процессов
Основные термины Бизнес-процесс – определенный набор бизнес-деятельностей, которые представляют собой шаги, необходимые для достижения бизнес-цели. Бизнес-процесс является потоком деятельностей и используемой информации и ресурсов Подпроцесс – часть процесса, процесс, включенный в другой процесс Модель бизнес-процесса– графическое, табличное, текстовое, символьное описание бизнес – процесса либо их взаимосвязанная совокупность Декомпозиция – разделение модели, элемента модели на части. Способ управления со сложностью модели Регламент бизнес-процесса – документ, описывающий последовательность операций, ответственность, порядок взаимодействия исполнителей и порядок принятия решений по улучшениям Функция – деятельность, процесс идентифицируемая глаголом или глагольной формой, которая описывает, что должно быть выполнено Деятельность – работа, выполняемая в бизнес-процессе Задача – атомарная деятельность Диаграмма – графическое представление элементов модели
Основные термины Событие – получение некоторого объекта, достижение определенный даты или времени, извещение, уведомление, причина или воздействие на бизнес-процесс. Событие – это нечто, что «происходит» в ходе бизнес процесса. События влияют на ход бизнес процесса и обычно имеют причину (триггер) или воздействие (результат) Какое либо происшествие. События инициируют действия или являются их результатами. Согласно расположению в процессе события могут быть классифицированы на начальные (start), промежуточные (intermediate) и завершающие (end). Сообщение – объект, который отображает взаимодействие между двумя участниками. Сообщение передается через поток сообщений Маркер – элемент, отображающий дополнительную семантику Транзакция – подпроцесс, представляющих набор скоординированных действий, выполняемых независимо
Основные термины Триггер – механизм, который обнаруживает появление процесса и может привести к дополнительной обработке в процессе. Триггер связан с начальным, промежуточным сообщением и может иметь тип: сообщение, таймер, условный, сигнал, связь, множественный Участник – хозяйствующий субъект ((например, компания, подразделение компании или клиент), либо бизнес-роль (например, покупатель или продавец), которая контролирует и/или отвечает за бизнес-процесс) Token – элемент, используемый для отображения хода бизнес-процесса Хореография – упорядоченный обмен сообщениями между двумя или большим количеством участников
Модели нужны для того чтобы все вовлеченные в описание бизнес-процессов заинтересованные лица могли прийти к единому пониманию как процессов предметной области, так и процессов системы Нотация BPMN ориентирована только на создание моделей бизнес-процессов. Другие модели предметной области, например орг. структура, структура данных, ключевые показатели эффективности и т. д. не рассматриваются
Основная элементы нотации Начальные события запускают процесс Конечные события завершают процесс Промежуточные события отображают то, что происходит между началом и концом процесса Промежуточные сообщения могут располагаться внутри потока процесса или на границе деятельностей процесса
Основная элементы нотации Деятельность (Activity) есть работа, которая осуществляется в ходе бизнес-процесса. Деятельность может быть атомарной или составной Развилка (Geteway) используется ветвления, слияния Ассоциация (Association ) присоединяет объекты к элементам Порядок деятельностей (Sequence Flow ) Поток сообщений между двумя участниками (Message Flow )
Типы задач Деятельность может быть атомарной или составной. Деятельность бывает следующих типов: задача, подпроцесс, вызывающая деятельность Задача это атомарная деятельность внутри процесса Вызывающая деятельность позволяет включать в процессы, повторно используемые задачи и процессы.
Объекты потока. Логические операторы. Ветвление и слияние Изображение элемента Назначение Оператор исключающего ИЛИ. Используется для создания альтернативных путей внутри бизнес-процесса. При ветвлении потоков исполняется одна ветвь, для которой истинно условие. При слиянии потоков ожидает завершения одной входящей ветви и активирует исходящий поток Сложный оператор. Используется для моделирования сложных условий ветвления и слияния Оператор И. При разделении на параллельные потоки все ветви активируются одновременно. При синхронизации параллельных ветвей оператор ждет завершения всех входящих ветвей и затем активирует исходящий поток Оператор И/ИЛИ. При ветвлении активируется одна или более ветвей. При слиянии все выполняющиеся входящие ветви должны быть завершены
Пример сложного оператора
Примеры исключающего ИЛИ
Примеры исключающего ИЛИ
Примеры оператора И В рамках одного процесса задача 2 и задача 3 начинают выполняться параллельно после окончания выполнения задачи 1 В рамках одного процесса задача 3 начинает выполняться после окончания выполнения задачи 1 и задачи 2 (синхронизация)
Соединяющие объекты. Потоки деятельностей Поток по умолчанию. Определяет ветвь процесса, выполняемую, когда все условия ветвления не выполнены в логических операторах исключающего ИЛИ или включающего оператора И/ИЛИ
Примеры оператора И/ИЛИ
Соединяющие объекты. Потоки деятельностей Условный поток. Определяет ветвь процесса, выполняемую, когда условие истинно Две аналогичные по семантике конструкции
Основная элементы нотации Участник взаимодействия (Pool) Подраздел (Lane )
Основная элементы нотации Объект данных (Data Object ). Объект данных представляет информацию, которая обрабатывается в ходе процесса, например, документ или письмо Хранилище данных (Data Store). Процесс может использовать объект для записи и извлечения данных, Текстовая аннотация (Text Annotation, attached with an Association)
Соединяющие объекты. Ассоциации данных Ассоциация данных используется для привязки информации и артефактов к графическим элементам. Может быть направленной
Основная элементы нотации Группа (Group (a box around a group of objects within the same category) ) Сообщение (Message)
ЭЛЕМЕНТЫ ДИАГРАММ. РАСШИРЕНИЕ НОТАЦИИ 1. Объекты потока (Flow Objects ) 2. Данные (Data) 3. Соединяющие объекты (Connecting Objects) 4. Области ответственности (Swimlanes) 5. Артефакты (Artifacts)
Объекты потока Используются для отображения поведения бизнес-процесса Включают: 1. События (Events ) 2. Деятельности (Activities) 3. Развилки (шлюзы) (Gateways )
Объекты потока. События Событие это то, что "происходит" в течение ход процесса. Cобытия влияют на поток процесса и, как правило, имеют причину (триггер) или воздействие (результат). События обозначаются в виде кругов с внутренними маркерами или без них. Маркеры позволяют дифференцировать различные типы сообщений (причины и результаты). Существуют три типа событий: начальные, промежуточные и конечные
Объекты потока. События Начальные события запускают процесс. Конечные события завершают процесс. Промежуточные события отображают то что происходит между началом и концом процесса. Промежуточные сообщения могут располагаться внутри потока процесса или на границе деятельностей процесса
Объекты потока. События Начальные события могут иметь тип «Catch» (поймать, получать) Конечные события могут иметь тип «Throw» (бросать, отправлять)
Объекты потока. События Промежуточные сообщения, расположенные внутри потока процесса могут иметь тип «Catch» (поймать, получать) и «Throw» (бросать, отправлять) Промежуточные сообщения, расположенные на границе деятельности имеют тип «Catch» (поймать, получать). Сообщения могут или прерывать деятельность или не прерывать деятельность
Объекты потока. События Cобытия типа «Catch» (поймать, получать) отображаются незакрашенным значком События типа «Throw» (бросать, отправлять) отображаются закрашенным значком
Объекты потока. События Изображение элемента Назначение Начальное событие. Определяет начало процесса. Стартует процесс. Является опциональным элементом Промежуточное событие Конечное событие. Определяет где процесс заканчивается. Внутри одного процесса может много конечных событий. Является опциональным элементом. Если есть одно начальное событие, то должно быть одно конечное событие
Объекты потока. Сложные элементы моделирования. События
Объекты потока Сложные элементы моделирования. События
Объекты потока. Деятельности Деятельность (Activity) есть работа, которая осуществляется в ходе бизнес-процесса. Деятельность может быть атомарной или составной Деятельность бывает следующих типов: задача, подпроцесс, вызывающая деятельность Вызывающая деятельность позволяет включать в процессы, повторно используемые задачи и процессы
Объекты потока. Задачи Задача это атомарная деятельность внутри процесса
Объекты потока. Типы задач
Объекты потока. Задачи. Маркеры Существует три маркера задачи: - маркер стандартного цикла, - многих экземпляров, - компенсации
Объекты потока. Задачи Маркеры стандартного цикла и многих экземпляров используются для отображения повторно выполняемой деятельности или циклов. В нотации BPMN 2. 0 поддерживаются циклы двух видов - стандартный и цикл по многим экземплярам. Стандартный цикл основан на логическом условии. Деятельность повторяется до тех пор пока логическое условие истинно. Цикл по многим экземплярам позволяет создавать желаемое количество экземпляров деятельности. Число повторов цикла известно до его начала Экземпляры деятельности могут выполняться последовательно или параллельно
Объекты потока. Задачи. Циклы Все циклы можно реализовать с использованием других элементов нотации
Объекты потока. Задачи. Тип маркера Компенсация есть механизм для отработки ошибок и сбоев в процессах. Компенсация используются в том случае, если необходимо отменить (откатить) какие-то действия путем выполнения других действий. Компенсирующее действие (задача или подпроцесс), помеченное маркером компенсации, находится вне потока нормального выполнения процесса и связано с соответствующим «нормальным» действием посредством ассоциации. Компенсирующее действие не может иметь входящих или исходящих связей потока. Компенсация запускается событием компенсации, которое обычно возникает при обработке ошибок
Объекты потока. Задачи. Тип маркера Компенсация
Объекты потока. Задачи Маркер стандартного цикла может быть использован с маркером компенсации Маркер многих экземпляров может быть использован с маркером компенсации Тип маркера задается в ЕА в свойствах задачи
Объекты потока. Типы подпроцессов Подпроцесс есть деятельность, детали которой могут быть замоделированы с использованием деятельностей, развилок, событий и потоков последовательности Подпроцесс это графический элемент внутри процесса. Используются для отображения верхнего уровня процесса. Существуют следующие типы подпроцессов: - встроенный подпроцес (Embedded Sub-Process (Sub-Process)) - повторно используемый подпроцесс (Call Activity) - событийный подпроцесс (Event Sub-Process ) - транзакция (Transaction) - Ad-Hoc (Ad-Hoc Sub-Process)
Объекты потока. Типы подпроцессов Встроенный подпроцесс или подпроцесс
Объекты потока. Типы подпроцессов Повторно используемый подпроцесс (Reusable Sub-Process (Call Activity) )– подпроцесс, определяющий точку в которой используется глобальный процесс или глобальная задача
Объекты потока. Типы подпроцессов Событийный подпроцесс (Event Sub-Process) специализированный подпроцесс, который выполняется внутри процесса/подпроцесса Родителя. Подпроцесс не имеет входящих и исходящих потоков деятельностей. Он не является частью нормального потока процесса/подпроцесса Родителя. Подпроцесс может появляться или не появляться пока выполняется процесс/подпроцесс Родитель. Подпроцесс может появляться многократно. У этого подпроцесса может быть только одно событие начала. Событием начала могут быть сообщение, ошибка, эскалация, компенсация, условное, сигнал, множественное Пока процесс родителя активен, событийный подпроцесс стартует. Когда событийный подпроцесс стартует подпроцесс Родителя может прерываться или не прерываться событийным подпроцессом. Прерывание подпроцесса Родителя определяется событием начала событийного подпроцесса
Объекты потока. Типы подпроцессов. Пример событийного процесса
Объекты потока. Типы подпроцессов Пример событийного процесса
Объекты потока. Типы подпроцессов Транзакция представляет собой подпроцесс для которого может быть задано несколько вариантов выхода потока: для успешного выполнения транзакции, ее отмены и выполнения с ошибкой. Транзакция обозначается двойной линией. В случае отмены транзакции (внутри транзакции произошло завершающее событие с результатом «отмена» или поступило соответствующее сообщение) все выполненные до этого момента действия внутри нее будут отменены (компенсированы), причем в обратном порядке. В случае сбоя ход процесса внутри транзакции прерывается без компенсации и управление переходит на событие сбоя
Объекты потока. Типы подпроцессов Транзакция
Объекты потока. Типы подпроцессов Транзакция
Объекты потока. Типы подпроцессов Ad - Hoc представляет собой специализированный подпроцесс , включающий группу деятельностей, которым не требуются связи между деятельностями. Деятельности выполняются в произвольной последовательности. Не обязательно все, возможно с повторами. Условия выхода задается атрибутами подпроцесса
Объекты потока. Типы подпроцессов BPMN определяет следующие маркеры для подпроцессов: 1. Маркер стандартного цикла 2. Маркер многих экземпляров 3. Маркер компенсации 4. Маркер процессов Ad-Hoc Маркер цикла и многих экземпляров объединяться не могут. Другие маркеры могут объединяться друг с другом, например, компенсация и Ad-Hoc
Объекты потока. Подпроцессы. Декомпозиция разделение процесса на подпроцессы с целью уменьшения его сложности. Хороший стиль 7 плюс/минус 2 подпроцесса на верхнем уровне процесса. Правила: 1. Последовательные потоки подпроцесса не могут пересекать его границ 2. Событие начала подпроцесса может быть только пустым
Примеры использования сообщений в Enterprise Architect
Объекты потока. Логические операторы. Ветвление и слияние Изображение элемента Назначение Оператор исключающего ИЛИ. Используется для создания альтернативных путей внутри бизнес-процесса. При ветвлении потоков исполняется одна ветвь, для которой истинно условие. При слиянии потоков ожидает завершения одной входящей ветви и активирует исходящий поток Сложный оператор. Используется для моделирования сложных условий ветвления и слияния Оператор И. При разделении на параллельные потоки все ветви активируются одновременно. При синхронизации параллельных ветвей оператор ждет завершения всех входящих ветвей и затем активирует исходящий поток Оператор И/ИЛИ. При ветвлении активируется одна или более ветвей. При слиянии все выполняющиеся входящие ветви должны быть завершены Оператор исключающего ИЛИ, событийный. Поток управления направляется по той ветви, где событие произошло раньше. Предшествует только событиям обработки или задачам-обработчикам сообщений. Для слияния потоков не используется
Примеры событийного исключающего ИЛИ
Примеры событийного исключающего ИЛИ
Ветвление и слияние Если на нескольких исходящих из объекта связях не указаны условия перехода или указаны не взаимоисключающие условия, то линии процесса будут выполняться параллельно Если несколько параллельных потоков входят (без шлюза) в действие, это действие и следующие за ним выполнятся многократно
Данные Используются для отображения данных, связанных с бизнеспроцессов Включают: 1. Объекты данных (Data Objects) 2. Входные данные (Data Inputs) 3. Выходные данные (Data Outputs) 4. Хранилища данных (Data Store)
Данные Изображение элемента Назначение Объект данных представляет информацию, которая обрабатывается в ходе процесса, например, документ или письмо Входные данные – внешний вход для процесса, задачи. Действия могут использовать эти данные. Выходные данные – результат выполнения процесса, задачи Коллекция объектов данных представляет группу объектов, несущих информацию, например, список заказанных товаров Хранилище данных – объект, который процесс может использовать для записи и извлечения данных, например, база данных Инициирующее сообщение (полученное) Сообщение ответ (отправленное)
Соединяющие объекты Используются для отображения связей между элементами Включают: 1. Потоки деятельностей (Sequence Flows ) 2. Потоки сообщений (Message Flows ) 3. Ассоциации данных (Data Associations ) 4. Ассоциации (Associations)
Соединяющие объекты. Потоки деятельностей Поток деятельностей (Sequence Flow) Sequence Flow is used to show the order that Activities will be performed in a Process Поток деятельностей отображает порядок выполнения деятельностей в процессе Поток деятельностей называется нормальным, если он не начинается при появлении промежуточного события, прикрепленного к границе деятельности В рамках одного процесса деятельность 2 начинает выполняться после окончания выполнения деятельности 1
Соединяющие объекты. Потоки деятельностей Поток деятельностей называется потоком исключения, если он начинается при появлении промежуточного события, прикрепленного к границе деятельности
Соединяющие объекты. Поток сообщений между двумя процессами. Прерывистая стрелка с кружком вначале и не закрашенным треугольником в конце С потоком сообщение может быть связано изображение сообщения. Поток сообщений должен соединять два отдельных пула (области) Поток сообщений может быть присоединен к границе пула или к объектам потока внутри пула. Поток сообщений не может соединять два объекта потока внутри пула
Соединяющие объекты. Компенсационная ассоциация используется вне нормального потока деятельностей в процессе. Она связана с промежуточным событием компенсации, присоединенному к границе деятельности и деятельностью по компенсации
Области ответственности Используются для группировки элементов диаграммы Включают: 1. Область (Pool) 2. Дорожка (Lanes)
Артефакты используются для отображенияния дополнительной информации по процессу Включают: 1. Текстовые аннотации 2. Группы
Типы бизнес-процессов Тип Назначение Внутренний процесс. Оркестровка Поток работ организации. Внутренний процесс. Процесс бывает исполняемый и не исполняемый. Не исполняемый процесс это процесс используемый для документирования. Исполняемый процесс используется для исполнения в BPMS системах. BPMS (Business Process Management Suite) - это класс программного обеспечения для управления бизнеспроцессами Внутренний процесс отображается в отдельной области. Поток процесса не может пересекать границы области Общественный процесс. Оркестровка Отображает взаимодействие между бизнес-процессами Хореографии Отображает взаимодействие между участниками. Каждый шаг хореографии включают два или более участника. Хореографии рассматриваются вне областей Диалог Отражает диалоги между участниками
Пример внутреннего процесса
Пример общественного процесса
Хореография есть определенный процесс, который отличается по назначению и поведению от стандартных процессов BPMN. Стандартные процесс, или процесс оркестровки, определяет поток деятельностей конкретного участника. Хореография же формализует способ взаимодействия участников. Упор делается не выполнение деятельностей участниками, а на обмене информацией (сообщениями) между этими участниками. В хореографии не используются отдельные области ответственности
Задача хореографии
Циклы в хореографии
Циклы по участникам
Задача хореографии При моделировании хореографии необходимо руководствоваться следующим правилом. Инициатор сообщения в текущей задаче хореографии должен принимать участие в предыдущей задаче хореографии. Это правило не относиться к первоначальной хореографии
Задача хореографии Участник А не будет знать время отправки сообщения М 3 участнику С. Если сообщение отправить слишком быстро то участник С может быть не готов его получить
Аналог задачи хореографии
Аналог задача хореографии
Пример хореографии
Логические операторы
Под-хореография
Пример общественного процесса
Пример хореографии
Пример взаимодействия
Взаимодействие бизнес-процессов
Диалог участников Диалог (Conversation) есть логическая связь обмена сообщениями. Логическая связь часто связана с бизнес-объектами: заказ, отгрузка и доставка и т. п. Диалог представляет набор потоков сообщений
Пример диалога
Пример диалога
Спасибо за внимание! Контакты: www. interface. ru
bpmn_ИНТ.ppt