Information Technology Reference
In-Depth Information
An example of the transformation rules is depicted in Table 1, which illustrates
an extension of the catalogue of transformations proposed in [2] to deal with
loop activities. As stated in [1], a loop activity executes the inner activity as
long as a loop condition evaluates to true. An attribute can be set to specify a
maximal number of iterations. An example of loop activity is an activity Update
order that updates an order in a restaurant (by customer's command) until an
event or a received message indicates no more updates are allowed. For more
details about the other transformations we refer the reader to [2].
Finally, note that there is a small difference between this mapping and the one
presented in [2] because in this paper we consider no data objects are supposed
to exist before the execution of a BP in our BP2OLC procedure, whereas [2]
considers data objects have an initial state when instantiating a BP. This differ-
ence causes the transformation in [2] referring to the writing of the data object
has to be slightly changed for the first writing of the object in our BP2OLC
procedure, in order to comply with our assumption 2. It means the first time
the data object is written, the responsible transition of the Petri net does not
have any input data places.
3.2 Step 2. Reachability Graph from Petri Net
Definition 2. A reachability graph related to a Petri net is a 3-tuple RG PN =
( N,M,T RG ) ,where:
- N =
{
n 1 ,n 2 , ..., n n }
is the set of nodes of the reachability graph.
n i
N,
n i
and n i
represent immediately previous and next nodes of n i , respectively.
- M : P
×
N
N
represents the markup of the net.
- T RG
( N
×
N ) are the transitions of the reachability graph.
The reachability graph is obtained by analysing the Petri net by means of well-
known algorithms. Each node of the reachability graph represents a reachable
marking state of the net and each arc a possible change of state, i.e. the firing of a
transition. However, due to the characteristics of our semantic mapping between
BPMN and Petri net, in the reachability graph resulting from such Petri nets it
holds that M ( p, n )
P . In addition, the information about
the markup of the net contained in every node always corresponds with both a
sequence flow of the BP model and a state of the data object, as illustrated in
Figure 4. It means there is always one token in a control place of the Petri net
and one in a data place, except in the beginning (until an activity writes the
data object for the first time) and in the final nodes of the reachability graph (in
which, on the contrary, all the tokens in control places have been consumed).
Given the previous definitions, the following functions can be defined:
[0 , 1] ,
n
N,
p
- Function map : T RG
T PN is defined to map the transitions of a reacha-
bility graph into the transitions of a Petri net.
- Function state : N
P D returns the state of the data object of the busi-
ness process model contained in the current node of the reachability graph.
state ( n )=
{
p d
P D : M ( p d ,n )=1
}
.
 
Search WWH ::




Custom Search