A Cost-centric Model for Context-aware Simulations of Business
Processes
Vincenzo Cartelli
1,2
, Giuseppe Di Modica
1
and Orazio Tomarchio
1
1
Department of Electrical, Electronic and Computer Engineering, University of Catania, Catania, Italy
2
BENG Business Engineering Srl, Catania, Italy
Keywords:
Business Process Simulation, Activity based Costing, BPMN, Colored Petri Nets.
Abstract:
Business process modeling is recognized as being one of the most crucial step in the management of the
Business Process life cycle. Models which either are incorrect or do not accurately represent the desired
process dynamics may seriously impair the achievement of an enterprise’s business goals. There is a growing
interest towards simulative tools that take in input a process model and provide an estimate of the costs incurred
by an hypothetical process execution. It is then of paramount importance that the input model be as accurate as
possible, otherwise actual process execution costs may dramatically diverge from the estimates. In this paper
we propose the definition of a comprehensive Business Process Model which inspires to the basic principles of
the Activity Based Costing (ABC) analysis to provide a cost-centric perspective of the Business Processes to
be executed. Emphasis is put on the need to represent the process Context, i.e., the resources processes need to
consume and the environment where processes will execute. The introduced process context model is proposed
as an extension to the BPMN standard. Further, we implemented a Business Process Simulator capable of
simulating business processes defined according to the newly proposed model. A case study example was
simulated and results are presented in the paper.
1 INTRODUCTION
In a globalised market the capability of an enterprise
to keep or acquire new market shares is strongly re-
lated to its ability to adapt its business strategy to
accommodate the new or the ever changing demand.
Often the change of a strategy imposes a prompt re-
organization and restructuring of all or a subset of the
enterprise business processes. In order for that reor-
ganization to be effective, process designers need to
know in advance what its impact would be in terms of
gained performance and incurred costs. Simulating
business processes via software is the technique used
to produce estimates on their performance and costs.
Simulation provides useful information that help pro-
cess analysts and designers to fine-tune process mod-
els before processes are actually executed. Of course,
the reliability of the estimate provided by the simu-
lation depends on how good and accurate the process
model adopted for the simulation is.
There are many well-established specifications
which can be used to model business processes. The
OMG’s BPMN (OMG, 2011) is the specification
recognised by the majority of researchers and prac-
titioners as the reference standard in the field of pro-
cess modeling. Though by many it is considered a
powerful notation to represent the process workflow’s
dynamics, still it lacks the support for the character-
ization of some process’ key features such as the re-
sources involved by the process activities and many
other factors that impact on the process at execution
time. In the paper, we are going to refer to such fea-
tures as process context. As for the cost aspect, we
argue that the Activity Based Costing (ABC) method-
ology (Cooper and Kaplan, 1992) offers a framework
where the BPMN, if adequately integrated with the
support to model the process context, may find a per-
fect collocation. The activity concept, which is cen-
tral to both the BPMN and the ABC, is the base of
this “marriage”.
The purpose of the work presented in this paper
is to define a novel Business Process Model, capa-
ble of representing all the main aspects of business
processes and of their runtime context under a cost-
sensitive perspective. In order to build that view, our
approach leverages and integrates the BPMN spec-
ification and the ABC methodology. Further, we
developed a business process simulator to simulate
Cartelli, V., Modica, G. and Tomarchio, O..
A Cost-centric Model for Context-aware Simulations of Business Processes.
In Proceedings of the 7th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management (IC3K 2015) - Volume 3: KMIS, pages 303-314
ISBN: 978-989-758-158-8
Copyright
c
2015 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
303
business processes defined according to the proposed
model. A simple but well structured business process
was also designed and used to test the simulator. Pro-
cess’ incurred costs and execution times are gathered
from the simulation run and presented to the process
analyst.
The paper is structured in the following way. In
Section 2 related literature is reviewed. In Section
3 a novel cost-sensitive process model is introduced.
In Section 4 we present the definition of a use-case
process and discuss the result obtained from simulat-
ing the process. Concluding remarks can be found in
Section 5.
2 LITERATURE REVIEW
Process simulation plays an important role in the con-
text of the Business Process Management. The pur-
pose of simulation is to give business analysts a clue
on what the performance and the cost of processes
could be according to the actual process design, and
to provide hints on the corrective actions to take in
order to improve the overall process performance.
Process simulation is a key features provided
by many commercial Business Process Management
Suites (BPMS). Most BPMS offer process analysts a
tool to simulate process workflows and to customize
the process context scenario. A simulation tool’s
strategy and implementation is specific to the suite
it is embedded in. In particular, it is tightly coupled
with the process modeling approach and language (be
it proprietary or open) adopted by the BPMS. ARIS
Simulation is an extension of the well known ARIS
Architect suite
1
; it is based on the L-SIM simula-
tion engine and allows to simulate process modeled
by using Event-driven Process Chain notation (Scheer
and Nüttgens, 2000). Recently the BPMN support
has been added. iGrafx Process
2
is a process anal-
ysis and simulation tool enabling dynamic “what-if
process analysis. It may be used as a standalone tool
or within the iGrafx suite of process modeling and
analysis. Oracle BPM Suite
3
has a simulation module
too, which allows to define simulation scenarios with
various configurable parameters. Besides full fledged
BPMS suites, specialized simulation products exist,
such as SimProcess
4
. It is a hierarchical modeling
tool that combines process mapping, discrete-event
simulation, and the ABC; it allows users to carry on
1
www.softwareag.com
2
www.igrafx.com/products/process-modeling-
analysis/process
3
www.oracle.com/us/technologies/bpm
4
www.simprocess.com
powerful analysis such as “what-if scenarios, but it
does not use any standard notation for modeling pro-
cesses. An interesting survey on some commercial
simulation tools is proposed in (Jansen-vullers and
Netjes, 2006).
The majority of literature works addressing the
business process simulation calls on Petri Nets. Petri
Nets are preferred to other modeling techniques be-
cause of their rigorous and clear formalism. Also,
there are many easily available and freely accessi-
ble tools which analyse Petri Nets and evaluate their
“soundness”(Kherbouche et al., 2013), i.e., whether
the model is free of potential deadlocks and livelocks.
The basic approach adopted by researchers is to trans-
form the business process model (usually defined in
the BPMN language) into its “equivalent” Petri Net
model and to feed the model to a simulator engine
(Dijkman et al., 2008; Koizumi and Koyama, 2007).
The Protos2CPN tool’s strategy (Gottschalk et al.,
2008) is to transform a Protos model into a Colored
Petri Net (CPNet), and simulate it in standard CP-
Net tools. CPNets (Jensen, 1996) is a very powerful
discrete-event modeling language combining the ca-
pabilities of Petri Nets with the capabilities of a high-
level programming language.
Petri Nets are rather a good technique which is
proved to be particularly effective in the simulation of
workflows. In (Van der Aalst, 2010) authors discuss
the limitations of traditional simulation approaches
and identify three specific perspectives that need to
be defined in order to simulate business processes in
a structured and effective manner: the control flow,
the data/rules and the resource/organisation. Focus is
put on modeling at the right abstraction level the busi-
ness data influencing the process dynamics and the
resources to be allocated to process activities. Sim-
ilarly, authors in (Van der Aalst et al., 2008) argue
that a business processes simulator can not disregard
the environment where processes are executed and
the resources required to carry on the process activ-
ities. They also propose to use an ad-hoc workflow
language YAWL (Van der Aalst and Ter Hofstede,
2005) to model resources involved in the process
dynamics.
The idea proposed in this paper differs from the
mentioned works in that it melts two consolidated
and broadly adopted techniques to build an integrated
business process perspective. The basic principles
of ABC and the expressiveness of the BPMN are
combined to devise a cost-sensitive business process
model that can be used to characterize both the work-
flow and the execution context of a process.
RDBPM 2015 - Special Session on Research and Development on Business Process Management
304
3 A COST-CENTRIC BUSINESS
PROCESS MODEL
In this section we propose the definition of a novel
Business Process (BP) model. The purpose of the
model is to enable process designers to represent both
the (static) structural features of BPs and all external
entities and factors that may potentially affect the dy-
namics of BPs at execution time. For what concerns
the structure of a BP, the model will have to support
the representation of process’ activities and tasks and
their control flow, or in a word, the representation of
the process workflow. Instead, we will refer to the
“Context” of a process as the set of factors, exter-
nal to the process logic, yet capable of influencing the
process behaviour and performance at execution time.
This set includes, for instance, the human resources
responsible for carrying out process tasks, the non-
human resources consumed by process tasks (such as
goods and services), the business rules enforced on
decisor elements, and in general any impromptu event
that may occurr at process execution time.
Business Process Model
Context Model
Resource
Model
Environment
Model
Workflow
Model
Figure 1: Business Process Model.
In our design, the process Context Model is de-
fined to be the union of the Resource Model, that can
be used to characterize both human and non-human
resources, and the Environment Model, used to repre-
sent the rest of external factors that build up the pro-
cess environment. In Figure 1 a package-view of the
overall process model is depicted. In the remainder
of the section, first some key concepts of the Activ-
ity Based Costing methodology are briefly recalled.
Then we discuss in details the Resource Model, the
integration of the Resource Model with a well known
process workflow specification, and the Environment
Model.
3.1 Basic ABC concepts
An accurate tracking of costs (and revenues) is one
of the most fundamental internal procedures an
organization can utilize. Analytical accounting” is
an umbrella term for the financial component of busi-
ness management. It relies on financial data to make
determinations about how, when and why a business
spends (and receives) money.
For the sake of cost-flow tracking we draw inspi-
ration from the approach used in the ABC analyti-
cal accounting system (Cooper and Kaplan, 1992).
The basic assumption of ABC is that any enterprise
cost is generated whenever an activity consumes a re-
source. The strength of ABC is that all costs gener-
ated in the system from the consumption of resources
by activities may be directly allocated to these activi-
ties by means of appropriate resource drivers; in other
words, all costs including overhead costs produced
by enterprise’s support activities (Porter, 1985) are
treated as direct costs when allocated to activities that
are indeed precise costs carriers.
Given the full activity cost configuration, it is af-
terward possible to allocate these costs to the final
cost-objects through their activity drivers that define
how each activity is “consumed” by the final cost-
object. By “final cost-object” we refer to every busi-
ness entity whose cost has to be computed for the
analysis, such as products, customers or channels.
The ABC model depicted in Figure 2 defines the
CostObject as the base entity for all subsequent cost-
oriented concepts. Each CostObject has an unit of
measure and can be “driven” by a set of Drivers that
defines its requirements as the amounts of different
cost-objects demanded for one unit of it. In addi-
tion, every CostObject can target in the run a set of
other cost-objects through Allocations of its quanti-
ties to them over different dimensions such as cost,
units and time.
An implementation of the Java Units of Measure-
ment API
5
, namely JSR-363 which is currently un-
der review for approval, has been used as measures
and units framework (package Measures and Units in
Figure 2).
3.2 Resource Model
We focus on the definition of a cost-oriented Resource
Model capable of capturing the resource categories
that BPs may need. The Resource Model aims at cap-
turing and representing costs and other process related
information regarding any kind of “resource” that has
to be “consumed” by a process task, be it a human or
a non-human resource, and more specifically puts the
basis for an ABC analysis of processes.
The Resource Model defines the resource concept
as a cost-object extension itself. Figure 3 presents its
relevant classes and their relationships in the UML
notation (OMG, 2005). A Resource, no matter the
5
http://www.unitsofmeasurement.org
A Cost-centric Model for Context-aware Simulations of Business Processes
305
Measures and Units
ABC
drivers
0..*
source
amount
allocations
0..*
target
amount
Activity
Driver
«bind»
QNumerable<Activity>
SActivity
Allocation
«interface»
Resource
Q: Quantity
«bind»
QQ
DResourceDriver<>
source
«interface»
Activity
«bind»
QNumerable<Activity>
DResourceDriver<>
source
«interface»
Driver
Resource
Driver
«interface»
CostObject
«bind»
QQ
SResource<Q>
Q: Quantity
«interface»
Quantity
«interface»
Money
«interface»
Dimensionless
«interface»
Numerable
«interface»
Measure
Q: Quantity
«interface»
Duration
«interface»
Unit
Q: Quantity
unit
cost
Q: Quantity
D: Driver<>
Q: Quantity
S: CostObject<Q>
Q: Quantity
T
Figure 2: Activity-based-costing accounting system model.
kind, produces a cost whenever it is allocated and ac-
tually consumed by some business operation. As bet-
ter explained in the Section 3.3, the CostObject con-
cept depicted in the diagram represents the element
that, in our proposed view, bridges the domain of re-
sources and the domain of all the business operations
that actually make use of resources.
The NonHumanResource class may be used to
definie resources such as goods and services. Con-
sumableResource extends it by introducing the con-
cept of “residual amount” and it is suited for
available-if-in-stock resources. SchedulableResource
represents a generic resource whose availability is de-
fined by one or more calendars where each Calendar
represents a set of time intervals in which the resource
is available to the whole system; the most common
calendar based resource is the HumanResource (HR)
which represents the physical person who, in turn, oc-
cupies an OrganizationalPosition within an Organi-
zationalGroup structure such as an OrganizationalU-
nit structure (organizational chart).
Each OrganizationalPosition can be occupied by
one HR at a time and is related to other organiza-
tional positions through the directReport and the del-
egates relations. The directReport relation points to
the HR which is accountable for the position (usually
a manager) whereas the delegates relation allows the
Resource Model to identify a set of alternative HRs
when the requested one is not readily available.
3.3 Integrating the Resource Model
with BPMN
There is a lot of specifications available to define BP
models. Some provide features to represent basic
activities and the control flow (UMLs activity dia-
grams), others integrate the representation of Events
that trigger activities and/or that are triggered by ac-
tivities (Scheer and Nüttgens, 2000). To our knowl-
edge there is no open specification capable of rep-
resenting all the features of the Business Process
model that have been so far discussed. The well
known OMG’s Business Process Model and Notation
(BPMN) (OMG, 2011) standard was though a good
candidate for our purpose.
Our choice is in part motivated by the fact that
BPMN has reached a good level of maturity, and is
adopted and continuously supported by many ven-
dors. Besides new semantic elements, such as callable
elements and event-triggered sub-processes, the 2.0
version of BPMN introduced the complete Collabo-
ration, Process and Choreography meta-models, the
BPMN Diagram Interchange meta-model, the BPMN
Execution Semantics, the Basic and Extended Map-
ping of BPMN Models to WS-BPEL and the BPMN
Exchange Formats with its XMI and the XSD files
for XML serialization. Most important, the BPMN
2.0 “... introduces an extensibility mechanism that al-
lows the extension of standard BPMN elements with
additional attributes. It can be used by modelers and
modeling tools to add non-standard elements or arti-
facts to satisfy specific needs, such as the unique re-
quirements of a vertical domain, and still have valid
RDBPM 2015 - Special Session on Research and Development on Business Process Management
306
ABC Resource
featuresskills
occupant
position
groups
positions
calendars
«interface»
OrganizationalResource
«interface»
Calendar
1..*
1
1
0..*
0..*
HumanResource
Skill Feature
0..* 0..*
higherLevel
0,1
OrganizationalGroup
«interface»
Resource::Resource
Q: Quantity
«interface»
ABC::Resource
NonHuman
Resource
Consumable
Resource
Q: Quantity
«bind»
QNumberable<HumanResource>
«interface»
SchedulableResource
Q: Quantity
directReport
0,1
0..*
subordinates
0..*
delegates
OrganizationalPosition
Role
OrganizationalUnit
OrganizationalBranch
OrganizationalTeam
Durable
Resource
Q: Quantity
Asset
Q: Quantity
Q: Quantity
«interface»
CostObject
Q: Quantity
D: Dviver<>
Q: Quantity
«bind»
QQ
DResourceDriver<>
Figure 3: Resource Model.
BPMN Core. This appealing features drove us to
choose the BPMN as the specification on which to
groud our modeling needs.
The BPMN provides for a comprehensive notation
that allows to represent many features of a business
process. Basically, in BPMN it is possible to define
a process workflow articulated in sub-processes, call
activities, tasks, and to also model the control flow
of activities. Various type of external and internal
events may also be defined. Further, the organization
units responsible for a given process, a sub-process
or even a single task may be modeled by means of
concepts like pools and lanes. Like other specifica-
tions, though, BPMN lacks of notation to model the
“contextualization” of a process into its execution en-
vironment. We intend to tackle this deficiency by in-
tegrating the discussed Context model to the process
model defined in the BPMN specification.
On the left of the class diagram in Figure 4 rel-
evant BPMN elements have been reported (white
boxes), while on the right end the Resource Model
package is depicted (light gray boxes). In order to
integrate the two models, it is of primary importance
to bring the elements of the BPMN domain under a
cost-sensitive perspective. The bridge between the
two models is realized by the ABC package, whose
basic concepts are depicted in dark gray boxes.
The BPMN model is integrated into the cost per-
spective by means of the BPMN::Activity class. This
class implements the behaviour of the ABC::Activity
interface, which represents the Activity concept in the
ABC sense. Basically, we let the Task, the SubProcess
and the Process behave like an ABC::Activity.
According to this representation, the BPMN enti-
ties in Figure 4 are cost objects as well. Further, their
classes are bound to the Resource class (which again,
is a cost object) by means of the ResourceDriver. This
is to model that, at the lowest level, a Task is an el-
ementary business operation that basically needs to
consume Resources for its execution: the cost pro-
duced by the task execution is exactly the aggre-
gated cost of the consumed resources. Further, Par-
ticipant, Process, LaneSet, Lane and SubProcess are
ABC::Activity as well, but in this perspective they
act as cost aggregators. It is easy to build a cost
“chain” where a Process aggregates the costs of it’s
Lanes, which in turn aggregate the costs produced
by their Tasks, which in turn aggregate the costs pro-
duced for consumption of their associated Resources.
The aggregation is realized by means of an Allocation
scheme that sums up the measures (costs, number of
instances and times) to the higher level elements in a
bottom-up fashion, starting from tasks.
In Figure 4 both the Resource and the business op-
erations (process, sub-process, task) are CostObjects;
but with the slight difference that Resources are cost
generators, whilst the business operations are cost ag-
gregators.
The granularity of the business elements provided
by the BPMN standard well matches the ABC philos-
ophy. By associating costs to the most atomic busi-
ness element (the resource), by means of direct-cost
allocation it is easy to derive the costs of every op-
eration at any level in the hierarchy of business op-
erations, from the simplest task to the most complex
process.
3.4 Environment Model
We discuss the factors that are external to the process
logic but that are anyway capable of affecting the pro-
cess execution. In the literature, researchers (Van der
Aalst, 2010) have identified numerous aspects that de-
signers either tend to neglect or are not able to ac-
count for at design time, and that have a negative im-
pact when the process executes. Some of those are
the employment of oversimplified (or even incorrect)
models, the discontinuous availability of data and re-
sources, the inhomogeneous skill of the employed hu-
man resources (which leads to non deterministic hu-
man tasks’ duration), the lack of knowledge about the
exact arrival time of process’ external stimuli, and so
A Cost-centric Model for Context-aware Simulations of Business Processes
307
BPMN
Resource
ABC
source
«interface»
CostObject
Q: Quantity
D: Dviver<>
«interface»
ABC::Activity
drivers
0..*
Resource
Driver
Participant Process
LaneSet
SubProcess
Task
process
laneSets
0..*
lanes
0..*
Lane
activities
0..*
activities
0..*
laneSet
«interface»
ABC::Resource
Q: Quantity
«bind»
QQ
DResourceDriver<>
«bind»
QNumerable<Activity>
DResourceDriver<>
BPMN::Activity
Q: Quantity
HumanResource
NonHuman
Resource
Q: Quantity
«interface»
SchedulableResource
Q: Quantity
Durable
Resource
Q: Quantity
«bind»
QNumerable<HumanResource>
«interface»
Resource::Resource
Q: Quantity
Consumable
Resource
Q: Quantity
«interface»
OrganizationalResource
Figure 4: Integration between the BPMN and the Resource model.
on.
Our objective is to provide the process design-
ers with a tool to simulate the effects that external
factors may have on the process dynamics and per-
formance. Basically, we introduce a model which
provides for the representation of non-deterministic
behaviours of the process elements. The proposed
model is an extension of the one proposed in an ear-
lier work (Cartelli et al., 2014). Figure 5 shows the
BPMN elements which have been associated a sta-
tistical behaviour, and the categories of statistical be-
haviours that have been modeled.
StatisticalBehavior is the root class represent-
ing a generic behaviour which is affected by non-
deterministic deviations. It includes several probabil-
ity distribution models (uniform, normal, binomial to
cite a few) that can be used and adequately combined
to build specific behaviours.
Duration models the temporal length a certain
event is expected to last. This concept will be used to
specify the expected duration of the following BPMN
elements: tasks, sequence flows and message flows.
Tasks, in fact, may have a variable duration in re-
spect, for instance, to the skills of the specific person
in charge of it or, in the case of a non-human task, to
the capability of a machine to work it out. A sequence
flow may have a variable duration too. It is not rare, in
fact, that time may pass since the end of a preceding
task to the beginning of the next one (think about a
very simple case when documents need to be moved
from one desk to another desk in a different room).
Finally, message flows fall in this category too since
they are not “instant” messages, and the time to reach
the destination may vary from case to case.
ResourceConsumption models the uncertainty re-
garding the unpredictability of the consumption of
a Resource by a given Task. The implemented sta-
tistical behavior concerns the amount of a given re-
source type that can be consumed by a task. For in-
stance, in the case of human type of resource, it is
possible to model a task consuming a discrete num-
ber of resource units which is computed by a statis-
tical function; whereas in the case of a non-human
resource type, it will be possible to specify the statis-
tical amount of the resource expressed in its unit of
measure (kilowatts, kilograms, meters, liters, etc.).
LoopIteration models the uncertainty of the num-
ber of iterations for a specific looped activity. This is
the case of both BPMN’s standard loop and multi-
instance loop activities, i.e., tasks or sub-processes
that have to be executed a certain number of times
which either is prefixed or depends on a condition.
ConditionalFlowSet models the uncertainty intro-
duced by the conditional gateways (both inclusive and
exclusive). It will be used to select which of the gate-
way’s available output flow(s) are to be taken.
The Instantiation concept models the rate at which
a specific event responsible for instantiating a process
may occur. In particular, it will be used to model the
behaviour of the BPMN’s Start Event elements that
are not triggered by the flow.
The Occurrence models the delay after which an
event attached to an activity may occur. The event is
triggered exactly when the activity flow-time exceeds
the delay.
4 CASE STUDY EXAMPLE
The objective of this work was to devise a business
process model that process designers may use to de-
fine processes and characterize its context features;
next step was to implement a simulator capable of
running lon-term, context-aware simulations of those
processes and producing cost-sensitive results useful
for ABC analysis. In an earlier work (Cartelli et al.,
2014) the design and implementation of a preliminary
version of the simulator was presented. It was com-
patible with an earlier version of the business process
model. The reader may refer to that work for details
RDBPM 2015 - Special Session on Research and Development on Business Process Management
308
Environment
BPMN
«interface»
Statistical
Behavior
StartEventTask SequenceFlow MessageFlow
Exclusive
Gateway
Inclusive
Gateway
SubProcess
Boundary
Event
«interface»
Duration
«interface»
Conditional
FlowSet
«interface»
Instantiation
«interface»
Resource
Consumption
«interface»
LoopIterations
«interface»
Occurence
Figure 5: Process Environment model.
on the simulator design. The simulator code has now
been refactored to support the enhanced model intro-
duced in this paper. Despite the significant changes,
the basic simulator strategy remained the same: pro-
cess models taken in input are first transformed into
equivalent Colored Petri Nets (Jensen, 1996) and then
simulated through a third party CPNet simulation en-
gine
6
.
Designers wishing to use the simulator must sup-
ply a Business Process Definition (BPD) file, which
is an instance of their process model embedding all
the specific features of the process in terms of work-
flow and execution context respectively. A BPD is an
XML file that is structured according to a schema that
we are going to briefly describe. In order to define the
process workflow, plain BPMN standard in its XML
serialised form will be used. The standard envisions
some points of extensions (OMG, 2011) that, instead,
we are going to exploit to represent the process con-
text features. In the end, the BPD file is still compliant
to the BPMN standard.
The basic schema for the overall process rep-
resentation, then, is that of the BPMN standard.
The BPMN extensionsElements tag identifies a sec-
tion that can be used to “...attach additional at-
tributes and elements to standard and existing BPMN
elements” (OMG, 2011). There it is where we
are going to provide extra information concerning
the process context. In particular, using that tag
we can add the environmental features discussed
in Section 3.4 to Subprocess, Task, SequenceFlow,
MessageFlow, ExclusiveGateway, InclusiveGateway,
StartEvent and BoundaryEvent respectively. More-
over, being the BPMN resource an extension of the
tRootElement, which in turn extends the tBaseEle-
ment, extra information concerning the newly intro-
duced Resource::Resource concept (Fig. 3 in Sec-
tion 3.2) can be added through that extension point.
In Listing 1 the schema excerpt describing the Re-
6
For our purpose the engine of the Renew tool was used:
www.renew.de
source::Resource element has been reported.
Listing 1: XSD excerpt of the BPSIM resource.
<xsd : schem a
xm l ns= " h t t p : / / www. u n i c t . i t / bpmn / bpsi m / 2 . 0 "
. . . >
< x sd : el e me n t name=" r e s o u r c e " t y p e =" R e s ou r c e " / >
<xsd :com p lex T ype name= " Res o ur ce ">
< x sd : se qu e nc e >
< x sd : el e me n t name=" u n i t " t y p e =" U n it "
minOc c u r s = " 1 " m axOccur s = " 1 " / >
< x sd : el e me n t name=" t i m e U n i t " t yp e = " Ti m e U nit "
minOc c u r s = " 1 " m axOccur s = " 1 " / >
< x sd : el e me n t name=" mon eyU nit " t yp e = " MoneyUnit "
minOc c u r s = " 1 " m axOccur s = " 1 " / >
< x sd : el e me n t name=" u s age " m i n O ccurs = " 1 "
maxO ccurs = " unbou n ded " >
<xsd :com p lex T ype>
< x sd : se qu e nc e >
< x sd : el e me n t name=" a v a i l a b i l i t y "
t y p e = " Amount " maxOc curs=" 1 " / >
< x sd : el e me n t name=" us a ge C o s t " t y p e =" Amount "
minOc c u r s = " 0 " m axOccur s = " unb o unde d " / >
< x sd : el e me n t name=" u n i t C o s t "
t y p e = " Ti meableAmou nt " m i nOccurs= " 0 "
maxO ccurs = " unbou n ded " / >
< / x sd : se q u en c e >
< x s d : a t t r i b u t e name=" s c e n a r i o R e f "
t y p e = " x sd:IDRE F " u s e =" r e q u i r e d " / >
< / xsd : comp lexT y pe >
< / xs d :e l e m e n t >
< / x sd : se q u en c e >
< x s d : a t t r i b u t e name=" t y p e " t y p e =" x s d : s t r i n g " / >
< / xsd : comp lexT y pe >
Finally, the standard category tag is another ele-
ment of the BPMN schema that we are going to use
to supply other specific information regarding the def-
inition of the simulation scenarios, the calendars and
the cost objects.
In the following we provide an example of how to
define a BPD file for a case study process. A BPMN
description of the investigated case study process is
shown in Figure 6. It represents the process of re-
leasing a construction permit by the Building Au-
A Cost-centric Model for Context-aware Simulations of Business Processes
309
thority of a Municipality. The whole process involves
different actors who interacts to each other exchang-
ing information and/or documents (represented in the
model as specific messages). The involved actors are:
Applicant, the private citizen/company who needs to
obtain the building permit and triggers the whole pro-
cess; Clerk, the front-office employee of the Build-
ing Authority who receives the Application and is in
charge of a) checking the documentation of the ap-
plication, b) interacting with the applicant in order to
obtain required documents and c) sending back the re-
sult of the application; Senior Clerk, the back-office
employee of the Building Authority who evaluates
and decides on the application; Expert, an external
expert who may be called upon by the Senior Clerk
whenever specific technical issues arise and the final
decision may not be autonomously taken.
The business process spans four swimlanes, one
for each actor. Both the Applicant and the Expert
are external entities, i.e., are not part of the enter-
prise’s business process dynamics. While there was
no reason to represent the Applicant in the resource
model, the Expert was modeled as a DurableResource
(paid by the hour). The Clerk and the Senior Clerk
were modeled as OrganizationalPosition. Other con-
sidered resources in the scenario are energy, modeled
as DurableResource, paper and stamps, both modeled
as ConsumableResource.
The BPMN diagram depicted in Figure 6, which
represents just the process workflow, has an equiva-
lent Xml representation that we are not going to show
for space reason. Instead, we deem interesting to re-
port what the Xml representation of the process con-
text will look like. Suppose we want to set up a
context scenario (say scenario1) for which we intend
to employ all the above mentioned resources. Also,
we need a calendar (official-calendar) to state that
for human resources the working days are Monday
through Friday and the working hours follow the pat-
tern [8:00AM to 12:00AM, 1:00PM to 5:00PM]. We
then specify four different types of application (“cost
object”, in the ABC terminology) that potential appli-
cants may submit. Further, in the specific scenario we
require 1 unit of the Clerk resource type and 2 units
of Senior Clerk resource type, whose hourly costs are
10eand 20erespectively. Listing 2 reports an Xml
excerpt of the definition of the scenario, the cost ob-
jects and the Clerk. Note that all the new elements
describing the process context, and that are out of the
BPMN standard, have been assigned a bpsim prefix,
while BPMN elements shows no prefix.
Listing 2: XML excerpt defining the scenario, the cost ob-
jects and the Senior Clerk resource.
< d e f i n i t i o n s i d = " si d 6cc 24 11a . . . "
xm lns= " h t t p : / / www . omg . o r g / s p e c /BPMN/2 01 00 52 4/MODEL" >
< x m l n s : b psi m =" h t t p : / / www . u n i c t . i t / bpmn / bps im / 2 . 0 " . . . >
<i mp or t l o c a t i o n =" BPSIM20 . xs d "
na m es pa c e =" h t t p : / /www. u n i c t . i t / bpmn / bpsim / 2 . 0 "
i mpo r t T y p e = " h t t p : / / www . w3 . o rg / 2 0 0 1 / XMLSchema " / >
< e x t e n si o n d e f i n i t i o n =" bps im:BP MN Ex tensi on "
m u s t U n d e r s t a n d = " t r u e " / >
< c a t e g o r y i d =" bpsim s c e n a r i o s " name= " BpSim S c e n a r i o s " >
< c a t eg o r y V a l u e i d = " s c e n a r i o 1 " v a lu e = " S c e n a r i o 1 ">
< e x t e n s i o nE l e m e nt s >
< b p s i m : sc e n ar i o d e f a u l t = " t r u e " >
< b ps i m : ti m e U nit >month< / bp s i m :t i m e Un i t >
<bpsim :moneyU nit >EUR< / bps im:mone yUnit>
< bp s im: m ax I nst a nc e s >100 000 0< / b ps i m:m a xI n sta n ce s >
< b p s i m : s t a r t I n s t a n t >20150101 T0 0 : 0 0 : 0 0 . 00 0
< / b p s i m : s t a r t I n s t a n t >
< b p s i m : e n d I n sta n t >20180101 T 0 0 : 0 0: 0 0 . 0 00
< / b p s i m : e n d Inst a n t >
< / b p s i m : sc e n a ri o >
< / e x t e n s i o n El e m e n ts >
< / c a teg o r y V a l u e >
< / c a t e g o r y >
< c a t e g o r y i d =" bpsim c o s t o b j e c t s " name= " BpSim C os t
O b je c t s ">
< c a t eg o r y V a l u e i d = " a p p l i c a t i o n " v al u e =" A p p l i c a t i o n " >
< e x t e n s i o nE l e m e nt s >
< b ps i m : co s t O bj e c t Ty p e i d =" a p p l i c a t i o n m a i n t e n a n ce "
name= " Ma i n t e n a n ce " / >
< b ps i m : co s t O bj e c t Ty p e
i d =" a p p l i c a t i o n b u i l d i n g r e n o v a t i o n "
name= " B u i l d i ng R en o v a ti o n " / >
< b ps i m : co s t O bj e c t Ty p e
i d =" a p p l i c a t i o n p r e s e r v a t i o n and r e s t o r a t i o n "
name= " P r e s e r v a t i o n an d R e s t o r a t i o n " / >
< b ps i m : co s t O bj e c t Ty p e
i d =" a p p l i c a t i o n u r ba n r e s t r u c t u r i n g "
name= " Urban R e s t r u c t u r i n g " / >
< / e x t e n s i o n El e m e n ts >
< / c a teg o r y V a l u e >
< / c a t e g o r y >
< r e s o u r c e i d =" s e n i o r c l e r k " name= " S e n i o r C le r k " >
< e x t e n s i o nE l e m e nt s >
< b p s i m : r eso u r c e t y p e = " O r g a n i z a t i o n a l P o s i t i o n " >
< b p s i m : u n i t >#HR< / b p s i m : u n i t >
< b ps i m : ti m e U nit >h< / bp s i m:t i m e Un i t >
<bpsim :moneyU nit >EUR< / bps im:mone yUnit>
< bp s im : usa g e s c e n a r i o R e f = " s c e n a r i o 1 ">
< b p s i m : a v a i l a b i l i t y c a l e n d a r R e f = " o f f i c i a l c a l e n d a r ">2
< / b p s i m : a v a i l a b i l i t y > < ! 2 #HR >
< b p s i m : u ni t C o s t t im eB ou nd = " t r u e " > 20 . 0 0
< / b p s i m :un i t C o s t > < ! 20 EUR / h / #HR >
< / bp s im : us a g e >
< / b p s i m : res o u r c e >
< / e x t e n s i o n El e m e n ts >
< / r e s o u r c e >
In Listing 3 we show how to assign resources
to a specific task. The bpsim:resourceConsumption
tag models the statistical behaviour “ResourceCon-
sumption” of Figure 5 discussed in Section 3.4.
Specifically, the send invoice task is assigned ex-
actly one Clerk, an amount of energy that is dis-
RDBPM 2015 - Special Session on Research and Development on Business Process Management
310
Building authority
Clerk
Clerk
new application
received
check
application
request
missing
documents
receive
missing
documents
send invoice
receive
payment
send
construction
permit
send rejection
explanation
archive
application
Senior clerk
Senior clerk
evaluate
application
forward
documents to
external expert
receive
recomm.
decide on
application
External expert
External expert
recommendation
requested
write recomm.
report
recommendation
sent
Applicant
Applicant
send
application
receive invoice pay invoice
receive
construction
permit
receive rejection
explanation
send requested
documents
receive missing
documents
request
application incomplete
ext. recomm. needed
application rejected
Figure 6: BPMN model of the example process.
tributed according to the Normal law, a number of
paper sheets that is Bernoulli distributed and exactly
2 stamps. Further, the duration of send invoice task
(which models the statistical behaviour “Duration”
of Figure 3) has a Beta (PERT parametrized) dis-
tribution (bpsim:duration section). Finally, the ex-
cerpt reports the parameters of the autonomous de-
cision gateway. In particular, it is stated that in the
case that at the input flow arrives a cost object of
type application-maintenance, application-building-
renovation or application-urban-restructuring, one
of the outgoing flow has 20% probability of be-
A Cost-centric Model for Context-aware Simulations of Business Processes
311
!"#$%&$"$'&
()#*+#$,-
.&$/0"%#/$
12&3&20"%#/$-
4-.&3%/2"%#/$
526"$-
.&3%2)'%)2#$,
!"#$%&$"$'&
()#*+#$,-
.&$/0"%#/$
12&3&20"%#/$-
4-.&3%/2"%#/$
526"$-
.&3%2)'%)2#$,
!"#$%&$"$'&
()#*+#$,-
.&$/0"%#/$
12&3&20"%#/$-
4-.&3%/2"%#/$
526"$-
.&3%2)'%)2#$,
'7&'8-"99*#'"%#/$ !"###$%& '()$'' !)#$#& !!$&* :;<=>?@A !#!$' '&$+ !)$' !$! :<>?A '$+ !$* *$* *$* =?B
3&$+-#$0/#'& +)+$,# )#+$') #&$%% )*$*' C;<>:?B: %#$* ,$, '$* *$( AD?A )&$+ #$) )$( *$! >>?@
2&'&#0&-9"EF&$% !%*$,% #'$(! )#$(% '$'* :C>?D: !%$) #$# )$% *$' :C?: '"'+#$, !#!$% '()$* *$* :;@@B?:
3&$+-'/$3%2;-9&2F#% )"()+$,% '*#$%+ ))*$&# !!$(( >;C=A?@G #+$+ +$( '$* *$( AC?> '$% *$% *$* *$* G?<
"2'7#0&-"99*#'"%#/$ +#+$*, )%!$&, %!$*& ,$&% C;<A>?GB +#$+ )%$' %$! )$* C<A?> '$+ *$* *$* *$* :?B
2&H)&3%-F#33#$,-+/')F&$%3 %%($*+ #!$'' (($&, *$** ADD?C< '+$' !$, %$% *$* GA?D *$* *$* *$* *$* <?<
2&'&#0&-F#33#$,-+/')F&$%3 +!$'' &$#) )*$,' *$** @@?AD +$! *$& )$) *$* C<?< )!"+(*$# !"!&!$, ((!$+ )#*$& CA;<GA?D
3&$+-2&I&'%#/$-&J9*"$"%#/$ )#%$)+ !%$*# *$** *$** CD<?>> ,$* )$% *$* *$* C<?= *$! *$* *$* *$* <?>
&0"*)"%&-"99*#'"%#/$ !)#"%'!$&& '("(&*$!' )'"#)'$,, !"#'%$&& >AB;CG>?=G )*"(*($# )"++#$& &&,$% )!)$& C:;:B:?< ))"+&'$# )"!()$! )&&$* )($( C:;:CB?:
+&'#+&-/$-"99*#'"%#/$ %&&$&( )**$** ''$'' &$&( D<A?AD !+$' %$* )$( *$' :=?: ))"(&%$% !&)$# &%#$' +%$& C>;DAA?@
K/2L"2+-+/'3-%/-&J%;-&J9&2% '&$++ %$'' ($)) *$** G@?:> )$+ *$' *$# *$* >?= !'!$+ !'$! '+,$) *$* AG=?<
2&'&#0&-2&'/FF;
!%$(% '$%' %$)! *$** :G?G< )$' *$! *$' *$* C?D )"%(+$+ #!$' !)$% *$* C;AG>?A
>>>;<>B?<A :B;@A:?GB C:;@BA?AG >;=C<?AB >DD;GBB?B= CC;>G@?: C;@D<?> DC>?: C>A?B CG;<=B?A GC;D>G?< G;CC<?< >;:DA?G >GG?> GB;G=G?A
)($'# )($+* )#$** ),$+* CD?>> )**- )**- )**- )**- C<<M '()- !*,- ''#- ),'- :G=M
)"'*&$*% )"!,+$(+ )"',+$&& )"!%%$'# C;:<B?@C &&$! &%$( ()$! &'$# AA?: !#%$# )'($* !'($& )!!$) >>B?A
#&"&!%$,, &"%%*$*+ +"%,%$*% *$** AC;DDC?C: )"%%#$! !)+$' !+&$% *$* >;<=@?< *$* *$* *$* *$* <?<
GA;A>=?@@ A;==<?<B B;=@=?<= <?<< AC;DDC?C: C;==G?> >CB?: >BA?= <?< >;<=@?< <?< <?< <?< <?< <?<
'*$** '*$** '*$** *$** :<?<< )**- )**- )**- *- C<<M *- *- *- *- <M
!(#$!( !)+$'# +%,$%) *$** >@C?:D ,$) ($' !+$( *$* @?D *$* *$* *$* *$* <?<
L/28-%#F&3-N7O
H)&)&-%#F&3-N7O
'/3%P/6I&'%3
QRQST
'/3%P/6I&'%3
QRQST
'/3%3-NUO
./0121034/5607589:/0;<:=5<0
VJ%&2$"*-
VJ9&2%
L2#%&-2&';-2&9/2%
QRQST
=:<;01>:;?@10;AB4CD
=:<;?@10;AB4E/5607589:/06D
()#*+#$,-S)%7/2#%E
"'%#0#%#&3
'/3%P/6I&'%3
QRQST
W*&28
X&$#/2-
W*&28
QRQST
=:<;01>:;?@10;AB4CD
=:<;?@10;AB4E/5607589:/06D
check%application
send%invoice
receive%payment
send%construction%
permit
archive%application
request%missing%
documents
receive%missing%
documents
send%rejection%
explanation
evaluate%application
decide%on%
application
forward%documents%
to%external%expert
receive%
recommendation
write%
recommendation%
report
Clerk !"#$%&'$ ('(&)$ !*$&'! (**&%+ *"#($&), )((&,$ ++&(' *#)&,, #&## #&## #&## #&## 6.360,32
Senior%Clerk #&## #&## #&## #&## #&## #&## #&## #&## $('"((#&'% '#(&(' )+&*# !)&$) 268.450,76
Durable Energy $'&$! (&#+ #&## %&%# #&## )&$# #&## #&+) ),*&'+ #&## #&$$ #&*% 526,13
Paper #&## $&*$ #&## !&,) #&## *&$, #&## #&)# #&## #&## #&## #&## 7,64
Stamp #&## !!+&$# #&## *"%!(&## #&## $#)&,# #&## ()&## #&## #&## #&## #&## 2.144,00
3.052,96 1.023,83 312,73 2.156,94 1.062,48 677,10 99,67 170,22 268.142,54 706,67 49,32 34,40 277.488,85
*#&#+ *%&*) *#&## !%&$' *#&## *)&%# *#&## *(&$! $#&#) $#&## $#&#+ $#&#+ 19,74
**&#( )&,! *&), **&$! %&#* *#&%, *&%( ,&%* *"$()&,$ !&!! #&'! #&%* 153,14
Durable
External%Expert (*"''*&*! 61.771,13
61.771,13 61.771,13
!#&## 30,00
+#,&)# 908,40
Consumable
TOTAL
resources
-./0123.0452106789:
-./045210678;<=12>21?:
costs%[€]
External%
Expert
/.@A4/=.8<=12>21?0/.-A/1
TOTAL
-./0123.0452106789:
-./045210678;<=12>21?:
TOTAL
Building%Authority
Clerk
Senior%Clerk
Building%Authority
External%
Expert
Organizational
Figure 7: Overall report for scenario1.
ing selected, the other takes the remaining 80%; in-
stead, in the case that an application-preservation-
and-restoration cost object arrives, a specific output
flow is alway selected. In our cost-based view, Gate-
ways are one of the many elements where the type of
the processed cost object affects the workflow.
Listing 3: XML excerpt defining the “send invoice” task’s
resource assignement and the exclusive gateway statistical
behaviour.
<sendTask c o m p l e t i o n Q u a n t i t y =" 1 "
i d = " s i d 7B9D15A6 . . . "
i m p l e m e n t a t i o n = " ## W e b S e r vice "
i s F o rC o m p e n sa t i o n = " f a l s e " name= " se n d i n v o i c e "
s t a r t Q u a n t i t y =" 1 " >
< e x t e n s i on E le m en t s >
< b p sim : t as k s c e n a r i o R e f =" s c e n a r i o 1 " >
<bpsim: r e s o u rceCon s u m p t ion r e s o u r c e R e f =" c l e r k "
u n i t = " #HR" >
<bp sim :num era ble t y p e =" C o n s t a n t ">
<bpsi m : para m e ter
name= " v a l u e " >1< / bpsi m : param e t er >
< / bps im: num era ble>
< / b psim:re s o u r c eConsu m p t i o n >
<bpsim: r e s o u rceCon s u m p t ion
r e s o u r c e R e f =" e n er g y " u n i t = "W" >
< b p s i m : f r a c t i o n a l t y p e =" Normal " >
<bpsi m : para m e ter
name= "mu" >500< / bpsi m : param e t er >
<bpsi m : para m e ter
name= " sigma " > 3 .3 3 < / b p sim: p a rame t e r >
< / b p s i m : f r a c t i o n a l >
< / b psim:re s o u r c eConsu m p t i o n >
<bpsim: r e s o u rceCon s u m p t ion r e s o u r c e R e f =" pa p e r "
u n i t = " # p ap e r " >
<bp sim :num era ble t y p e =" B e r n o u l l i " s h i f t = " 4 " >
<bpsi m : para m e ter
name= " p " > 0. 1 2 < / bp s i m:pa r a meter >
< / bps im: num era ble>
< / b psim:re s o u r c eConsu m p t i o n >
<bpsim: r e s o u rceCon s u m p t ion r e s o u r c e R e f =" s t a m p "
u n i t = " # st a m p ">
<bp sim :num era ble t y p e =" C o n s t a n t ">
<bpsi m : para m e ter
name= " v a l u e " >2< / bpsi m : param e t er >
< / bps im: num era ble>
< / b psim:re s o u r c eConsu m p t i o n >
< b p sim : d u rat i o n u n i t = " h " t y p e = " P e r t " >
<bpsi m : para m e ter name= " a " >10< / bpsi m : para m e ter >
RDBPM 2015 - Special Session on Research and Development on Business Process Management
312
<bpsi m : para m e ter name= "m">15 < / b p s im:pa r amete r >
<bpsi m : para m e ter name= " b ">30 < / b p s im:p a r amete r >
< / b ps im: d u ra ti on >
< / b psi m : ta sk >
< / ex t en s io n El e me n ts >
. . .
< / sendTask >
< e xc lus i v eGa t e wa y i d =" s i d 4A21D4F4 . . . "
d e f a u l t = " s i d 59595B8C . . . "
g a t e w a y D i r e c t i o n =" Di v e r g i n g " name= " auton o m o u s
d e c i s i o n ? " >
< e x t e n s i on E le m en t s >
< b p sim : e x cl usi v e G ate w a y s c e n a r i o R e f = " s c e n a r i o 1 " >
< bp s im : c o nd i t i on a l F l o w Se t
f l o w Ref = " s id A1FD99EE . . . " >
< b p s i m : p r o b a b i l i t i e s >
< b p s i m : p r o b a b i l i t y co s t O b j e c t T yp eR e f =
" a p p l i c a t i o n m ai n te n a n ce "> 0. 2
< / b p s i m : p r o b a bi l i t y >
< b p s i m : p r o b a b i l i t y co s t O b j e c t T yp eR e f =
" a p p l i c a t i o n b u i l d i n g r e n o v a t i o n " > 0 . 2
< / b p s i m : p r o b a bi l i t y >
< b p s i m : p r o b a b i l i t y co s t O b j e c t T yp eR e f =
" a p p l i c a t i o n p r e s e r v a t i o n and
r e s t o r a t i o n " > 1 .0
< / b p s i m : p r o b a bi l i t y >
< b p s i m : p r o b a b i l i t y co s t O b j e c t T yp eR e f =
" a p p l i c a t i o n ur b a n r e s t r u c t u r i n g " > 0 . 2
< / b p s i m : p r o b a bi l i t y >
< / b p s i m : p r o b a b i l i t i e s >
< / b p si m :c o n d it i o n al F l o w S e t >
< / b ps im: e x c lu siv e G a tew a y >
< / ex t en s io n El e me n ts >
. . .
< / e xcl u s ive G a tew a y >
The cost-sensitive approach adopted to design the
Business Process Model eventually allowed us to
gather data produced by the simulation and easily put
them in a form that facilitates ABC analysis. Focus is
put on the application. As explained earlier, each sub-
mitted application is a cost-object, in the sense that it
accumulates the costs produced by every activity that
is going to process the application itself. Also, when
traversing the activities an application is also capable
of recording both the time spent in every activity’s
queue and the time for being processed.
Three simple process KPIs are going to be as-
sessed through the simulation: the monetary costs in-
curred by the Building Authority to serve the requests,
the work times spent by the activities to process appli-
cations and the queue times applications had to wait
before being processed by the activities. Figure 7 de-
picts a report of analytical costs and times computed
for the scenario. In particular, costs incurred for the
allocation of resources to activities are reported in
the section “resource/activity report”; activity costs
and times absorbed by the four types of application
are instead shown in the section “activity/cost-object
report”. The resource pools are spliced into inter-
nal resources (Building Authority) and external re-
sources (External Expert) and further classified by
type; the activity pools coincide with those of the
BPMN model.
The obtained data provide a picture of the per-
formance of the process in terms of costs and times.
Process designers may use those data to ground their
analysis, and guess which part of the process (work-
flow, resource assignments) is susceptible of improve-
ments. In the “activity/cost-object” section, if we
focus on the intersection between the “costs [e]”
macro-column and the “per unit [*/#cost-objects]”
row of the Building Authority pool we can observe
the unit cost of each application type (Maintenance,
Building Renovation, ...). So, for instance, the
unit cost of the Maintenance application is 1.306,05
e/#cost-object, i.e., every Maintenance application
has an average cost of 1.306,05 e. Similarly, if we
look at the “per time unit [*/h]” row, the hourly cost
of the Maintenance application is 17,34e/h, i.e., ev-
ery work hour on the Maintenance application has an
average cost of 17,34e.
5 CONCLUSION
Business process practitioners agree that one of the
most critical step in the management of business pro-
cesses is process analysis and modeling. Simula-
tion tools may help designers to fine-tune the process
model before the process is actually implemented and
executed. Most of existing commercial tools use pro-
prietary or hybrid technique to represent all process
features and the resources involved in the process ex-
ecution. This paper presented a proposal of a novel
process context model, which grounds on the BPMN
and leverages on the ABC accounting principles. The
model allows process designers to represent process
features under a cost-sensitive perspective. In order
to test the model viability, an example process was
modeled and fed to a business process simulator. Re-
sult of the simulation were presented in the paper. In
the future, the management of resource preemption
and priority will be integrated with the model. The
exploitation of the BPMN choreography model’s fea-
tures will be object of investigation too.
REFERENCES
Cartelli, V., Di Modica, G., and Tomarchio, O. (2014).
A Resource-aware simulation tool for Business Pro-
A Cost-centric Model for Context-aware Simulations of Business Processes
313
cesses. In ICEB 2014 - Proceedings of the 4th Inter-
national Conference on e-Business, Vienna (Austria).
Cooper, R. and Kaplan, R. S. (1992). Activity-based sys-
tems: Measuring the costs of resource usage. In Ac-
counting Horizons, volume 6, pages 1–12.
Dijkman, R. M., Dumas, M., and Ouyang, C. (2008).
Semantics and analysis of business process models
in BPMN. Information and Software Technology,
50(12):1281–1294.
Gottschalk, F., Van der Aalst, W., Jansen-Vullers, M., and
Verbeek, H. (2008). Protos2CPN: Using colored Petri
nets for configuring and testing business processes. In-
ternational Journal on Software Tools for Technology
Transfer, 10(1):95–110.
Jansen-vullers, M. H. and Netjes, M. (2006). Business pro-
cess simulation â
˘
A¸S a tool survey. In In Workshop and
Tutorial on Practical Use of Coloured Petri Nets and
the CPN.
Jensen, K. (1996). Coloured Petri Nets: Basic Concepts,
Analysis Methods and Practical Use. Springer-Verlag,
London, UK.
Kherbouche, O., Ahmad, A., and Basson, H. (2013). Us-
ing model checking to control the structural errors in
bpmn models. In Research Challenges in Informa-
tion Science (RCIS), 2013 IEEE Seventh International
Conference on, pages 1–12.
Koizumi, S. and Koyama, K. (2007). Workload-aware
business process simulation with statistical service
analysis and Timed Petri Net. In Proceedings -
2007 IEEE International Conference on Web Services,
ICWS 2007, pages 70–77.
OMG (2005). The UML Specification.
http://www.omg.org/spec/UML/2.0/.
OMG (2011). Business Process Model and Notation
(BPMN 2.0). http://www.omg.org/spec/BPMN/2.0/.
Porter, M. E. (1985). Competitive advantage: Creating and
sustaining superior performance. Free Press.
Scheer, A.-W. and Nüttgens, M. (2000). Aris architec-
ture and reference models for business process man-
agement. In Business Process Management, Models,
Techniques, and Empirical Studies, pages 376–389.
Springer-Verlag.
Van der Aalst, W. M. P. (2010). Business process simulation
revisited. In Enterprise and Organizational Model-
ing and Simulation, volume 63, pages 1–14. Springer-
Verlag.
Van der Aalst, W. M. P., Nakatumba, J., Rozinat, A., and
Russell, N. (2008). Business process simulation: How
to get it right. In International Handbook on Business
Process Management. Springer-Verlag.
Van der Aalst, W. M. P. and Ter Hofstede, A. H. M. (2005).
YAWL: Yet Another Workflow Language. Informa-
tion Systems, 30(4):245–275.
RDBPM 2015 - Special Session on Research and Development on Business Process Management
314