**7.2. Workflow logic and its case semantics**

Let (T,<), B ={b1, b2, …bm} and C = {c1, c2, …ck} be the main constituents of a business process. There is a precise correspondence between tasks in T and blanks (on B-form) in B; Condition set C is complete and consistent; the immediate successor relation < is implied by a combinatorial acyclic partial order on T. With all these requirements satisfied, ((T,<), B ,C) is a well-designed business process. We will not put all these into formal definitions since that would be cumbersome and uninteresting.

#### Definition 21

The C-net systemΣ'=(S,V,T;F,K,W,R,Wr,MT,M0) is a case semantics of the workflow logicΣ= (S,T;F,K,W,M0) developed for well-designed business process ((T,<), B , C), if the marking MT (which is constant) satisfies that for those t in T that have a guard, the guard is a condition in C, and every condition in C is the guard of some transition.◆

#### Definition 22

Let C-net systemΣ'=(S,V,T;F,K,W,R,Wr,MT,M0) be a case semantics of the workflow logicΣ= (S,T;F,K,W,M0) developed for well-designed business process ((T,<), B , C). If Σ is through, and for every OR-split synchronizer p = (. p, p., (a, b)), b<|p. |, for every condition ci in C, i = 1,2, … k, |{t|t∈ p. ∧ guard (t) = ci}|= b, then Σ'is consistent with Σ.◆

#### Theorem 8

If Σ is a through workflow logic and Σ′ is a case semantics consistent with Σ, then there is a unique route for every conceivable case. ◆

For a case in class ci, the route it will take is obtained by deleting from Σ all transitions whose guard is not ci together with their successor elements.

Figure 26 shows another case semantics of the insurance claim business process where cases are divided into 3 classes by conditions c1 = x∧y, c2 = (x∧¬y)∨( ¬ x∧y) and c3 = ¬x∧¬y . The task set has one more end-task for this classification.

**Figure 26.** Another Case Semantics for Insurance Claim

The only OR-split synchronizer in Figure 26 is p2. It has 3 tasks in its post-set and each of which bears a different condition as its guard. This is consistent with p2: p2 is a XOR-split synchronizer.

### **8. Business process management**

So far we have proposed a formal model as workflow logic and a formal model as case semantics for a well-designed business process. Case semantics in embedded in a Workflow logic when they are consistent with each other. There is a unique route for every conceivable case as the semantics of that case. Thus, a firm foundation has been laid for management automation. The computer system that conducts the processing of each given case based its semantics is the workflow engine.

#### **8.1. Management logic**

138 Petri Nets – Manufacturing and Computer Science

relation. For example, t2 writes x and t4 , t5 read x.

have empty body since they write no variables.

there would be a unique route for each case.

would be cumbersome and uninteresting.

and for every OR-split synchronizer p = (.

a unique route for every conceivable case. ◆

whose guard is not ci together with their successor elements.

task set has one more end-task for this classification.

Definition 21

Definition 22

1,2, … k, |{t|t∈ p.

Theorem 8

**7.2. Workflow logic and its case semantics** 

The case semantics of insurance claim given in Figure 25 divides conceivable cases into 2 classes. Variables like x and y are drawn as double circles, write relation is represented by a zero-headed arc from transition to variable, reversed zero-headed arc represents read

The start transition t1 is in no relation with x and y, it has no guard, no body. The guards of both t2 and t3 are "true", denoted by default. The write operations of these two transitions are to be performed by their executers, denoted as x:= D where D is the abbreviation of "default". Transitions t4 and t5 have conditions for case classification as their guards. They

Apparently, the case semantic contains two routes: one for each class. As long as the classification of cases is complete and consistent (every case falls into exactly one class),

Let (T,<), B ={b1, b2, …bm} and C = {c1, c2, …ck} be the main constituents of a business process. There is a precise correspondence between tasks in T and blanks (on B-form) in B; Condition set C is complete and consistent; the immediate successor relation < is implied by a combinatorial acyclic partial order on T. With all these requirements satisfied, ((T,<), B ,C) is a well-designed business process. We will not put all these into formal definitions since that

The C-net systemΣ'=(S,V,T;F,K,W,R,Wr,MT,M0) is a case semantics of the workflow logicΣ= (S,T;F,K,W,M0) developed for well-designed business process ((T,<), B , C), if the marking MT (which is constant) satisfies that for those t in T that have a guard, the guard is a

Let C-net systemΣ'=(S,V,T;F,K,W,R,Wr,MT,M0) be a case semantics of the workflow logicΣ= (S,T;F,K,W,M0) developed for well-designed business process ((T,<), B , C). If Σ is through,

If Σ is a through workflow logic and Σ′ is a case semantics consistent with Σ, then there is

For a case in class ci, the route it will take is obtained by deleting from Σ all transitions

Figure 26 shows another case semantics of the insurance claim business process where cases are divided into 3 classes by conditions c1 = x∧y, c2 = (x∧¬y)∨( ¬ x∧y) and c3 = ¬x∧¬y . The

∧ guard (t) = ci}|= b, then Σ'is consistent with Σ.◆

p, p., (a, b)), b<|p.


