Page 247 -
P. 247
Chapter 9
The Runtime Environment
Michael Adams
9.1 Introduction
Runtime, with regards to the YAWL environment, refers to the period when the
YAWL System is active and executing – the host server is operational and the Engine
is running in its servlet container (Apache Tomcat by default), accepting requests
from Custom Services and applications to load specifications, start process instances
(or cases), check out work items, and so on, generating events and progressing cases
as per their control-flow towards conclusion. While much of what occurs during run-
time is described in other chapters, most of the internal operations have been hidden.
This chapter emphasizes the internal execution mechanisms of the YAWL Engine.
9.2 Basic Operations
The primary responsibility of the Engine is to execute process instances. However,
there is a distinct demarcation between the work performed by the Engine and that
handled by custom services. Throughout the life-cycle of a process instance, the
Engine will prepare work items (i.e., task instances) for execution, at the appropriate
times according to the specified control-flow of the process. But, it is important to
realize that:
The Engine is not responsible for how the work of a task instance is performed.
Each and every task is associated at design time with a chosen Custom Service
that will be responsible for performing the work of the task instance. If the asso-
ciation of a task with a Custom Service is not explicitly specified at design time,
the Resource Service is associated implicitly as a default. The Engine announces
the enablement of each task to the specified Custom Service at the designated
M. Adams
Queensland University of Technology, Brisbane, Australia
e-mail: mj.adams@qut.edu.au
A.H.M. ter Hofstede et al. (eds.), Modern Business Process Automation, 241
DOI 10.1007/978-3-642-03121-2 9, c Springer-Verlag Berlin Heidelberg 2010