Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Участники (swimlanes) бизнес-процесса



Таких участников в BPMN бывает два вида. Первый вид - участник бизнес-процесса (pool). Это бизнес-сущность (например, компания), участвующая в бизнес-процессе, или некоторая бизнес-роль - покупатель, продавец, дилер и т. д. В одном бизнес-процессе может быть много компаний, но часть из них может быть представлена бизнес-ролями. Это означает, что в этом общем бизнес-процессе не существенны детали их индивидуальных, внутренних бизнес-процессов, а важна только стандартная реакция, определяемая теми ролями, которые они играют. Одну и ту же роль могут играть разные компании, выполняющие лишь определенные правила взаимодействия. Как бизнес-роль (покупатель, продавец некоторой биржи), так и уникальная компания (например Центробанк РФ) являются в BPMN участниками бизнес-процесса. Пример показан на рис.11.8а.


Рис. 11.8. Участники бизнес-процесса

 

На этом рисунке представлены два участника бизнес-процесса - Client и Service Provider. В каждом из них определен свой бизнес-процесс. Эти участники взаимодействуют друг с другом, обмениваясь сообщениями. Отмечу, что эти сообщения можно было " протащить" до отдельных задач, но можно оставить и так: здесь мы не будем вдаваться в детали семантики сообщений.

Участник бизнес-процесса может содержать других участников, например, функциональные подразделения внутри компании. В BPMN для этого есть конструкция lane. Этот термин переведен на русский язык как внутренний участник, хотя авторы BPMN точно не определяют семантику этой конструкции. Следовательно, внутренний участник - это одна из возможных трактовок.

На рис.11.8б показан пример внутренних участников. Так, в компании под названием Service Provider из примера на рис.11.8а имеется два отдела - отдел продаж (Sale Department) и производственный отдел (Manufacturing Department). Бизнес-процесс этой компании на рис.11.8б распределен по этим двум участникам.

Внутренний участник - это еще один способ декомпозиции бизнес-процесса, наряду с подпроцессами. Пользуясь терминологией теории графов можно сказать, что подпроцессы - это декомпозиция " в глубину", а внутренние участники - декомпозиция " в ширину". В случае подпроцессов создаются " этажи" описания бизнес-процесса, а в случае использования внутренних участников " плоское плотно" действий разбивается на группы, каждая из которых не скрывается за одним подпроцессом, а помещается в отдельную секцию на диаграмме - внутреннего участника.

 

 

Порты (gateways)

Этот вид конструкций позволяет управлять потоком выполнения процесса - ветвить его (в логическом смысле и в смысле распараллеливания) и соединять. Таким образом, почти каждый вид порта может быть использован в двух вариантах - как разветвитель и как соединитель. Общий список портов BPMN показан на рис.11.9.

 


Рис. 11.9. Порты

 

На рис.11.9а показан традиционный оператор логического ветвления по условию. BPMN предлагает два варианта для его изображения - обычный ромбик и ромбик с крестиком внутри. Первый вариант удобен, если никаких других типов ромбиков на диаграмме нет, второй - если на диаграмме есть иные, экзотические ромбики (рис.11.9б, в, г, д ). В этом случае ромб с крестиком используется, чтобы разные ромбы можно было легко отличать друг от друга. Логический соединитель означает объединение разных логических веток. Например, пусть есть оператор switch с разными ветками, но вот он заканчивается, и какая бы ветка не выполнилась в этом операторе, далее поток управления одинаков для всех случаев.

На рис.11.9б показан оператор распараллеливания и соединения потоков управления. Как следует из этого рисунка, он может быть изображен с ромбиком и без.

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

На рис.11.9г показан сложный разветвитель. Он введен для того, чтобы можно было задавать более сложную семантику ветвления потоков управления, чем было определено выше ( BPMN не специфицирует эту семантику). Возможно, что новое условие будет некоторой комбинацией представленных выше операторов. Таким образом, этот оператор должен обязательно сопровождаться некоторым выражением, точно определяющим его семантику. То же самое можно сказать и про использование этого оператора как соединителя - требуется задать специальное выражение, которое определит условие для множества всех потоков, заданных на спецификации как входящих в этот оператор. Например, можно определить такой порт как соединитель, соединяющий на диаграмме три параллельных потока, с условием, что он " пропускает" выполнение процесса дальше, если дождался любых двух из трех.

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