condition in C, and every condition in C is the guard of some transition.◆

As suggested by Figure 8 (b), every synchronizer p = (. p, p. , (a, b)) requires management (transition t in the detail of the synchronizer) to keep tasks in . p well synchronized with transitions in p. . The start-place requires management, so do all end-places. At the startplace, the engine must recognize the proper business process when a case (B-form) arrives, and to have the corresponding workflow logic ready, and to appoint an executer for the start-task and passes the B-form to the executer. At an end-place, the engine must check whether the case is well processed and to put the completed B-form in place.

All in all, places and synchronizers are exactly where the engine does its duty. In other words, the dual of workflow logic is the management logic, and the dual of case semantics with given condition ci in C produces the route for all cases classified by ci.

Definition 22


Figure 27 is the logic pair for insurance claim with two case classes.

Workflow Modelling Based on Synchrony 141

**Figure 28.** Semantic Pair

selected tasks.

**8.3. Duty of the engine** 

matches its type);

The main duty of the engine is to conduct the manipulation of individual cases based on the logic pair (before the class to which the case belongs is known) and the semantic pair (transitions named after an OR-split synchronizer), including appointing executers for

Set a time upper bound for each task to be executed next, and to remind before

Check whether a task is properly done (e.g. whether the content filled in a blank

 Decide, based on given rules, what to do when an expiration or quality failure is detected (e.g. redo for quality failure, bad record on the due person for expiration);

An engine carries out its duty properly if and only if it has predefined management rules to follow. In addition to global rules specified by the logic pair and the semantic pair, local rules are also necessary, i.e. rules for every management task (every place in workflow logic). Remember that all places in workflow logic are where the engine can and must put a hand on. Some management rules are closely related to individual enterprises, some are even secrete to outsiders. Current and historical business data, business partners data, conventions or traditions etc. All rules related to these must be carefully established and checked together with a well-designed business process, a well-structured workflow logic of the process, a

In addition to this major duty, other duties include (not exclusive):

Other thinkable duties, especially enterprise specific ones.

expiration, check whether it is done on time;

**Figure 27.** Logic Pair

Management tasks (transitions inΣ') and business tasks (transitions inΣ) are executed in turn: whenever a place (including synchronizers) inΣhas a full capacity of tokens, the transition with the same name inΣ' is enabled. The enabled transition fires to put tokens into its output places inΣ', whenever a place inΣ'has a full capacity of tokens, the transition with the same name inΣ is enabled. This interactive transition firings continue till a transition named with an end-place is fired to move the case token out of the pair. This is the way how management tasks and business tasks interact with each other.

#### **8.2. Route for cases in the same class**

A logic pair specifies, for a given business process, how individual cases are processed under the conduction of the engine (the manager). Figure 28 shows a case semantics and its dual, that is a semantic pair, a pair of C-net systems. The guard on a transition (task) will be used by the engine (transitions named after a synchronizer) for the selection of routes. We will not give a formal definition of this pair, since it is clearly specified by the figure. The interaction between this pair is the same with the logic pair, except details given by guards.

Figure 27 and Figure 28 serve as the main part of a formal specification for a workflow engine. The rest of the engine is enterprise specific (personal, organizational division etc.).

**Figure 28.** Semantic Pair

140 Petri Nets – Manufacturing and Computer Science

**Figure 27.** Logic Pair

given by guards.

Figure 27 is the logic pair for insurance claim with two case classes.

Management tasks (transitions inΣ') and business tasks (transitions inΣ) are executed in turn: whenever a place (including synchronizers) inΣhas a full capacity of tokens, the transition with the same name inΣ' is enabled. The enabled transition fires to put tokens into its output places inΣ', whenever a place inΣ'has a full capacity of tokens, the transition with the same name inΣ is enabled. This interactive transition firings continue till a transition named with an end-place is fired to move the case token out of the pair. This is the

A logic pair specifies, for a given business process, how individual cases are processed under the conduction of the engine (the manager). Figure 28 shows a case semantics and its dual, that is a semantic pair, a pair of C-net systems. The guard on a transition (task) will be used by the engine (transitions named after a synchronizer) for the selection of routes. We will not give a formal definition of this pair, since it is clearly specified by the figure. The interaction between this pair is the same with the logic pair, except details

Figure 27 and Figure 28 serve as the main part of a formal specification for a workflow engine. The rest of the engine is enterprise specific (personal, organizational division etc.).

way how management tasks and business tasks interact with each other.

**8.2. Route for cases in the same class** 

## **8.3. Duty of the engine**

The main duty of the engine is to conduct the manipulation of individual cases based on the logic pair (before the class to which the case belongs is known) and the semantic pair (transitions named after an OR-split synchronizer), including appointing executers for selected tasks.

In addition to this major duty, other duties include (not exclusive):


An engine carries out its duty properly if and only if it has predefined management rules to follow. In addition to global rules specified by the logic pair and the semantic pair, local rules are also necessary, i.e. rules for every management task (every place in workflow logic). Remember that all places in workflow logic are where the engine can and must put a hand on.

Some management rules are closely related to individual enterprises, some are even secrete to outsiders. Current and historical business data, business partners data, conventions or traditions etc. All rules related to these must be carefully established and checked together with a well-designed business process, a well-structured workflow logic of the process, a

#### 142 Petri Nets – Manufacturing and Computer Science

case semantics consistent with the logic. The two pairs are derivable from the logic and semantics. We go no further here in this chapter.

**Chapter 7** 

© 2012 Feng et al., licensee InTech. This is an open access chapter distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

© 2012 Feng et al., licensee InTech. This is a paper distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Petri nets are excellent networks which have great characteristics of combining a welldefined mathematical theory with a graphical representation of the dynamic behavior of systems. The theoretical aspect of Petri nets allows precise modeling and analysis of system behavior, at the same time, the graphical representation of Petri nets enable visualization of state changes of the modeled system [32]. Therefore, Petri nets are recognized as one of the most adequate and sound tool for description and analysis of concurrent, asynchronous and distributed dynamical system. However, the traditional Petri nets do not have learning capability. Therefore, all the parameters which describe the characteristics of the system need to be set individually and empirically when the dynamic system is modeled. Fuzzy Petri net (FPN) combined Petri nets approach with fuzzy theory is a powerful modeling tool for fuzzy production rules-based knowledge systems. However, it is lack of learning mechanism. That is the significant weakness while

At the same time, intelligent computing is taken to achieve the development and application of artificial intelligence (AI) methods, i.e. tools that exhibit characteristics associated with intelligence in human behaviour. Reinforcement Learning (RL) and artificial neural networks have been widely used in pattern recognition, decision making, data clustering, and so on. Thus, if intelligent computing methods are introduced into Petri nets, this may make Petri nets have the learning capability, and also performance and the applicable areas of Petri nets models will be widely expanded. The dynamic system can be modeled by Petri nets with the learning capability and then the parameters of the system can be adjusted by online (data-driven) learning. At the same way, if the generalized FPNs are expanded by adding neural networks and their leaning

**Construction and Application** 

**of Learning Petri Net** 

Liangbing Feng, Masanao Obayashi,

modeling uncertain knowledge systems.

http://dx.doi.org/10.5772/48398

**1. Introduction** 

Takashi Kuremoto and Kunikazu Kobayashi

Additional information is available at the end of the chapter
