background image

Workflow Patterns

Struktura

     

Workflow Patterns

Basic Control Patterns

Advanced Branching 

and Synchronization Patterns

Structural Patterns

Patterns Involving 

Multiple Instances

State-based patterns

Cancellation Patterns

Sequence

Synchronizing Merge

Multiple Choice

Parallel Split

Synchronization

Exclusive Choice

Simple Merge

Multiple Merge

 

Discriminator

N-out-of-M Join

Arbitrary Cycles

Implicit Termination

MI without synchronization

 

MI with a priori known 

design time knowledge

MI with a priori known 

runtime knowledge

MI with no a priori 

runtime knowledge

 

Deferred Choice

Milestone

Interleaved 

Parallel Routing

 

Cancel Activity Cancel Case

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

1

Basic 

Control 

Patterns

Sequence

Czynności wykonywane są 

sekwencyjnie.

2

Parallel Split

Podział wątku procesu na inne, 

wykonywane równolegle.

3

Synchronization Synchroniczne połączenie 

równolegle wykonywanych 

wątków procesu w jeden.

4

Exclusive 

Choice

Wybór jednego wątku do 

wykonania (podział XOR).

5

Simple Merge

Asynchroniczne połączenie 

alternatywnych wątków procesu 

w jeden.

background image

Workflow Patterns 

Sequence

Obiekty:

Activity

Sequence Flow

Charakterystyka:

Po zakończeniu czynności 
rozpoczyna się kolejna

Kierunek przepływu 
określany jest przez 
połączenia między 
elementami (Sequence Flow)

Token przekazywany jest od 
czynności zakończonej do 
kolejnej

Przejścia są bezwarunkowe

A

B

C

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

1

Basic 

Control 

Patterns

Sequence

Czynności wykonywane są 

sekwencyjnie.

2

Parallel Split

Podział wątku procesu na inne, 

wykonywane równolegle.

3

Synchronization Synchroniczne połączenie 

równolegle wykonywanych 

wątków procesu w jeden.

4

Exclusive 

Choice

Wybór jednego wątku do 

wykonania (podział XOR).

5

Simple Merge

Asynchroniczne połączenie 

alternatywnych wątków procesu 

w jeden.

background image

Workflow Patterns 

Paralell Split, Mechanizm I

Obiekty notacji:

Activity

Paralell Gateway

Sequence Flow

Charakterystyka:

Istnieje N równoległych 
ścieżek (N>=2)

Token przekazywany jest do 
każdej równoległej ścieżki

Przejścia są bezwarunkowe

„best practice”

A

B

C

+

A

B

C

background image

Workflow Patterns 

Paralell Split, Mechanizm II

Obiekty:

Activity

Sequence Flow

Charakterystyka:

Istnieje N równoległych 
ścieżek (N>=2)

Token przekazywany jest do 
każdej równoległej ścieżki

Przejścia są bezwarunkowe

A

B

C

background image

Workflow Patterns 

Paralell Split, Mechanizm III

Obiekty:

Activity

Sequence Flow

Sub-Process

Charakterystyka:

Process (Sub-Process) zawiera 

czynności nie generowane 

przez Start Event

Czynności te rozpoczynają się 

w momencie rozpoczęcia 

procesu 

Token przekazywany jest do 

każdej z tych czynności

A

B

C

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

1

Basic 

Control 

Patterns

Sequence

Czynności wykonywane są 

sekwencyjnie.

2

Parallel Split

Podział wątku procesu na inne, 

wykonywane równolegle.

3

Synchronization Synchroniczne połączenie 

równolegle wykonywanych 

wątków procesu w jeden.

4

Exclusive 

Choice

Wybór jednego wątku do 

wykonania (podział XOR).

5

Simple Merge

Asynchroniczne połączenie 

alternatywnych wątków procesu 

w jeden.

background image

Obiekty:

Activity

Sequence Flow

Parallel Gateway

Charakterystyka:

Token każdej równoległej 
ścieżki po dotarciu do Parallel 
Gateway przekazywany jest 
dalej

