Computing Degree of Parallelism for BPMN Processes

Computing Degree of Parallelism for BPMN Processes Computing Degree of Parallelism for BPMN Processes •  Yutian Sun •  Jianwen Su §  University of ...
4 downloads 0 Views 2MB Size
Computing Degree of Parallelism for BPMN Processes

Computing Degree of Parallelism for BPMN Processes •  Yutian Sun •  Jianwen Su §  University of California, Santa Barbara

Dec 6 2011

Find Peak Workload Demands •  Apartment purchase Monday

Tuesday

Wednesday Insurance

(1 Day) Apartment Purchase Application

Payment

Issue Certificate

Public Notification

(1 Day)

(1 Day)

(1 Day)

(3 Days)

Document Archive

(1 Day)

Dec 2011

Computing Degree of Parallelism for BPMN Processes

. . .

2

Outline •  Motivating example •  BPMN model and our technical problems •  Compute the peak workload demand §  Homogenous processes §  Acyclic choice-less processes §  Asynchronous processes

•  Conclusion and future work Dec 2011

Computing Degree of Parallelism for BPMN Processes

3

Business Process Management Notation Task Insurance

Parallel-join gateway

(1 Day) Apartment Purchase Application

Payment

Issue Certificate

Public Notification

(1 Day)

(1 Day)

(1 Day)

(3 Days)

Start node

Parallel-split gateway

Document Archive

(1 Day)

End node

Duration (positive integer)

X Dec 2011

Exclusive-merge gateway

X

Computing Degree of Parallelism for BPMN Processes

Exclusive-choice gateway

4

The Problem to Solve •  To compute the degree of parallelism under eager

scheduling policy §  Maximum number of running tasks at the same time §  The next task will start as soon as the previous one finishes The degree of parallelism is 3

Insurance

(1 Day)

Apartment Purchase Application

Payment

Issue Certificate

Public Notification

(1 Day)

(1 Day)

(1 Day)

(3 Days)

Document Archive

(1 Day)

Dec 2011

Computing Degree of Parallelism for BPMN Processes

5

Summary of Results Sub-Class of processes Homogenous

Complexity

O(n×log(n))

Acyclic Choice-less O(m×log(n) + m×L)

Asynchronous

Exponential If with constant number of cycles: O(L2)

* n: number of nodes; m: number of edges; L: sum of all tasks’ durations Dec 2011

Computing Degree of Parallelism for BPMN Processes

6

Outline •  Motivating example •  BPMN model and our technical problems •  Processes with different classes §  Homogenous processes §  Acyclic choice-less processes §  Asynchronous processes

•  Conclusion and future works Dec 2011

Computing Degree of Parallelism for BPMN Processes

7

Homogenous Processes •  Parallel

•  Choice

+

X §  Cannot generate new threads §  The degree of parallelism is always one

Dec 2011

•  Parallel gateways can fork threads §  How to compute?

Computing Degree of Parallelism for BPMN Processes

8

Parallel-Homogenous Processes Compute the Degree: Simulation O(nlog(n)) n: number of gateways and tasks

Priority Queue

2

0

2

1

2

1

1

...

4

3

9 g4

t3 e1

t1

t2

(2 Days)

(1 Day)

g1

g2

(3 Days)

(3 Days)

t5

g5

e2

(1 Day)

t6 (1 Day)

t4

g3

t7

t8 (1 Day)

(1 Day) Dec 2011

Computing Degree of Parallelism for BPMN Processes

9

Outline •  Motivating example •  BPMN model and our technical problems •  Compute the peak workload demand §  Homogenous processes §  Acyclic choice-less processes §  Asynchronous processes

•  Conclusion and future work Dec 2011

Computing Degree of Parallelism for BPMN Processes

10

Acyclic Choice-less Processes

+

+

X

X

* This example is in the paper Dec 2011

Computing Degree of Parallelism for BPMN Processes

11

g2

