Database Reference
In-Depth Information
Figure 7: A statechart that will not terminate
In Figure 8, if x is equal to 5 initially, we will only go through the loop 5 times. However,
detecting transitions of this kind requires complicated analysis of the actions of the transitions.
In the literature, Baralis, Ceri, and Paraboschi (1996) contain complicated algorithms for
this kind of analysis, which may lead to a long execution time. Our techniques, on the other
hand, are only based on reading the values of and writing values to data items. Admittedly,
our techniques do not have the precision of those in Baralis et al. (1996).
We now introduce Algorithm 1. Algorithm 1 provides a mathematical procedure that
determines whether or not a given statechart terminates. The proof of Algorithm 1 theoreti-
cally validates the viability of termination as a critical property of business workfl ows.
Algorithm 1
Input: A statechart.
Output: Yes or no. (Yes means the statechart may have non-termination problems. Note
that our analysis is very conservative in the sense that if our algorithm says “yes”, the
statechart may still terminate because events may run out or conditions may become
false on a transition. However, as we have just mentioned, detecting situations of this
kind must be done by careful analysis of the actual computations of the transitions,
which we do not perform here. As an example, in Figure 8, after examining the
computation of the transition, we can conclude that the loop will eventually terminate.
Figure 8: A statechart that will terminate
Search WWH ::




Custom Search