Połączenie ścieżek jest 
zsynchronizowane

C

A

B

+

Workflow Patterns 

Synchronization, Mechanizm I

background image

Workflow Patterns 

Synchronization, Mechanizm II

Obiekty:

Activity

Sequence Flow

Sub-Process

Charakterystyka:

Process (Sub-Process) zawiera 
czynności nie ograniczone 
przez End Event

Zakończenie procesu 
synchronizuje zakończenie 
wszystkich czynności procesu

Po zakończeniu procesu Token 
przekazywany jest dalej

C

A

B

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

1

Basic 

Control 

Patterns

Sequence

Czynności wykonywane są 

sekwencyjnie.

2

Parallel Split

Podział wątku procesu na inne, 

wykonywane równolegle.

3

Synchronization Synchroniczne połączenie 

równolegle wykonywanych 

wątków procesu w jeden.

4

Exclusive 

Choice

Wybór jednego wątku do 

wykonania (podział XOR).

5

Simple Merge

Asynchroniczne połączenie 

alternatywnych wątków procesu 

w jeden.

background image

Workflow Patterns 

Exclusive Choice

Obiekty:

Activity

Sequence Flow

Exclusive Gateway

Charakterystyka:

Istnieje N alternatywnych 

ścieżek (N>=2)

Wybrana może zostać tylko 

jedna

Token przekazywany jest do 

wybranej ścieżki

A

B

C

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

1

Basic 

Control 

Patterns

Sequence

Czynności wykonywane są 

sekwencyjnie.

2

Parallel Split

Podział wątku procesu na inne, 

wykonywane równolegle 

(jednocześnie).

3

Synchronization Synchroniczne połączenie 

równolegle wykonywanych 

wątków procesu w jeden.

4

Exclusive 

Choice

Wybór jednego wątku do 

wykonania (podział XOR).

5

Simple Merge

Asynchroniczne połączenie 

alternatywnych wątków procesu 

w jeden.

background image

Workflow Patterns 

Simple Merge, Mechanizm I

Obiekty:

Activity

Sequence Flow

Exclusive Gateway

Charakterystyka:

Token jednej z N (N>=2) 

alternatywnych ścieżek 

przekazywany jest dalej

Połączenie alternatywnych 

ścieżek nie jest opatrzone 

warunkiem (ścieżki 

wygenerowane przez 

Exclusive Choice – 

oczekiwany jest jeden Token)

C

A

B

background image

Workflow Patterns 

Simple Merge, Mechanizm II

Obiekty:

Activity

Sequence Flow

Charakterystyka:

Token jednej z N (N>=2) 
alternatywnych ścieżek 
przekazywany jest dalej

Połączenie alternatywnych 
ścieżek nie jest warunkowe 
(wygenerowane przez Exclusive 
Choice – oczekiwany jest jeden 
Token)

Jeśli oczekiwany jest więcej niż 
jeden Token, Exclusive Gateway 
zadziała jak Discriminator

C

A

B

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

6

Advanced 

Branching 

and 

Synchroniza

tion 

Patterns

Multiple Choice

Dowolny wybór wątków procesu 

do wykonania. 

7

Synchronizing 

Merge

Synchroniczne połączenie 

równoległych wątków procesu w 

jeden.

8

Multiple Merge

Dowolne połączenie 

równoległych lub alternatywnych 

wątków procesu w jeden.

9

Discriminator

Przebieg procesu kontynuowany 

jest według wątku, który 

pierwszy pojawi się w „punkcie 

kontrolnym”.

10

N-out-of-M Join

Synchroniczne połączenie M 

równoległych wątków procesu w 

N.

background image

Workflow Patterns 

Multiple Choice, Mechanizm I

Obiekty:

Activity

Conditional Sequence Flow

Default Sequence Flow

Charakterystyka:

Istnieje N możliwych ścieżek 

(N>=2)

N ścieżek może zostać 

wybranych

Przejście do wybranych 

ścieżek jest opatrzone 

