Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Successfully reported this slideshow.

1,009 views

Published on

No Downloads

Total views

1,009

On SlideShare

0

From Embeds

0

Number of Embeds

5

Shares

0

Downloads

20

Comments

0

Likes

2

No embeds

No notes for slide

- 1. BPMN Process Views Construction Sira Yongchareon 1 , Chengfei Liu 1 , Xiaohui Zhao 1 , and Marek Kowalkiewicz 2 1 Centre for Complex Software Systems and Services Swinburne University of Technology, Australia 2 SAP Research Centre, Australia
- 2. Outline <ul><li>Introduction </li></ul><ul><li>Related work and Problems </li></ul><ul><li>Constructing Process Views </li></ul><ul><li>Related work </li></ul><ul><li>Conclusion </li></ul><ul><li>BPMN Model </li></ul><ul><li>Process Views Construction </li></ul><ul><li>Related Work </li></ul><ul><li>Conclusion </li></ul>
- 3. Introduction <ul><li>Process (workflow) Views </li></ul><ul><ul><li>an abstraction of base process by hiding / aggregating activities </li></ul></ul><ul><ul><li>improve the privacy protection, authority control, flexible display, collaborative process modelling </li></ul></ul>*Figure taken from Shen, M and Liu, D 2003
- 4. Related work <ul><li>Ordering-preserved process view approach (Liu and Shen, 2003) </li></ul><ul><ul><li>Rules : membership , atomicity , and order preservation </li></ul></ul><ul><li>Building and visualizing personalized views of managed processes (Bobrik, Reichert et al, 2007) </li></ul><ul><ul><li>Visualization approach to tackle inflexibility of building and visualizing personalized views of managed processes : reducing and aggregating </li></ul></ul><ul><li>Customized process view (Grefen and Eshuis, 2008) </li></ul><ul><ul><li>Process provider to construct process views - aggregation </li></ul></ul><ul><ul><li>Process consumer to filter unwanted information – activity hiding </li></ul></ul>
- 5. BPMN Process models
- 6. BPMN Process models (Collaboration)
- 7. Problems <ul><li>BPMN characteristic not considered in previous works </li></ul><ul><ul><li>More complex than other process models, e.g., events, exception handling </li></ul></ul><ul><ul><li>Allow arbitrary modelling (non block-structure) </li></ul></ul><ul><li>View construction more challenged </li></ul><ul><ul><li>Aggregation for non-well-structured process </li></ul></ul><ul><ul><li>Selective aggregation of branches – not all branches of the gateways </li></ul></ul><ul><ul><li>Minimal aggregation solution </li></ul></ul>
- 8. BPMN Process Model (Core) <ul><li>Definition: BPMN process bp is tuple ( O, T , T E , G , E , F ) where, </li></ul><ul><ul><li>O is a finite set of BPMN element objects divided into disjoint sets of T , G, and E </li></ul></ul><ul><ul><li>T is a finite set of tasks </li></ul></ul><ul><ul><li>G is a finite set of gateways </li></ul></ul><ul><ul><li>E is a finite set of events in bp ; event_type : E { Start , Catching-Intermediate , Throwing-Intermediate , End } is a function used to specify the type of event. </li></ul></ul><ul><ul><li>F O O is a finite set of control flow relations </li></ul></ul><ul><ul><li>T E E T is non-injective and non-surjective defining a finite set of attachment relations of intermediate catching events on tasks, called Event-attached task relation . </li></ul></ul><ul><ul><li>F * is reflexive transitive closure of F , written o i F * o j , if there exists a path from o i to o j . </li></ul></ul><ul><ul><ul><li>o i ( F T E ) * o j if there exists a path from object o i to o j via control flow relations F and event-attached task relations T E . </li></ul></ul></ul><ul><li>Function returns a set of all objects in all possible paths leading from o i via a control flow f i to o j via a control flow f j , such that o i , o j O , f i , f j F, o i ( f i F * f j ) o j . </li></ul>
- 9. BPMN example
- 10. BPMN Process Model <ul><li>Definition: Process fragment or P-fragment Pf is a tuple ( O', T' , T E ' , G' , E' , F', F in , F out ) where O' O, T' T, T E ' T E , G' G, E' E , F' O' O' F, such that, </li></ul><ul><ul><li> e s { E | event_type ( E ) =Start }, e e { E | event_type ( E ) =End }, e s E' e e E', i.e., Pf cannot contain any start or end event of bp </li></ul></ul><ul><ul><li> F in , F out F , F (( O O' ) O' )= F in F ( O' ( O O' ))= F out ; F in and F out are the set of entry flows and exit flows of Pf , respectively </li></ul></ul><ul><ul><li> o i O' , o m , o n O' , o x O O' , o y O O' , ( o x, , o m ) F in , ( o n , o y ) F out , o x F'*o i o i F'*o y , i.e., for every object o i in Pf . O' there exists a path from entry flow to o i and from o i to exit flow </li></ul></ul><ul><ul><li>for every object o O' there exists a path p =( e s , … , f i, , …, o, …, f o , …, e e ) starting from e s to e e via f i F in , o , and f o F out </li></ul></ul>
- 11. Constructing Process Views: Rules <ul><li>Process View Consistency Rules </li></ul><ul><ul><li>Rule 1: (Order preservation). For any two objects belonging to process views v 1 and v 2 , their execution order must be consistent if such objects exists in v 1 and v 2 </li></ul></ul><ul><ul><li>Rule 2: (Branch preservation). For any two objects belonging to process views v 1 and v 2 , the branch subjection relationship of them must be consistent </li></ul></ul><ul><ul><li>Rule 3: (Event-attached task preservation). For any event-attached task relation belonging to v 1 and v 2 , an existence of all coherence objects on the exception path led from such attached event must be consistent </li></ul></ul><ul><ul><li>Rule 4: (Message flow preservation). For any message flow exists in v 1 and v 2 , the message flow relation of its source and target objects must be consistent </li></ul></ul><ul><li>Aggregation Rules </li></ul><ul><ul><li>Aggregation Rule 1: (Atomicity of aggregate). An aggregate behaves as an atomic unit of processing (task); therefore, it must preserve the execution order for every task and event within it, as well as between itself and the process. </li></ul></ul><ul><ul><li>Aggregation Rule 2: (Objects in exception path). If the task in event-attached task relation is in the aggregate then every object in its exception path must be hidden in the process view; thus, it is not considered to be in the aggregate </li></ul></ul>
- 12. Constructing Process Views : Preliminary <ul><li>Definition: Given a set of objects N O in a process, a set of the least common predecessors ( lcp ) and the least common successors ( lcs ) of N are: </li></ul><ul><ul><li>lcp ( N ) = { o p O N | o N ( o p F * o ( o q O N ( o q F * o o q F * o p )))} </li></ul></ul><ul><ul><li>lcs ( N ) = { o s O N | o N ( oF * o s ( o q O N ( oF * o q o s F * o q )))} </li></ul></ul><ul><li>Functions lcpF ( N ) and lcsF ( N ) return the subset of outgoing flows of lcp ( N ) and incoming flows of lcs ( N ), respectively. (only contain the flows in F that flow into or out from N ) </li></ul><ul><ul><li>lcpF ( N ) = { F | o p lcp ( N ), o s lcs ( N ), o N , ( o p , o ) F | path ( o p o s ) | > 0} </li></ul></ul><ul><ul><li>lcsF ( N ) = { F | o s lcs ( N ), o p lcp ( N ) , o N , ( o, o s ) F | path ( o p o s ) | > 0} </li></ul></ul>
- 13. Constructing Process Views : lcp and lcs <ul><li>Example if N ={ t 2 , t 3 } </li></ul><ul><ul><li>lcp ( N ) = { g 1 } </li></ul></ul><ul><ul><li>lcs ( N ) = { g 4 , g 5 } </li></ul></ul><ul><ul><li>lcpF ( N ) = {( g 1 , t 2 ), ( g 1 , t 3 )} </li></ul></ul><ul><ul><li>lcsF ( N ) = {( g 2 , g 4 ), ( g 2 , g 5 ), ( g 3 , g 4 ), ( g 3 , g 5 )} </li></ul></ul>
- 14. Process Structure validation <ul><li>Definition: An enclosed P-fragment (EP-fragment) Pf ( O', T' , T E ' , G' , E' , F', F in , F out ) define a P-fragment of a process. If Pf has only one entry object and one exit object as its boundary, then it is enclosed </li></ul><ul><ul><li>Function Fwd ( f s , o y ) returns a set of objects by walking forward from f s to o y as well as from f s to the end event of the process </li></ul></ul><ul><ul><li>Function Bwd ( f e , o x ) returns a set of objects by walking backward from f e to o x as well as from f e to the start event of the process. </li></ul></ul><ul><li>Lemma 1: Given a set of objects N O in a process bp ( O, T , T E , G , E , F ) , an EP-Fragment Pf ( O', T' , T E ' , G' , E' , F', F in , F out ) can be formed by N, if and only if, </li></ul><ul><ul><li>i.e., the forward walks and backward walks of all combinations of lcpF and lcsF flows return the same result set identical to N in bp (1) </li></ul></ul><ul><ul><li> f p lcpF ( N ), o N , f p =( o x , o ), i.e., there exists only one entry object o x (2) </li></ul></ul><ul><ul><li> f s lcsF ( N ), o N , f s =(o, o y ) , i.e., there exists only one exit object o y (3) </li></ul></ul>
- 15. Process Structure validation <ul><li>Theorem 1: A P-fragment Pf ( O', T' , T E ' , G' , E' , F', F in , F out ) in a process bp ( O, T , T E , G , E , F ) can be aggregated if and only if it is enclosed. </li></ul><ul><li>Example: </li></ul><ul><ul><li>Pf 1 has one entry object o 5 but it has two exit objects o 12 and o 14 </li></ul></ul><ul><ul><li>Pf 2 has two entry objects o 3 and o 5 , and one exit object o 14 . </li></ul></ul><ul><ul><li>Pf 3 (selective branch, unenclosed) has two entry objects o 3 and o 9 , and one exit object o 16 . </li></ul></ul><ul><ul><li>Pf 4 (selective branch, enclosed) has only one entry object o 3 and one exit object o 16 . </li></ul></ul>
- 16. Minimal Aggregate <ul><ul><li>Function minAgg ( O A ) returns a minimal set of objects that can be aggregated, and hides every object on exception paths </li></ul></ul>
- 17. Minimal Aggregate <ul><li>Theorem 2: A set of objects O A O in a process bp ( O, T , T E , G , E , F ) satisfies all aggregation rules if and only if O A =minAgg ( O A ) . </li></ul><ul><li>Example </li></ul><ul><ul><li>Pf1 cannot form an EP-fragment then the boundary is expanded to Pf2 (enclosed) </li></ul></ul>
- 18. Prototype <ul><li>FlexView for BPMN (& XPDL) </li></ul>and 1 BizAgi ™ Process Modeler 1 BizAgi ™ is the product of BIZAGI, http://www.bizagi.com
- 19. Conclusion <ul><li>Constructing process views on BPMN to deal with the events and exceptions </li></ul><ul><li>Non-well structured process tackled by EP-fragment validation </li></ul><ul><li>Selective aggregation of branches feature </li></ul><ul><li>Minimal aggregate solution </li></ul>
- 20. Q & A <ul><li>Thanks </li></ul>

No public clipboards found for this slide

×
### Save the most important slides with Clipping

Clipping is a handy way to collect and organize the most important slides from a presentation. You can keep your great finds in clipboards organized around topics.

Be the first to comment