Студопедия

Главная страница Случайная лекция

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика






Порты (gateways)

Читайте также:
  1. Аэропорты
  2. Крупные города и их населения, крупный образующий город ядро (промышленность, что там ,порты)
  3. Морские порты
  4. Правила централизованного завоза (вывоза) грузов в речные порты автомобильным транспортом.

Этот вид конструкций позволяет управлять потоком выполнения процесса - ветвить его (в логическом смысле и в смысле распараллеливания) и соединять. Таким образом, почти каждый вид порта может быть использован в двух вариантах - как разветвитель и как соединитель. Общий список портов 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) - имеет только тип "конец", обозначает, что все действия процесса и экземпляры (если их запущено более одного) завершаются.

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

 


<== предыдущая страница | следующая страница ==>
Участники (swimlanes) бизнес-процесса | Разработка модели бизнес-прецедентов

Дата добавления: 2014-02-26; просмотров: 460; Нарушение авторских прав


lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.004 сек.