warunkiem

Token przekazywany jest do 

każdej wybranej ścieżki

Przynajmniej jedna ścieżka 

musi zostać wybrana

A

B

C

background image

Workflow Patterns

 

Multiple Choice, Mechanizm II

Obiekty:

Activity

Inclusive Gateway

Sequence Flow

Charakterystyka:

Istnieje N możliwych ścieżek 

(N>=2)

N ścieżek może zostać 

wybranych

Przejście do wybranych 

ścieżek jest warunkowe

Token przekazywany jest do 

każdej wybranej ścieżki

Przynajmniej jedna ścieżka 

musi zostać wybrana

A

B

C

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

6

Advanced 

Branching 

and 

Synchroniza

tion 

Patterns

Multiple Choice

Dowolny wybór wątków procesu 

do wykonania. 

7

Synchronizing 

Merge

Synchroniczne połączenie 

równoległych wątków procesu w 

jeden.

8

Multiple Merge

Dowolne połączenie 

równoległych lub alternatywnych 

wątków procesu w jeden.

9

Discriminator

Przebieg procesu kontynuowany 

jest według wątku, który 

pierwszy pojawi się w „punkcie 

kontrolnym”.

10

N-out-of-M Join

Synchroniczne połączenie M 

równoległych wątków procesu w 

N.

background image

Workflow Patterns

 

Synchronizing Merge

Obiekty:

Activity

Sequence Flow

Inclusive Gateway

Charakterystyka:

Inclusive Gateway łączy N 

równoległych ścieżek (N>=2)

Token przekazywany jest 

dalej przez Inclusive Gateway 

w momencie odebranie 

Tokenów ze wszystkich 

ścieżek 

C

A

B

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

6

Advanced 

Branching 

and 

Synchroniza

tion 

Patterns

Multiple Choice

Dowolny wybór wątków procesu 

do wykonania. 

7

Synchronizing 

Merge

Synchroniczne połączenie 

równoległych wątków procesu w 

jeden.

8

Multiple Merge

Dowolne połączenie 

równoległych lub alternatywnych 

wątków procesu w jeden.

9

Discriminator

Przebieg procesu kontynuowany 

jest według wątku, który 

pierwszy pojawi się w „punkcie 

kontrolnym”.

10

N-out-of-M Join

Synchroniczne połączenie M 

równoległych wątków procesu w 

N.

background image

Workflow Patterns

 

Multiple Merge

Obiekty:

Activity

Sequence Flow

Charakterystyka:

Połączenie N równoległych 
ścieżek (N>=2)

D

B

C

A

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

6

Advanced 

Branching 

and 

Synchroniza

tion 

Patterns

Multiple Choice

Dowolny wybór wątków procesu 

do wykonania. 

7

Synchronizing 

Merge

Synchroniczne połączenie 

równoległych wątków procesu w 

jeden.

8

Multiple Merge

Dowolne połączenie 

równoległych lub alternatywnych 

wątków procesu w jeden.

9

Discriminator

Przebieg procesu kontynuowany 

jest według wątku, który 

pierwszy pojawi się w „punkcie 

kontrolnym”.

10

N-out-of-M Join

Synchroniczne połączenie M 

równoległych wątków procesu w 

N.

background image

Workflow Patterns

 

Discriminator

Obiekty:

Activity

Sequence Flow

Exclusive Gateway

Charakterystyka:

Połączenie N równoległych 

ścieżek (N>=2)

Pierwszy Token, który dotrze 

do Exclusive Gateway jest 

przekazywany dalej

Exclusive Gateway może 

synchronizować wątki 

D

B

C

A

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

6

Advanced 

Branching 

and 

Synchroniza

tion 

Patterns

Multiple Choice

Dowolny wybór wątków procesu 

do wykonania. 

7

Synchronizing 

Merge

Synchroniczne połączenie 

równoległych wątków procesu w 

jeden.

8

Multiple Merge

Dowolne połączenie 

równoległych lub alternatywnych 

