2 RESOURCE MODELLING IN
WORKFLOW MODELLING
LANGUAGES (WML)
Today, there are various available WMLs, that dif-
fer in the way they support the different aspects of
processes (e.g, activities, roles, resource, data, etc.).
Among WMLs, the most commonly used are control-
flow driven, which focus on the activities and their
flow. The resources required to actually perform
the activities at run-time, when mentioned, are usu-
ally only subject to a basic description. Other lan-
guages, called resource-driven, consider resources as
first class citizens and provide more refined descrip-
tion of resources and related constraints. These lan-
guages are more declarative and less commonly used
by industries. In this section, we present and discuss
the resource integration in representative WMLs of
both families.
2.1 Business Process Modelling
Notation (BPMN)
Currently maintained by the Object Management
Group, BPMN was developed to provide a notation
describing business processes understandable for both
analysts and developers, while bridging the gap be-
tween their design and implementation (BPMN 1.2,
2009). The BPMN 2.0 specification (BPMN 2.0,
2011) gathers the core elements used to describe
the process model, which consist in four categories.
Flow objects define the behaviour of business pro-
cess (events, activities and gateways). Connecting
Objects (sequence flows, message flows and associ-
ations) specify the connection of the flow objects to
each other or with other information. Swimlanes and
Pools distinguish different (types of) participants in a
process, either being a specific business entity (e.g. a
company, a department or a team) or a more general
business role. Artefacts allow the introduction of ad-
ditional information about the process, including data
object, group and annotation. The modelling of re-
sources is outside the main scope of BPMN (Wohed
et al., 2006), but the concepts of lanes and pools reveal
the need to support at least human-resources. In addi-
tion, BPMN offers a specific resource attribute at the
activity level that allows to specify who will perform
(or be responsible for) the task (a person, a group or
organizational unit or position).
2.2 Petri and Workflow Nets
First introduced in (Petri, 1962), Petri Nets were orig-
inally designed as a tool for modelling and analysing
concurrent (distributed) systems. Their simple graph-
ical syntax makes them very easy to use while their
clearly defined formal state-based semantics supports
a large number of useful and efficient analysis tech-
niques (Murata, 1989). Such characteristics make
them particularly well suited to model workflow pro-
cesses (van Der Aalst, 1998). The Workflow Nets pro-
posed in (van Der Aalst, 1996) are a sub-class of Petri
Nets specifically defined to represent workflow pro-
cesses and that simplify the modelling of workflows
(van Der Aalst and van Hee, 2004). They provide
dedicated graphical operators to represent common
control flow structures (as the synchronization or the
sequencing of activities).
Despite Petri Nets intrinsic qualities, it is very dif-
ficult, even sometimes impossible, to express some
control flow structures frequently used in workflow
management, namely those involving multiple in-
stances of the same activity and those implying a
wait and see behaviour. Likewise, the fact that tran-
sitions are only local in Petri Nets makes impossi-
ble the specification of activities that cancel others
in the workflow (cancellation activities). The use of
High-level Petri Nets, that extends Petri Nets (e.g.
with colour or hierarchy), allows to overcome some
of these (control-flow related) drawbacks but not all
at once (van Der Aalst and van Hee, 2004).
Regarding the resources modelling, Petri nets, and
thus Workflow Nets too, greatly lack syntactic support
to expressivity. Indeed, a set of n equivalent resources
can easily be modelled by the presence of n tokens in
a place used as input of all the transitions requiring
this type of resource. However, as soon as the re-
sources description involves multiple attributes, avail-
ability agenda, structuration in sub-categories and so
on, increasing complexity makes the model unman-
ageable and enhances the inadequation of the nota-
tion.
2.3 Yet another Workflow Language
In the mid-2000’s, an international academic joint ef-
fort delivered a new language to overcome the fail-
ure of High-level Petri Nets to solve all the prob-
lems seen before at once (van der Aalst and ter Hofst-
ede, 2003). The so-called YAWL (Yet Another Work-
flow Language) supports the 20 control flow patterns
identified by the Workflow Patterns initiative in (van
Der Aalst et al., 2003). Although inspired by Petri
Nets and its extensions, YAWL is a graphical and ex-
ecutable language with its own syntax and semantics,
and extends the class of Workflow Nets with multiple
instances, composite tasks, OR-joins gateways and
removal of tokens, i.e. cancellation (ter Hofstede and
ICEIS2013-15thInternationalConferenceonEnterpriseInformationSystems
244