Sunday, 24 April 2011

pattern BPMN examples

Following the articles for patterns and using BPMN intalio tools, i submit the below examples for the discussed patterns.
click on the images to see the examples

and-split pattern..


or-split pattern



xor-split pattern


Giannis Giataganas IS Consultant, BPM Analyst Bsc in Informatics, AUEB MscIS, Athens University of Economic and Business

Tuesday, 12 April 2011

Advanced Branch and Join Patterns-Multi-Choice

Earlier I have posted the basic Patterns of P4 in Real modeling Process . These were the basic patterns which we use all the time and are fundamental in process modeling. Furthermore we must mention that advanced patterns are also a necessity in modeling world as they are also used extensively.
Starting from the common pattern which is called Multi Choice, we refer to a pattern which is placed so as to choose one or more parallel branches in which each branch is taken only if it satisfies a particular condition. This pattern is also called as Inclusive Or split. The difference between exclusive and inclusive OR is that exclusive_OR allows only one branch to direct the process where inclusive OR allows more than one path to be spawned.

Synchronizing Merge

The intent of synchronizing merge is to join branches spawned by a Multi-Choice(see above). That is to wait for all active paths in a parallel to complete. This Pattern is also known as Inclusive_OR_Join. Though the idea is intuitive and this pattern can help us solve many problematic areas, many BPM products cannot support it because of its implementation difficulties of tracking which branch was executed. Languages that use the Petri-Net conception of token passing to model control flow can implement such a pattern.
As far as BPEL is concerned, it uses the principle of dead path elimination, another Petri_Net inspired concept, to solve this problem. 



Giannis Giataganas IS Consultant, BPM Analyst Bsc in Informatics, AUEB MscIS, Athens University of Economic and Business

Continuing with Patterns- Exclusive Choice


The intent of the Exclusive Pattern is to branch from a single activity to exactly one of several paths, based on the evaluation of a condition. This pattern is known as a XOR-split.
The need for such a pattern is big and this is used widely in everyday’s activity. To understand the power of the XOR split we just give an example of a bank customer who wants to login to the i-bank. The customer gives the password and if the password is correct he is redirected to a welcome page. Otherwise if something goes wrong the customer is informed that he cannot access his account. So this behavior is modeled as an XOR split from Get approval to send welcome user page or Send rejection message. The effect is that of an if statement in the process.
Implementations of this widely supported pattern include control constructs (this can be a switch statement in BPEL and BPML) and explicit split elements(such as XOR gateway in BPMN and the diamond in UML activity diagrams).
Simple merge
The intent of a simple merge pattern is  that several exclusive conditional paths converge on a single activity, which starts executing when the one chosen path completes. The pattern is also known as XOR-Join.  A simple merge is actually the endpoint – XOR join- of a process that splits and which started by an exclusive choice. In programming we can assume that it is the end of an if statement . now in languages in which conditional processing is modeled as a control structure (such as BPEL and BPMN) the control structure can manage the merge(for example, when the switch case in BPEL completes, its selected case is quaranteed to have completed.)



Giannis Giataganas IS Consultant, BPM Analyst Bsc in Informatics, AUEB MscIS, Athens University of Economic and Business

counter