Information Technology Reference
In-Depth Information
A
B
A
(a) Start transition
(b) Transition between
two different states
A
A
(c) Self-
transition
(d) Final transition
Fig. 5. Kinds of transitions of an object life cycle
Revise the last activity executed and act consistently (lines 9-31).
Algorithm 2 is returned either when a normal final node of the reachability
graph is reached, when an abnormal final node 4 is found, or when the current
node is in the list of processed nodes. In the last case, if, furthermore, the
activity represented in the node writes the data object, the node has been
properly processed in lines 3-7 and the rest of the reachability graph does not
have to be re-processed. Otherwise, the already processed node is saved in a
list of nodes that must be properly post-processed later. This way we avoid
processing nodes of the reachability graph more than once and we ensure that
Algorithm 2 always terminates. If none of the previous situations appears,
we must go on processing the reachability graph and update the variables
whose values must be propagated.
Post-process the necessary nodes (lines 6-17 of Algorithm 1). Some
scenarios represented in a BP model can give rise to the appearance of tran-
sitions between the same two states, which differ from each other in their
contents. This situation is detected in the reachability graph when reaching
a node that has already been processed and its corresponding activity of the
BP does not modify the data object being examined. In Algorithm 2 only
one of the transitions is added to the OLC. To add the new transition with
the right content, we must find the transition to which the node refers, add
a duplicate transition to the OLC and set its content to the proper value.
4 Detecting and Showing Data Anomalies
As aforementioned in this paper, we assume soundness (also called correctness)
in the control flow of BPs, but the process can be unsound regarding data
perspective. The data-related deadlocks that appear in a reachability graph (i.e.
abnormal final nodes) indicate data-related anomalous situations (known as data
4
Abnormal final nodes are those with no output transitions and with no input tran-
sitions called END. They indicate there is a deadlock in the Petri net that stops the
execution. We collect them in a list of warnings that will have to be addressed later.
Search WWH ::




Custom Search