wątków procesu w jeden.

9

Discriminator

Przebieg procesu kontynuowany 

jest według wątku, który 

pierwszy pojawi się w „punkcie 

kontrolnym”.

10

N-out-of-M Join

Synchroniczne połączenie M 

równoległych wątków procesu w 

N.

background image

Workflow Patterns

 

N out of M join

Obiekty:

Activity

Sequence Flow

Complex Gateway

Charakterystyka:

Połączenie N równoległych 
wątków (N>=2)

Projektant określa liczbę 
Tokenów, które po dotarciu 
do Complex Gateway 
umożliwią kontynuowanie 

procesu

 

C

B1

B2

A

B3

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

11

Structural 

Patterns

Arbitrary Cycles Powtarzanie w pętli części 

procesu.

12

Implicit 

Termination

Czynności i ich zakończenie w 

procesie są od siebie zależne.

13 Patterns 

Involving 

Multiple 

Instances

MI without 

synchronization

Niesynchroniczne instancje 

czynności

14

MI with a priori 

know design 

time knowledge

Czynność wykonywana jest 

określoną przed rozpoczęciem 

procesu liczbę razy.

15

MI with a priori 

know runtime 

knowledge

Czynność wykonywana jest 

określoną w trakcie wykonywania 

procesu liczbę razy.

16

MI with no a 

priori runtime 

knowledge

Czynność wykonywana jest 

określoną przez inną czynność 

procesu liczbę razy.

background image

Workflow Patterns

 

Arbitrary Cycles

Obiekty:

Activity

Sequence Flow

Exclusive Choice

Inclusive Choice

C

E

B

+

A

D

+

Charakterystyka:          

                                    

            

Części procesu lub 

cały proces mogą być 

powtarzane

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

11

Structural 

Patterns

Arbitrary Cycles Powtarzanie w pętli części 

procesu.

12

Implicit 

Termination

Czynności i ich zakończenie w 

procesie są od siebie zależne.

13 Patterns 

Involving 

Multiple 

Instances

MI without 

synchronization

Niesynchroniczne instancje 

czynności

14

MI with a priori 

know design 

time knowledge

Czynność wykonywana jest 

określoną przed rozpoczęciem 

procesu liczbę razy.

15

MI with a priori 

know runtime 

knowledge

Czynność wykonywana jest 

określoną w trakcie wykonywania 

procesu liczbę razy.

16

MI with no a 

priori runtime 

knowledge

Czynność wykonywana jest 

określoną przez inną czynność 

procesu liczbę razy.

background image

Workflow Patterns

 

Implicit Termination

Obiekty:

Activity

Sequence Flow

Start Event

End Event

Charakterystyka:

N równoległych wątków 

wykonuje się jednocześnie 

(N>=2)

Zakończenie co najmniej 

jednego wątku może 

zakończyć wykonywanie 

całego procesu

C

B

C

A

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

11 Structural 

Patterns

Arbitrary Cycles Powtarzanie w pętli części 

procesu.

12

Implicit 

Termination

Czynności i ich zakończenie w 

procesie są od siebie zależne.

13

Patterns 

Involving 

Multiple 

Instances

MI without 

synchronization

Niesynchroniczne instancje 

czynności

14

MI with a priori 

know design 

time knowledge

Czynność wykonywana jest 

określoną przed rozpoczęciem 

procesu liczbę razy.

15

MI with a priori 

know runtime 

knowledge

Czynność wykonywana jest 

określoną w trakcie wykonywania 

procesu liczbę razy.

16

MI with no a 

priori runtime 

knowledge

Czynność wykonywana jest 

określoną przez inną czynność 

procesu liczbę razy.

background image

Workflow Patterns

 

MI without synchronization

Obiekty:

Activity

Sequence Flow

Multiple Activity

Charakterystyka:

Kolejne powoływane instancje 

czynności są od siebie 

niezależne

Kolejność powoływanych 

instancji nie ma wpływu na 

sposób wykonywania procesu

B

II

A

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

11 Structural 

