Page 356 -
P. 356

354                                                     G. Decket et al.
                                                   more Trackpoints
                                      Carrier         Trackpoint
                                                        Issue
                                                       Notice

                                    Carrier  Admin  Officer             Log Trackpoint
                                                                         Order Entry


                           Fig. 13.5 Example of a business process model with lanes



                              Clearly, BPMN is rather limited when it comes to representing resources. Many
                           of the constructs that are possible in YAWL are not possible in BPMN. Examples
                           of constructs for which YAWL has specific support, but BPMN does not, include
                           the following: representing that a resource can delegate a task to another resource;
                           representing that a check must be performed by another individual than the individ-
                           ual who performed the previous task (the “separation of duties” resource pattern);
                           and representing that a task should be performed by the individual who has done the
                           most of these tasks in the past.
                              Figure 13.5 shows an extension of the example from Fig. 13.1, in which lanes
                           have been added to represent the roles that are authorized to perform tasks. It
                           shows that the Carrier is authorized to perform Issue Trackpoint Notice and that
                           the Carrier Admin Officer is authorized to perform Log Trackpoint Order Entry.



                           13.2.4 Exceptions


                           BPMN supports exceptions by allowing intermediate events to be attached to tasks
                           and subprocesses. An intermediate event is attached to a task or a subprocess repre-
                           sents that the task or the subprocess (and everything in it) can be interrupted by the
                           occurrence of the intermediate event. Upon occurrence of the intermediate event, the
                           task or subprocess stops executing and the flow continues along the sequence flow
                           that leaves the intermediate event. The “type” of the intermediate event specifies
                           what kind of exception it reacts to. The timer, message, error, and rule intermediate
                           events discussed previously can be attached to tasks and subprocesses to repre-
                           sent an exception. An error event on a subprocess can have a counterpart (an error
                           event with the same name) in that subprocess. When this is the case, the error event
                           “catches” the error when it is “thrown” in the subprocess.
                              In addition to these types, “cancel” and “compensate” events can be attached
                           to tasks and subprocesses. These events correspond to cancelation and compen-
                           sation of transactions. However, in BPMN 1.0, their semantics is underspecified.
                           Therefore, we do not discuss them here.
   351   352   353   354   355   356   357   358   359   360   361