Process Decomposition •  Step 1: Decompose a

process by merge/join X +

e1

g7 g5

g2

g7

e1

g5

Property: each sub-process only has one entry Dec 2011

Computing Degree of Parallelism for BPMN Processes

12

Compute degree for Sub-Processes •  Step 2:

§  Treat + X as start or end nodes §  Similar to parallel-homogenous process t2 e1

g2

1 Day

2 Days

g4

e1

Dec 2011

0

3 Days

2 Days

2

1 3 t2

1 Day

g5

6

g4 g5 g4 g2

Computing Degree of Parallelism for BPMN Processes

13

Restore the Whole Process •  Step 3: Combine all the lists to one e1

2 0

g2 g7

Dec 2011

3 t2

6

7 g5 t10

1 1

t7

3

2

12

g4 g4 g2

2 0

24

1

9

t7 g5 t9 g7

g5 g5

1 10 t10

12 t9 g7

2 0

1 1 t10

t9

3

g7

Empty

Computing Degree of Parallelism for BPMN Processes

14

Complexity •  O(m×log(n) + m×L) §  m: number of edges §  n: number of nodes §  L: sum of all durations of tasks

Dec 2011

Computing Degree of Parallelism for BPMN Processes

15

Outline •  Motivating example •  BPMN model and our technical problems •  Compute the peak workload demand §  Homogenous processes §  Acyclic choice-less processes §  Asynchronous processes

•  Conclusion and future work Dec 2011

Computing Degree of Parallelism for BPMN Processes

16

Asynchronous Processes

+ Data Archive Evaluation Application

(2 Hours)

Apartment Assessment

Data Analysis

(1 Hour)

(1 Hour)

(1 Hour) Comment & Review

(1 Hour)

X

Dec 2011

Computing Degree of Parallelism for BPMN Processes

17

Degree May Be Infinite •  The degree of parallelism is finite if and only if no two cycles are connected (*) •  Compute the degree for asynchronous processes §  With at most one cycle: O(L3) •  L: sum of all tasks’ durations §  General: open

•  In this paper §  With at most one cycle: O(L2) §  General: exponential complexity

* [Potapova-Su WS-FM 2010] Dec 2011

Computing Degree of Parallelism for BPMN Processes

18

Improvements and Main Idea t

e1

4

t1

t2

t3

2

1

1

1

… e1

t11

t12

t2

1

t3

t2: (1, 2)

t4

t5

t4

t4

t2 t5

t3 t4

t2

t5

t4

t2 t5

t3 t4

t3

t2

t5

. . . . . . t2: (2, 4, 4, 4 …) = (2, (4)) Dec 2011

t2 t3

t3

t3 t5

t12

t2

t2 t4

t11

t5

Computing Degree of Parallelism for BPMN Processes

t5

t2 t3

t2

t4 t5 . . . . . .

The degree of parallelism is 4 19

Outline •  Motivating example •  BPMN model and our technical problems •  Compute the peak workload demand §  Homogenous processes §  Acyclic choice-less processes §  Asynchronous processes

•  Conclusion and future work Dec 2011

Computing Degree of Parallelism for BPMN Processes

20

Summary of Results Sub-Class of processes Homogenous

Complexity

O(n×log(n))

Acyclic Choice-less O(m×log(n) + m×L)

Asynchronous

Exponential If with constant number of cycles: O(L2)

* n: number of nodes; m: number of edges; L: sum of all tasks’ durations Dec 2011

Computing Degree of Parallelism for BPMN Processes

21

Conclusions and Future Work

•  Compute the peak workload demand •  Focus on 3 sub-classes of BPMN processes •  Future work §  Produce histogram for resource planning •  (Can be done with the existing algorithms) §  With non-eager scheduling §  Durations are intervals Dec 2011

Computing Degree of Parallelism for BPMN Processes

22

Q&A

Dec 2011

Computing Degree of Parallelism for BPMN Processes

23