Patterns

Arbitrary Cycles Powtarzanie w pętli części 

procesu.

12

Implicit 

Termination

Czynności i ich zakończenie w 

procesie są od siebie zależne.

13

Patterns 

Involving 

Multiple 

Instances

MI without 

synchronization

Niesynchroniczne instancje 

czynności

14

MI with a priori 

know design 

time knowledge

Czynność wykonywana jest 

określoną przed rozpoczęciem 

procesu liczbę razy.

15

MI with a priori 

know runtime 

knowledge

Czynność wykonywana jest 

określoną w trakcie wykonywania 

procesu liczbę razy.

16

MI with no a 

priori runtime 

knowledge

Czynność wykonywana jest 

określoną przez inną czynność 

procesu liczbę razy.

background image

Workflow Patterns

 

MI with a priori known design time knowledge

Obiekty:

Activity

Multiple Activity

Sequence Flow

Charakterystyka:

Instancja czynności może być 

powołań wielokrotnie

Liczba powołań instancji 

określana jest przez 

projektanta

B

II

A

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

11 Structural 

Patterns

Arbitrary Cycles Powtarzanie w pętli części 

procesu.

12

Implicit 

Termination

Czynności i ich zakończenie w 

procesie są od siebie zależne.

13

Patterns 

Involving 

Multiple 

Instances

MI without 

synchronization

Niesynchroniczne instancje 

czynności

14

MI with a priori 

know design 

time knowledge

Czynność wykonywana jest 

określoną przed rozpoczęciem 

procesu liczbę razy.

15

MI with a priori 

know runtime 

knowledge

Czynność wykonywana jest 

określoną w trakcie wykonywania 

procesu liczbę razy.

16

MI with no a 

priori runtime 

knowledge

Czynność wykonywana jest 

określoną przez inną czynność 

procesu liczbę razy.

background image

Workflow Patterns

 

MI with a priori known runtime knowledge

Obiekty:

Activity

Exclusive Gateway

Sequence Flow

Charakterystyka:

Instancja czynności może być 

powołań wielokrotnie

Liczba powołań instancji 

określana jest podczas 

wykonywania procesu

B

A

C

background image

Workflow Patterns

Nr

.

Kategoria

Nazwa

Opis

11 Structural 

Patterns

Arbitrary Cycles Powtarzanie w pętli części 

procesu.

12

Implicit 

Termination

Czynności i ich zakończenie w 

procesie są od siebie zależne.

13

Patterns 

Involving 

Multiple 

Instances

MI without 

synchronization

Niesynchroniczne instancje 

czynności

14

MI with a priori 

know design 

time knowledge

Czynność wykonywana jest 

określoną przed rozpoczęciem 

procesu liczbę razy.

15

MI with a priori 

know runtime 

knowledge

Czynność wykonywana jest 

określoną w trakcie wykonywania 

procesu liczbę razy.

16

MI with no a 

priori runtime 

knowledge

Czynność wykonywana jest 

określoną przez inną czynność 

procesu liczbę razy.

background image

Workflow Patterns

 

MI with no a priori runtime knowledge

Obiekty:

Activity

Multiple Activity

Sequence Flow

Exclusive Gateway

Charakterystyka:

Instancja czynności może być 

powołań wielokrotnie

Liczba powołań instancji 

określana jest w momencie 

powoływania instancji

B

A

C

background image

Workflow Patterns

Nr Kategoria

Nazwa

Opis

17

State-Based 

Patterns

Deferred Choice Wybór jednego wątku do 

wykonania (podział na podstawie 

przebiegu procesu).

18

Interleaved 

Parallel Routing

Czynności wykonywane są 

nierównolegle, w określonym 

porządku, porządek ustalany jest 

w trakcie wykonywania procesu.

19

Milestone

Kamień milowy

20 Cancellatio

n Patterns

Cancel Activity

Zakończenie czynności.

21

Cancel Case

Zakończenie procesu

background image

Workflow Patterns

 

Deferred Choice

Obiekty:

