Page 360 -
P. 360

358                                                     G. Decket et al.
                           Fig. 13.10 YAWL net with
                           explicit conditions that cannot
                           be mapped to event-based
                                                                       Register
                           gateways                                    Order

                                                              Pack Goods

                                                                                      Send Invoice/
                                                               Ship Goods     10-days  Account
                                                                              Timeout
                                                                                       Statement

                                                                              Receive
                                                                             Payment

                                                                      Send Customer
                                                                        Feedback
                                                                       Questionnaire




                           exist in YAWL. To illustrate the impact of this restriction in the BPMN notation,
                           consider the diagram in Fig. 13.10. Here, task 10-days timeout should only fire if
                           there is a token in each of its input conditions – meaning that the 10-days timer is
                           only armed once the goods have been shipped and the invoice/account statement
                           has been sent. Ten days after the latest of these two tasks has completed, a new
                           invoice/account statement is sent to the customer as a reminder that the payment is
                           due. Hence, there is an AND-join decorator attached to this timeout task. Because
                           of the above restriction, the two explicit conditions preceding the timer (marked in
                           bold in the figure) cannot be directly mapped to event-based gateways in BPMN.
                              Indeed, if one tried to map these explicit conditions into event-based gateways, a
                           problem would arise, because the resulting event-based gateway would be followed
                           immediately by an AND-join gateway. This configuration is forbidden in BPMN,
                           because event-based gateways can only be immediately followed by intermediate
                           events. Fundamentally, the problem stems from the fact that BPMN does not offer a
                           concept of “state”, which would allow one to capture “the state after the goods have
                           been shipped” or “the state after the invoice has been sent.” This state can of course
                           be captured in the form of variables, but then it is not directly visible in the diagram.


                           Events

                           In Fig. 13.9, BPMN message and timer events are mapped to YAWL tasks. BPMN
                           message events are mapped to YAWL tasks linked to a YAWL Custom Service that
                           sends and/or receives messages as required. Meanwhile, a BPMN timer event is
                           mapped to a YAWL empty task with an attached timer. 3



                           3  Specifically, a YAWL “on-enablement” timer needs to be used here as the timer is armed as soon
                           as the task becomes enabled.
   355   356   357   358   359   360   361   362   363   364   365