Page 203 -
P. 203

194                                                          M. Pesic
                           transitions. Naturally, the same approach is applied again to all states, as the auto-
                           maton changes states due to execution of tasks.




                           6.3.5 Enforcing Correct Instance Completion

                           The goal of the execution of a constraint workflow model instance is to satisfy all
                           mandatory constraints, and so the state of the instance should be satisfied at com-
                           pletion. The automaton generated for the mandatory formula of the model is used to
                           monitor the state of the instance. Recall that the state of the instance is satisfied if the
                           automaton is in an accepting state. Now the completion of an instance is allowed, if
                           and only if, the generated automaton is in an accepting state.
                              Enforcing the correct execution and completion of instances is done in the fol-
                           lowing way: (1) The states of all constraints are constantly monitored; (2) The
                           state of the instance is constantly monitored; (3) The correct execution of instance
                           is enforced by prohibiting the execution of tasks that would eventually bring the
                           instance into the violated state; and (4) The completion of the instance is allowed if
                           and only if the instance state is satisfied. All this can be done using the automaton
                           generated for the mandatory formula of the instance’s constraint model.




                           6.4 Dynamic Instance Change

                           In some cases, it is necessary that the model of the instance changes (i.e., by adding
                           and removing tasks or constraints), although the instance is already executing and
                           the instance trace might not be empty. We refer to such a change as a dynamic
                           instance change. Workflow management systems that support dynamic change are
                           called adaptive systems. For example, ADEPT is a workflow management system
                           that uses powerful mechanisms to support dynamic change of procedural process
                           models by allowing to add, remove, and move tasks at runtime. The constraint-
                           based approach offers a simple method for dynamic change that is based on a single
                           requirement: the instance should not become violated after the change.
                              Because of the fact that in dynamic instance change the trace of an instance
                           remains the same whereas the model changes, it might happen that the instance state
                           changes according to the new model (cf. Definition 12). For example, it is possible
                           that after adding a mandatory constraint, the instance state changes from satisfied
                           to violated, which is an undesired state. Therefore, instance change can only be
                           successfully applied if the change does not bring the instance into the violated
                           state. After a successful change, the instance continues execution with an updated
                           model and the original trace. Automata generated for ConDec models enable easy
                           implementation of dynamic change of ConDec instances: dynamic change of a Con-
                           Dec instance is successful if the instance trace can be “replayed” on the mandatory
                           automaton of the new model.
   198   199   200   201   202   203   204   205   206   207   208