Activity

Sequence Flow

Message

Exclusive Gateways

Charakterystyka:

Istnieje N alternatywnych 

ścieżek (N>=2)

Wybrana może być tylko 

jedna

Decyzja o wyborze ścieżki 

generowana jest podczas 

wykonywania procesu

A

B

C

background image

Workflow Patterns

Nr Kategoria

Nazwa

Opis

17

State-Based 

Patterns

Deferred Choice Wybór jednego wątku do 

wykonania (podział na podstawie 

przebiegu procesu).

18

Interleaved 

Parallel Routing

Czynności wykonywane są 

nierównolegle, w określonym 

porządku, porządek ustalany jest 

w trakcie wykonywania procesu.

19

Milestone

Kamień milowy

20 Cancellatio

n Patterns

Cancel Activity

Zakończenie czynności.

21

Cancel Case

Zakończenie procesu

background image

Workflow Patterns 

Interleaved Parallel Routing

Obiekty:

Activity

Sequence Flow

Ad-Hoc Sub-Process

Charakterystyka:

Czynności wykonywane są w 
określonym porządku

W danej chwili wykonywana 
jest jedna czynności

Kolejność wykonywania 
określana jest w trakcie 
wykonywania procesu

C

A

B

~

background image

Workflow Patterns

Nr Kategoria

Nazwa

Opis

17

State-Based 

Patterns

Deferred Choice Wybór jednego wątku do 

wykonania (podział na podstawie 

przebiegu procesu).

18

Interleaved 

Parallel Routing

Czynności wykonywane są 

nierównolegle, w określonym 

porządku, porządek ustalany jest 

w trakcie wykonywania procesu.

19

Milestone

Kamień milowy

20 Cancellatio

n Patterns

Cancel Activity

Zakończenie czynności.

21

Cancel Case

Zakończenie procesu

background image

Workflow Patterns 

Milestone

Obiekty:

Activitiy

Sequence Flow

Sub-Process

End Event

Link

Charakterystyka:

Zakończenie danej czynności 
lub spełnienie określonego 
warunku (kamień milowy) 
powoduje przejście do 
odpowiedniej części procesu  

D

B

C

A

background image

Workflow Patterns

Nr Kategoria

Nazwa

Opis

17 State-Based 

Patterns

Deferred Choice Wybór jednego wątku do 

wykonania (podział na podstawie 

przebiegu procesu).

18

Interleaved 

Parallel Routing

Czynności wykonywane są 

nierównolegle, w określonym 

porządku, porządek ustalany jest 

w trakcie wykonywania procesu.

19

Milestone

Kamień milowy

20

Cancellatio

n Patterns

Cancel Activity

Zakończenie czynności.

21

Cancel Case

Zakończenie procesu

background image

Workflow Patterns 

Cancel Activity

Obiekty:

Activity

Sequence Flow

End Event

Error

Charakterystyka:

Czynności wykonywane są 
jednocześnie

Zakończenie jednej z 
czynności powoduje 
przerwanie innej

C

A

B

background image

Workflow Patterns

Nr Kategoria

Nazwa

Opis

17 State-Based 

Patterns

Deferred Choice Wybór jednego wątku do 

wykonania (podział na podstawie 

przebiegu procesu).

18

Interleaved 

Parallel Routing

Czynności wykonywane są 

nierównolegle, w określonym 

porządku, porządek ustalany jest 

w trakcie wykonywania procesu.

19

Milestone

Kamień milowy

20

Cancellatio

n Patterns

Cancel Activity

Zakończenie czynności.

21

Cancel Case

Zakończenie procesu

background image

Workflow Patterns 

Cancel Case

Obiekty:

Activity

Sequence Flow

Ad-Hoc Sub-Process

End Event

Error

Charakterystyka:

Czynności wykonywane są 
jednocześnie (równoległe 
ścieżki)

Zakończenie jednej z czynności 
powoduje przerwanie 
wykonywania zbioru czynności 
(Sub-Process)

C

A

B

D


Document Outline