
reasons, it was necessary to do some adaptations to Allen's basic relations. The goal
of the proposed extensions is to offer a larger set of possibilities to create coordina-
tion mechanisms that may control many different situations.
3.2 Active and Passive Interdependencies
The merely descriptive characteristic of Allen's temporal relations allows different
interpretations for the interdependencies. For instance, consider that two tasks, Ta and
Tb, are related by the interdependency Ta equals Tb. In the coordination context, this
interdependency can be interpreted in two different ways. In the first case, called
active interpretation, this relation express that the beginning of a task should begin
the other; and that the end of one of the tasks should conclude the other task. The
second possible interpretation for any coordination mechanism is called passive in-
terpretation. In this case, the coordination mechanism expresses a group of conditions
that should be obeyed to take the activity to the end.
To deal with active and passive interpretations, two operators were defined: en-
ables and forces. The operator enables represents the passive interpretation, while
forces represents the active interpretation. These operations can be applied in the
initial and final moments of each interdependent task. Additionally, these extreme
points have two states: ready and concluded, indicating, respectively, that the task is
ready to begin (or to finish) and that the task already began (or finished).
In order to exemplify the passive and active interpretations of the temporal inter-
dependencies, consider the situation in which two students, A and B, have to vote for
the acceptance or rejection of a contribution. We will denominate Tva and Tvb the
tasks of voting associated to students A and B, with initial and final points i
va
, i
vb
, f
va
and f
vb
respectively. Imagine now that in our environment the voting process begins
in a synchronous way. In this case, the interdependency associated to the tasks is Tva
starts Tvb that can be extended in several interpretations, such as:
i
va
(ready) enables i
vb
AND i
vb
(ready) enables i
va
– this declaration indicates the
passive situation in which the tasks will only begin their execution when both are
ready (i.e., Tvb will only be able to begin when Tva is ready to begin, and vice-versa),
but none will force the execution of the other.
i
va
(ready) forces i
vb
– in this situation, when Tva is ready to begin, Tvb will be
forced to begin, indicating an active interdependency of the type “master/slave” (in
the same way, Tvb could be considered the master task if i
vb
(ready) forces i
va
).
i
va
(ready) forces i
vb
AND i
vb
(ready) enables i
va
– Tva is the master task, since it
forces the beginning of task Tvb, but Tva will only begin when Tvb is ready.
4 Coordination Mechanisms based on Petri Nets
Coordination mechanisms based on PN were developed to coordinate the set of inter-
dependencies presented. The formal modeling allows the designer to anticipate and
test the behavior of the environment. PN support models at different levels of abstrac-
tion and are appropriate for simulation and formal verification.
230