Page 305 -
P. 305
11 The Worklet Service 301
<!-- This param, when available, enables the worklet exception
service add-ins to the worklist. If the exception service
is enabled in the engine, then this param should also be
made available. If it is disabled in the engine, the
entire param should be commented out. -->
<!--
<context-param>
<param-name>InterfaceX_BackEnd</param-name>
<param-value>http://localhost:8080/workletService</param-value>
<description>
The URL location of the worklet exception service.
</description>
</context-param>
-->\vspace * {-6pt}
Listing 11.4 The Resource Service configuration file (detail)
as the engine, but again it can be modified if the Exception Service is installed
remotely. Also by default, the parameter is commented out, as the Exception Ser-
vice is disabled by default in the engine’s configuration when first deployed. When
the comment tags are removed, the worklist becomes aware that the Exception Ser-
vice is enabled and so enables the appropriate methods and items available via its
user interface. See Listing 11.4 for the relevant part of the worklist’s configuration
file.
11.6 Worklet Process Definition
Fundamentally, a worklet is nothing more than a YAWL process specification that
has been designed to perform one part of a larger, parent specification. However,
it differs from a decomposition or subnet, in that it is dynamically assigned to per-
form a particular task at runtime, while subnets are statically assigned at design
time. So, rather than being forced to define all possible branches in a specification,
the Worklet Service allows the definition of a much simpler specification that will
evolve dynamically as more worklets are added to the repertoire for particular tasks
within it.
To illustrate the worklet approach by means of a simple example, the Pay-
ment subnet of the Order Fulfillment process is used in the following discussion.
Figure 11.4 shows the original Payment subnet, Fig. 11.5 shows the simplified,
worklet enhanced version, where the entire left-hand side of the process has been
replaced with a single, worklet-enabled task. Together, the figures show a sort-of
“before” and “after” view of how worklets can be used to simplify a parent pro-
cess model, so that the primary business logic is clearly revealed, while the detail is
handled at a lower level of granularity.
Even though the process model in Fig. 11.5 has a task that is worklet-enabled,
it remains an ordinary YAWL process, which, without interaction from the Worklet
Service, would execute as a standard, static process. However, because the Issue