EXPRESSING BUSINESS RULES IN BPMN
Li Peng and Hang Li
Software School, Hunan University, Changsha, Hunan, China
Keywords: Business rule, Business Process Modelling Notation, Subprocess, Operationalization.
Abstract: The Business Process Modelling Notation is a graph-oriented language for executable business processes.
Business rules describe fundamental constraints on a system’s transactions. Changes of business rules bring
high impact on business processes. It is important for these rules to be represented explicitly, and to be
automatically applicable. However, business rules are expressed in a markedly different way than business
processes, it can be challenging to integrate them in a model. In this paper, we propose an approach for
expressing business rules in BPMN. The key idea is that business rules are operationalized by BPMN
subprocesses. This method can improve requirements traceability in process design, as well as minimize the
efforts of system changes due to the changes of business rules.
1 INTRODUCTION
The Business Process Modelling Notation (BPMN)
(BPMI.org & OMG, 2006) is a graph-oriented
language for executable business processes, which
has been proposed as the new process modelling
industry standard. A key idea of BPMN is that
process models are composed of activity nodes and
control nodes. Activity nodes denote items of work
composing a process, which are performed by
humans or by software applications. Control nodes
capture the flow of control between activities. In the
BPMN, activity nodes and control nodes can be
connected by means of a flow relation in almost
arbitrary ways.
Business rules are statements which are used to
run the activities of an organization. In a business
system, business rules describe fundamental
constraints and policies for the transactions
conducted by the organization. It is important for
these rules to be represented explicitly, and to be
automatically applicable. However, there is no
representation for state in BPMN. Thus, the
depiction of business rules that rely on state and
transformation laws is unclear (Recker et al., 2006).
In a business process model, business rules can
be used to describe system requirements and are
considered as the most volatile part of a business
system. Their changes bring high impact on the
business processes. Business rules are typically
written informally in natural language, or
alternatively as structured natural language
corresponding to a more formal underlying structure.
Because business rules are expressed in a markedly
different way than business processes, it can be
challenging to integrate them in a model. In BPMN,
the symbol representing event can be used to denote
rule firings. However, it is not easily to verify
whether the business processes satisfy the business
rules.
In this paper, we propose an approach for
expressing business rules in BPMN. The aim is to
improve requirements traceability in process design,
as well as to minimize the efforts of system changes
due to the changes of business rules.
The remainder of this paper is organized as
follows. Section 2 describes the related work.
Section 3 discusses business rules and gives some
examples. Section 4 describes the method for
expressing business rules in BPMN. Section 5
concludes the paper with a summary of the
contributions of this research.
2 RELATED WORK
Although business rules are an important topic and
have been widely discussed in the information
systems development, there has been relatively little
research on them in the requirements engineering.
Leite and Leonardi built the connections between
business rules and the requirements baseline (Leite
266
Peng L. and Li H. (2008).
EXPRESSING BUSINESS RULES IN BPMN.
In Proceedings of the Tenth International Conference on Enterprise Information Systems - ISAS, pages 266-270
DOI: 10.5220/0001700702660270
Copyright
c
SciTePress
and Leonardi, 1998), to analyze changes from the
viewpoint of organizational policies. Rosca et al.
proposed
a modeling framework (Rosca et al., 2002)
capturing the structure of the enterprise, in terms of
which the business rules can be expressed, and
decision-support capabilities for reasoning about and
deriving business rules. Wan-Kadir and
Loucopoulos consider business rules as an integral
part of a software system and its evolution (Wan-
Kadir and Loucopoulos, 2004). They developed the
Business Rule Model to capture and specify business
rules, and the Link Model to relate business rules to
the metamodel level of software design elements.
Alspaugh discussed an approach (Alspaugh, 2006)
for evaluating business rules and scenarios together,
by operationalizing the business rules as scenarios,
mediating their interactions with other scenarios
through co-matching events, and examining their
combination through a consideration of the
occurrences they match.
There has been much research on the use of
business rules in business workflow systems. Rowe
et al. (Rowe et al., 2005) describe two classes of
business workflow systems: Process centric systems
such as BPM and data centric systems. Process
centric workflows use business rules to imperatively
make decisions during the flow. The rules are all
encapsulated in a rules task in the workflow and an
embedded rules engine is used (when invoked) to
process over the current state of the business objects
to see if the conditions of any rules are met and
subsequently execute any resulting action. Data
centric workflows use business rules as filtering
processes within workflows to make decisions about
individual items of data.
3 BUSINESS RULES
Business rules describe policies, procedures and
constraints regarding how an organization conducts
its business. Below are some example business rules.
• BR1: “A bank requires a supervisor’s signature
before cashing a check over $5000.” (Rosca et
al., 2002)
• BR2: “Each withdrawal from savings over five
transactions/month will be charge a fee of $1.00
each.” (Alspaugh, 2006)
• BR3: “A customer’s authorization must be
confirmed before he or she can request a
transaction.” (Alspaugh, 2006)
A business rule can be operationalized by a
process that describes how the rule is followed. For
example, the process operationalizing BR1 is “cash
a check for more than $5000”. This process can be
divided into three tasks: “present a check”, “sign a
check” and “cash a check”, performed by customer,
supervisor and teller, respectively.
The goal of BR2 is to discourage excessive
transfers out of savings accounts. The process
operationalizing BR2 includes the iteration for the
activity “withdrawal from savings”. For the
subsequent activities, two different situations should
be taken into account: If withdrawals from savings
have not exceeded five transactions/month, then
“charge free”. If withdrawals have exceeded five
transactions/month, then the activity “charge a fee of
$1.00 each” will be executed.
BR3 is a general rule. For different business
systems, the operationalization of this rule is
different. For example, in an ATM system, the
subprocess “confirm the customer’s authorization”
includes the activities “insert an ATM card” and
“enter the PIN for the ATM card”. But for a teller
window, the corresponding activities may be “show
the account number” and “show the drivers license”.
In some business systems, operationalizing a
business rule uses the result of operationalizing
another business rule as precondition. Below are two
business rules.
• BR4: “Whenever the stock is below the reorder
point, only good customers will have their order
immediately processed.” (Wan-Kadir and
Loucopoulos, 2004)
• BR5: “Good customers of a product are defined
as those who have bought at least twice the
average sales per customer over the last 12
months.” (Wan-Kadir and Loucopoulos, 2004)
The result of operationalizing BR5 may be “He
(She) belongs to good customers.” The
operationalization of BR4 uses this result as the
precondition for the activity “process the customer’s
order”.
Because business rules can be operationalized by
processes, it is possible to graphically express
business rules in BPMN.
4 EXPRESSING BUSINESS
RULES IN BPMN
The BPMN provides a graphical notation for
business process modelling. It defines a BPD
(Business Process Diagram) incorporating constructs
to business process modelling. In this section, the
operationalization of business rules described in
section 3 will be expressed by using BPMN
elements.
EXPRESSING BUSINESS RULES IN BPMN
267
Figure 1: Operationalization of BR1.
4.1 Overview of BPMN Elements
A core subset of BPMN elements comprises event,
activity, gateway, sequence flow and message flow
(Dijkman et al., 2007).
An event may signal the start of a process (start
event), the end of a process (end event), and may
also occur during the process (intermediate event). A
timer event indicates a specific time-date being
reached.
An activity can be a task or a subprocess. A task
is an atomic activity and stands for work to be
performed within a process. A subprocess is a
compound activity in that it is defined as a flow of
other activities. There are embedded subprocesses
and independent subprocesses. The difference is that
an embedded subprocess is part of the process while
an independent subprocess can be called by different
processes.
A gateway is a routing construct used to control
the divergence and convergence of sequence flow.
There are: parallel fork gateways (AND-split) for
creating concurrent sequence flows, parallel join
gateways (AND-join) for synchronizing concurrent
sequence flows, data/event-based XOR decision
gateways for selecting one out of a set of mutually
exclusive alternative sequence flows where the
choice is based on either the process data (data-
based, i.e. XOR-split) or external event (event-based,
i.e. deferred choice), and XOR merge gateways (XOR
Figure 2: Operationalization of BR2.
-join) for joining a set of mutually exclusive
alternative sequence flows into one sequence flow.
4.2 Expressing Business Rules using
BPMN Elements
A business rule can be operationalized by a
subprocess. A subprocess may be viewed as an
independent BPMN process, which encapsulates
required BPMN elements.
The examples of business rules described in
section 3 are operationalized by BPMN
subprocesses and in Figure 1 to Figure 4 illustrated.
Figure 3: Operationalization of BR3.
ICEIS 2008 - International Conference on Enterprise Information Systems
268
Figure 4: Operationalization of BR4 and BR5
Figure 1 shows the BPMN specification of the
subprocess “cash a check for more than $5000”,
which satisfies the business rule BR1. In Figure 1,
two grouping operators are used to cluster activities.
One pool contains all activities enacted by a given
process participant. Within a pool, BPMN lanes are
used to distinguish different user types (customer,
teller and supervisor) that interact with a specific
peer.
Figure 2 depicts withdrawal process following
BR2. This subprocess includes iteration.
The Business rule BR3 can be decomposed into
two sub-rules for ATMs and for teller windows,
respectively. Each subprocess follows a sub-rule and
has a list of parameters, and each list is different.
Therefore, the subprocess operationalizing BR3
(depicted in Figure 3) can be a parameterized
process.
Figure 4 describes the relation between two
business rules, BR5 precedes BR4.
A business system may include a set of business
rules. Each rule is triggered by an event. A business
rule can be a simple rule or a multiple rule. A
multiple rule consists of a set of simple rules. A
simple rule is triggered by a simple event, while a
multiple rule can be triggered by a compound event.
According to the relations between simple rules
within a multiple rule, multiple rules can be
categorized as sequence rules (R1 precedes R2),
parallel rules, merged rules, exclusive rules and
embedded rules. A multiple rule can be
operationalized by a complex BPMN subprocess.
4.3 Evaluation
Business rules describe system requirements.
Expressing business rules by using BPMN
subprocesses, we can easily verify whether the
developed business process model satisfies system
requirements. This method can improve
requirements traceability in process design.
Because business rules are encapsulated in
subprocesses, changes of business rules can be
propagated in a regulated manner to the process
model. A change of a business rule propagates only
within the corresponding subprocess
operationalizing the business rule, without affecting
the global structure of the business process. On the
other hand, business rules are more likely to be
reusable.
This method doesn’t change the basic shape of
the defined graphical elements and markers of
BPMN, and needn’t define new constructs.
Therefore, business rules can be translated into other
languages such as BPEL.
5 CONCLUSIONS
In this paper, we proposed a method for expressing
business rules in BPMN. Business rules written in
nature language are operationalized by BPMN
subprocesses. The description of business rules
possesses a visual graphic notation. On the other
hand, verifying whether the developed business
process model satisfies business rules becomes
easier. This method can improve requirements
traceability in process design. By using
encapsulating technique, the efforts of system
changes due to the changes of business rules can be
minimized. This method doesn’t change the basic
shape of the defined graphical elements and markers
of BPMN, and needn’t define new constructs.
Therefore, business rules can be translated into other
languages such as BPEL. Furthermore, in a business
process model, business rules are more likely to be
reusable.
EXPRESSING BUSINESS RULES IN BPMN
269
REFERENCES
Alspaugh, T.A., 2006. Scenarios, Business Rules, and
Matching. ISR Technical Report #UCI-ISR-06-5.
BPMI.org and OMG, 2006. Business Process Modeling
Notation Specification. Final Adopted Specification.
Retrieved February 20, 2006. From
http://www.bpmn.org.
Dijkman, R.M., Dumas, M., Ouyang, C., 2007. Formal
Semantics and Analysis of BPMN Process Models.
Green, P., Rosemann, M., 2000. Integrated Process
Modeling. An Ontological Evaluation. In Information
Systems. 25 (2), 73-87.
Green, P., Rosemann, M., 2004. Applying Ontologies to
Business and Systems Modeling Techniques and
Perspectives: Lessons Learned. In Journal of
Database Management. 15 (2), 105-117.
Kiepuszewski, B., ter Hofstede, A.H.M., van der Aalst.,
W.M.P., 2003. Fundamentals of control flow in
workflows. In Acta Informatica. 39(3):143–209.
Leite, J.C.S.d.P., Leonardi, M.C., 1998. Business rules as
organizational policies. In Ninth International
Workshop on Software Specification and Design
(IWSSD’98), pages 68–76.
Recker, J., Indulska, M., Rosemann, M., Green, P., 2005.
Do Process Modelling Techniques Get Better? A
Comparative Ontological Analysis of BPMN. In
Proceedings of the 16th Australasian Conference on
Information Systems (Campbell, B., J. Underwood and
D. Bunker, Eds.), Australasian Chapter of the
Association for Information Systems, Sydney,
Australia.
Recker, J., Indulska, M., Rosemann, M., Green, P., 2006.
How Good is BPMN Really? Insights from Theory
and Practice. In Ljungberg, J. and Andersson, M., Eds.
Proceedings 14th European Conference on
Information Systems, Goeteborg, Sweden.
Rosca, D., Greenspan, S., C. Wild, C., 2002. Enterprise
modeling and decision-support for automating the
business rules lifecycle. In Automated Software Engg.,
9(4):361–404.
Rosemann, M., Green, P., Indulska, M., 2005. A
Procedural Model for Ontological Analyses. In:
Information Systems Foundations: Constructing and
Criticising (Hart, D. and S. Gregor, Eds.), pp.153-
163, ANU E Press, Canberra, Australia.
Rowe, A., Stephens, S., Guo, Y., 2005. The use of
Business Rules with Workflow Systems. Rule
Languages for Interoperability, W3C.
van der Aalst, W.M.P., ter Hofstede, A.H.M.,
Kiepuszewski, B., Barros, A.P., 2003. Workflow
Patterns. In Distributed and Parallel Databases,
14(1):5–51.
White, S., 2004. Process Modeling Notations and
Workflow Patterns. In Workflow Handbook 2004,
pages 265–294.
Wohed, P., van der Aalst, W.M.P., Dumas, M., ter
Hofstede, A.H.M., 2005. Pattern-based Analysis of
BPMN - An extensive evaluation of the Control-flow,
the Data and the Resource Perspectives. In BPM
Center Report, No. BPM-05-26. BPMcenter.org.
Wohed, P., van der Aalst, W.M.P., Dumas, M., ter
Hofstede, A.H.M. Russell, N., 2006. On the Suitability
of BPMN for Business Process Modelling. In Dustdar,
S., Fiadeiro, J.L., Sheth, A., Eds. Proceedings 4th
International Conference on Business Process, pp.
161-176, Vienna, Austria.
ICEIS 2008 - International Conference on Enterprise Information Systems
270