Событиe (event) - это некоторое происшествие, возникшее во время исполнения процесса. Событиями могут быть инициация/завершение процесса, прием/посылка сообщения, завершение какой-либо задачи или подпроцесса и т. д. Не все события одинаково интересны с точки зрения бизнес-процесса и, значит, достойны специального обозначения на диаграммах. Но многие события способны влиять на порядок выполнения процесса, активировать и прерывать те или иные его действия. Вот их-то в BPMN и предлагают специально выделять.

На диаграммах BPMN событие изображается, как показано на рис.11.10а. Внизу, сразу под символом события, указывается его имя или источник. События бывают трех типов:

  • начальное (start) - событие, с которого начинается процесс или подпроцесс;
  • промежуточное (intermidiate), которое случается в " середине" процесса;
  • конечное (end), наступление которого означает завершение процесса или подпроцесса.


Рис. 11.10. События

 

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

  • прием/посылка сообщения (message);
  • истечение определенного промежутка времени (timer);
  • исключение (error) - происшествие исключительного события, например, ошибки при обработке данных;
  • отмена (cancel) - отмена действия или транзакции: возврат объемлющего процесса или подпроцесса к состоянию, которое было до начала исполнения этого действия/транзакции;
  • компенсация (compensation)- выполнение специальных отменяющих действий, например при отказе заказчика от услуги;
  • выполнение правила (rule) - событие, которое обозначает, что в бизнес-процесе выполнилось какое-либо бизнес-правило, например, ставка акций компании поднялась выше определенной суммы, и в результате этого нужно сделать что-то особое, определенное (например, собрать совет акционеров компании);
  • связь (link) - способ переключаться между двумя процессами (как правило, подпроцессами одного общего) или как оператор goto в рамках одного процессора; в первом случае первый подпроцесс должен иметь конечное событие такого типа с пометкой, в какой подпроцесс " прыгать" дальше; а тот, второй подпроцесс, должен либо стартовать с события, также помеченного как link, либо ожидать такое же промежуточное событие; и в том и в другом случае целевые события link должны иметь идентификатор, связывающий их с тем, исходным событием link;
  • множественный триггер (multiple) - " ловит" (в качестве начального или промежуточного события) одно событие из списка событий, связанных с ним; в качестве заключительного события порождает весь список связанных с ним событий.
  • конец (terminate) - имеет только тип " конец", обозначает, что все действия процесса и экземпляры (если их запущено более одного) завершаются.

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

 

11.9. Контрольные вопросы

  1. В чем суть идеи разделения труда?
  2. Кто и когда предложил эту идею, как она эволюционизировала в бизнесе?
  3. Дайте определение бизнес-процессу. Что нового эта идея принесла в бизнес? Почему она оказалась столь революционной?
  4. Дайте определение бизнес-реинжинирингу.
  5. Что такое ERP-система?
  6. Объясните, как Workflow Engine (WE) исполняет спецификацию бизнес-процесса.
  7. Расскажите о пользе WE для бизнеса.
  8. Что такое web-сервисы и как они связаны с бизнес-процессами?
  9. Какие бывают виды сущностей (connecting objects) в BPMN?
  10. Что такое действие?
  11. Что такое задача?
  12. Что такое подпроцесс?
  13. Какие виды связей бывают у сущностей бизнес-процессов?
  14. Какие сущности бизнес-процессов могут обмениваться сообщениями, и какие не могут? Почему?
  15. Что такое участник бизнес-процесса?
  16. Образует ли внутренний участник процесса (lane) отдельную нить исполнения процесса, то есть распараллеливается ли поток управления с помощью этой конструкции?
  17. Что такое порт (gateway), зачем он нужен?
  18. Назовите три способа графически изображать логическое ветвление потока управления на диаграммах BPMN.
  19. Что такое событие? Какие бывают типы событий (не спутайте виды событий и типы событий)?

 

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-05-28; Просмотров: 918; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.018 с.)
Главная | Случайная страница | Обратная связь