Page 121 -
P. 121

108                                                     M. Wynn et al.
                                YAWL           Reset net              YAWL         Reset net
                                                                          p1               p1
                                 t           ts    pt   te
                                                                  AND-split       pt   te
                                                                    t
                                                                          pN               pN
                             p1              p1
                                   AND-join       ts   pt
                                    t                                     p1
                             pN              pN                                       te p1  p1
                                                                  XOR-split       pt
                                                                    t
                                                                          pN          te pN  pN
                             p1              p1   ts p1
                                   XOR-join
                                     t                 pt
                             pN              pN   ts pN
                                                                                      te p1  p1
                                                                         p1
                                                                  OR-split        pt  te p1N
                                                                    t
                             p     t         p    ts   pt  te            pN
                                                                                       pN
                                                                                      te   pN
                           Fig. 3.4 Mapping various YAWL elements to reset net transitions and places
                              The following steps are taken to convert a YAWL net to a corresponding reset net
                           in the context of a specific OR-join:

                           1. The YAWL elements that do not affect the OR-join evaluation such as multiple
                              instances and composite tasks are abstracted.
                           2. All OR-joins in the net (except the one under consideration) are converted into
                              XOR-joins. This is called an optimistic approach and it is used to prevent the
                              premature firing of OR-joins. (See the next section for the reasoning behind this
                              conversion.)
                           3. The resulting YAWL net is transformed into a reset net using the mappings given
                              in Fig. 3.4.
                           After this transformation, a coverability analysis is carried out on the reset net to
                           determine whether the OR-join should be enabled at a given marking.
                              In this section, we have described the informal semantics of an OR-join using
                           some example YAWL nets. We have also seen how the existence of cancelation
                           regions in the net can complicate the analysis. Finally, we have briefly explained
                           how the formal semantics is defined in the YAWL language using reset nets. In the
                           next section, we motivate the particular OR-join semantics chosen for YAWL.




                           3.3 Motivation

                           In a workflow language like YAWL that supports many complex constructs such
                           as cancelation and loops without restrictions, there are a number of complicating
                           factors when it comes to defining a general approach to OR-join semantics. First,
                           for workflows with multiple OR-joins, it is an open issue how a state space analysis
   116   117   118   119   120   121   122   123   124   125   126