Exploring Blockchain Technology to Improve Multi-party Relationship
in Business Process Management Systems
Paulo Henrique Alves
1
, Ronnie Paskin
1
, Isabella Frajhof
1
, Yang Ricardo Miranda
1
,
Jo
˜
ao Gabriel Jardim
1
, Jose Jorge Brum Cardoso
2
, Eduardo Henrique Haddad Tress
2
,
Rog
´
erio Ferreira da Cunha
2
, Rafael Nasser
1
and Gustavo Robichez
1
1
Software Engineering Laboratory, Department of Informatics, Pontificial University Catholic of Rio de Janeiro, RJ, Brazil
2
Petrobras, Rio de Janeiro, Brazil
{jjbrum, eduardotress, roger}@petrobras.com.br
Keywords:
Business Process Management System, Workflow, Blockchain, Smart Contract, Architecture.
Abstract:
Business Process Management Systems (BMPSs) are often used to track activities, identify inefficiencies, and
streamline the workflow. Typically, BPMSs are used by a single organization for internal users and processes
through a trusted central system. However, scenarios involving multiple parties present a new challenge: to
ensure the reliability of registered information and strict adherence to business rules for all participants without
a central authority. Therefore, we explored the use of blockchain technology in association with a BPMS to
create a Distributed Business Process System (dBPMS). This integration can fulfill the requirements above
mentioned, creating tamper-proof registries, allowing reliable self-execution through smart contracts, within
a trusted environment for all parties, without the need for inter-party trust. The proposed solution provides a
workflow encompassing all activities and parties in an efficient ecosystem.
1 INTRODUCTION
As a basic process modelling approach, workflows
usually focus on the sequence of events. Thus, Busi-
ness Process Management Systems (BPMSs) (Kara-
giannis, 1995) play a critical role to describe and track
activities in the organizational environment. How-
ever, it loses the connection between the model and
the developed platform as well as ignores the informa-
tional perspective (Hull et al., 2016). In order to im-
prove the big picture of organizational business pro-
cesses and the information traceability during the pro-
cess execution, we have integrated to the BPMS the
blockchain technology (BCT) in order to: (i) keep the
historical records; (ii) guarantee that data is tamper-
proof, and (iii) ensure that the processes are running
precisely as planned according to the deal made be-
tween the involved parties.
In this sense, mapping the business process is cru-
cial to guarantee the orchestration between business
goals and their execution. Therefore, it is vital to
check, and even redesign, the processes regularly, due
to the constant need to adapt businesses workflows
to attend to new demands. Furthermore, this orches-
tration often involves external entities (other compa-
nies), such as supply providers and regulatory entities.
Therefore, to ensure the reliability of registered infor-
mation and strict adherence to business rules for all
participants it is crucial to use proper technology.
Blockchain technology presents many features to
support such BPMS requirements, such as resources
to deal with untrusted parties, tamper-proofing and
traceability of information. Furthermore, the use
of blockchain technology to distribute BPMS is a
novel approach never presented before. Moreover,
Blockchain Smart Contracts (BSCs) play a crucial
role in this environment, enabling self-executed con-
tracts that use programming language code, which do
not depend on parties will to be enforced. Once de-
ployed, the smart contract code cannot be undone, an
effect derived from the immutability of BSC.
Usually, blockchain enterprise solutions are ex-
ecuted in a permissioned (i.e. private) blockchain,
where the information is shared with a particular
group of stakeholders, which is a specific feature of
this kind of blockchain. Unlike permissionless (i.e.
public) blockchains, the permissioned blockchains al-
low faster and cheaper transactions because of their
limited number of participants, allowing parties to
Alves, P., Paskin, R., Frajhof, I., Miranda, Y., Jardim, J., Cardoso, J., Tress, E., Ferreira da Cunha, R., Nasser, R. and Robichez, G.
Exploring Blockchain Technology to Improve Multi-party Relationship in Business Process Management Systems.
DOI: 10.5220/0009565108170825
In Proceedings of the 22nd International Conference on Enterprise Information Systems (ICEIS 2020) - Volume 2, pages 817-825
ISBN: 978-989-758-423-7
Copyright
c
2020 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
817
rapidly achieve consensus in order to approve trans-
actions.
In this context, this paper proposes an exploratory
study to analyze and create a new solution using
BPMS and blockchain technology in an integrated
manner. To implement such solution, twelve different
workflow tools were identified and analyzed, whereas
only one was selected to develop a blockchain inte-
grated solution enforced by smart contracts. To ana-
lyze and demonstrate the benefits of this solution, we
have exemplified the usage of this architecture, apply-
ing it to a real processes at an Oil and Gas company.
The paper is structured as follows. Section 2 fo-
cuses on the background, while Section 3 discusses
related work. Section 4 presents the comparison of
BPMS existing projects and Section 5 presents the
proposed solution for distributed BPMS (dBPMS),
and Section 6 shows an application scenario. Finally,
Section 7 presents the conclusions and future perspec-
tives.
2 BACKGROUND
This section describes the main concepts used in this
paper, such as Business Process Management suits
and blockchain technology. Both concepts are fun-
damental to understand how they are used together to
create a dBPMS, and the benefits of this solution.
2.1 Business Process Management
Systems
In general, Business Process Management orchestrate
the organizational resources, informational structures
and business goals (Hull et al., 2016). Moreover,
BPM regulate inter-organizational relationships, and
guarantee the execution of tasks and decisions that
yield an outcome that adds value for an enterprise
(Dumas et al., 2013).
Workflows are typically applied for process
modelling approach and business coordination (van
Der Aalst, 2009). They usually are focused on con-
trol flows; however, in these cases, the informational
perspective is ignored. As a result, instead of improv-
ing operational innovation, business agents frequently
focus on what should be done as a process, instead
of aiming at issues such as the data security, trans-
parency, and data sharing. (Bhattacharya et al., 2007).
Based on this perspective, many suites were devel-
oped to deliver resources to improve business process
management, such as presented in (Abdelgader et al.,
2013; Van Der Aalst and Ter Hofstede, 2005; Cha-
banoles and Ozil, 2015; Rademakers, 2012; Cumber-
lidge, 2007; Fernandez, 2013).
Business Process Management Systems are soft-
ware tools used to allow managing business process
life cycle (Meidan et al., 2017). Moreover, they are
also used as a unified solution to model, execute and
monitor business processes. However, each solution
present different features, and deciding which one is
appropriate to a particular situation can be challeng-
ing. Besides, BPMS often proposes a centralized so-
lution and no features to deal with the lack of trust
and transparency between different parties in a spe-
cific environment.
Therefore, in the following sections, we propose a
new BPMS model to distribute the information with-
out a central authority, aiming not only to improve
the execution and monitoring processes, but also to
store tamper-proof information. This new approach
also improves the process’ data and transparency to
enhance trust for involved parties.
2.2 Blockchain Technology
The blockchain technology was introduced in the Bit-
coin white paper (Nakamoto, 2009) as a technol-
ogy to ensure transparency of the registered data,
dismisses inter-party trust, and guarantee data im-
mutability. Consensus mechanism play an essential
role on the validation of the registered transactions,
which influences on energy consumption and network
performance. Later, other kinds of distributed solu-
tions used this technology to enjoy all of blockchain
features, such as BSC, for instance.
Furthermore, there are two different types of
blockchain: (i) permissionless, and (ii) permis-
sioned blockchains (Peters and Panayi, 2016) (Alves
et al., 2018). The former is the original purposed
blockchain, with no imposed limitation of the agents
that can access the network or its content, maintain-
ing public all registered data, which is distributed
to the networks’ node. Conversely, permissionless
blockchains only allow information to be shared with
selected entities, in which access to data can either
be public or private to the participants, according to
previous combination. The permissioned blockchains
usually presents better performance than the public
ones due to the smaller number of participants in-
volved, requiring less effort on achieving a consensus.
Based on the blockchain technology, smart con-
tracts are a representation of a contract, roles, agree-
ments and obligations written on programming lan-
guage, which are coded throughout simple if-then-
else logic (Szabo, 1994) in a distributed network.
It enables auto-execution of the negotiated obliga-
ICEIS 2020 - 22nd International Conference on Enterprise Information Systems
818
tions, without the need of a central authority to en-
force the agreed terms; oracles present an impor-
tant role in this case (Adler et al., 2018). Thus, un-
trusted relationships can rely on the blockchain en-
vironment to guarantee transparency between partici-
pants, self-execution of the agreed terms and reliabil-
ity of the registered data, due to its consensus mecha-
nism. Also, trust is reinforced since data is shared be-
tween the network participants and cannot be altered
by them. Besides, smart contract platforms allows
the development of distributed applications (dApp),
which are a kind of internet application where the
backend runs on distributed, or decentralized, peer-
to-peer network. Also, no single participant has com-
plete control over the dApp on the network (Prusty,
2017).
Therefore, in the following sections we explain
our Distributed Business Process Management Sys-
tem (dBPMS) proposal.
3 RELATED WORK
This section presents some related works regarding
BPM and blockchain technology. They were cate-
gorized as follow: (i) blockchain challenges and op-
portunities in the BPM context; (ii) Business Process
Modeling Notation Systems integration with BCT
to redesign governance; (iii) BPM traceability using
blockchain, (iv) BPMS tools, and (v) BPMN usage
for BSC modelling and execution.
The authors in (Mendling et al., 2018) present
some challenges and opportunities for blockchain ab-
stractions and heuristics development, presenting a
promising direction from BPMN choreography dia-
grams and data-aware workflows. The combination
of these two perspectives, data and process, seems
to be interesting for the top-down design of multi-
organizational processes. Moreover, as blockchain
technology, among others, delivers immutability, data
sharing management (permissioned blockchains) and
no central authority, the authors cited the impor-
tance of process redesign to consider all these fea-
tures while developing a blockchain-based solution.
However, (Mendling et al., 2018) only highlights the
discussion, and does not present any proposals.
Moreover, the authors in (Viriyasitavat et al.,
2018) argues that the main bottleneck in BPM sys-
tems is the trust management, lack of transparency
and evaluation. They also present three main benefits
of the use blockchain technology application in BPM:
(i) trust establishment by consensus mechanism and
transparency; (ii) costs reduction due to the absence
of a central authority, and (iii) transaction automation
by real-time update and verification of the quality of
service. They developed a BPM blockchain-based ap-
proach where a Solidity smart contract represents the
business processes. Although the authors created a
framework from this approach, it does not guarantee
that the process will be executed as planned in the
modelling phase.
Some approaches (Garc
´
ıa-Ba
˜
nuelos et al., 2017;
L
´
opez-Pintado et al., 2019; Weber et al., 2016; Di Ci-
ccio et al., 2019), have proposed frameworks and
tools to translate BPMN in a BSC. For instance,
Caterpillar (L
´
opez-Pintado et al., 2019) and Lorikeet
(Di Ciccio et al., 2019) are tools that are used to
model business process and to automatically gener-
ate an Ethereum smart contract structure. Further-
more, the authors in (Garc
´
ıa-Ba
˜
nuelos et al., 2017)
and (Di Ciccio et al., 2019) apply the same approach
using Petri net (Murata, 1989) to translate the gen-
erated BPMN process model. Although those works
have developed an Ethereum smart contract in com-
pliance with the BPMN process model, the authors
do not present a relation between the modelled pro-
cess and the smart contract after its first execution. In
other words, once created, the smart contract is not
affected by the model anymore. Unlike their solu-
tion, we developed a persistence mode using a private
blockchain; hence, the modelled process will always
generate data persistence on the blockchain.
Furthermore, the authors in (Meidan et al., 2017)
and (Garc
ˆ
es et al., 2009) presents the result of a con-
ducted survey which organizations evaluated the ben-
efits of open source BPMS systems. The former pa-
per presents a detailed description of each platform,
describing their modelling, design, deployment, exe-
cution and monitoring. The latter presents a compar-
ative framework based on the Workflow Management
Coalition. Although the authors proposes a general
feature evaluation, many essential aspects were not
considered by them, such as process interoperability,
document management and process validation, for in-
stance. Furthermore, both surveys indicates the im-
portance of quality and optimization improvement in
the BPMS environment.
Finally, Prybila et al. (Prybila et al., 2017) and
Meroni et al. (Meroni et al., 2019) present the
blockchain technology as a provider of BPMS decen-
tralization and BPM data distribution, respectively.
The former presents choreographies when the con-
trol over process instance is shared between different
companies or organizations. Moreover, the authors
developed a runtime verification for choreographies
by the usage of the Bitcoin blockchain. However,
the Bitcoin blockchain presents limited features in
comparison with smart contract blockchain platforms;
Exploring Blockchain Technology to Improve Multi-party Relationship in Business Process Management Systems
819
thus, the authors lost the compliance checker and the
self-executed features derived from the blockchain
smart contract. In its turn, the latter presents an
Ethereum-based solution to store documents and IoT
data on the blockchain to improve trust in monitoring
artifacts (physical objects) in a multi-party business
process. However, the authors did not approach the
importance of assuring business data privacy policy
in a permissionless blockchain.
Thus, many different approaches are proposing
solutions related to the usage of blockchain and BPM
to improve transparency, data availability, and to help
with the mapping of the process and its functions on
smart contracts. However, a solution presenting a dis-
tributed business process management system is still
missing. In this sense, we identified this opportunity
and developed an approach where all the information
is legitimately stored. Moreover, we present an appli-
cation example of our solution in order to demonstrate
precisely its execution in the Oil and Gas scenario.
4 BPM WORKFLOW
PLATFORMS COMPARISON
This section describes the evaluated BPMSs and why
we selected one of the investigated workflow tools
to develop the solution to integrate it with a private
blockchain. For this task, we analyzed twelve dif-
ferent platforms, among open-source and commercial
solutions, looking for the following requirements: (i)
business process modeling tool; (ii) workflow execu-
tion with forms support; (iii) API availability; (iv)
open-source project and (v) programming language
for open-source projects,
First, the modeling tool must understand and or-
chestrate business processes; this is the initial step to-
wards the construction of a dBPMS. Then, in order to
execute the modeled processes, a workflow execution
in compliance with the modeled processes is needed;
besides, this workflow needs to support manners to
add data directly on the platform during its processes
execution. Next, the API is required to send infor-
mation to a private blockchain. In this manner, we
selected a set of platforms presented on our related
work and analyzed them in order to make a well-
based decision regarding which platform we should
use to develop our architecture. Moreover, open-
source projects have increasingly presented a grow-
ing impact on the software industry and have often
become primary competitors to commercial software
(Fitzgerald, 2006; Bonaccorsi and Rossi, 2003).
Table 1 presents a comparison between all the
analysed platforms, i.e. commercial licenses and
open-source. All platforms presented an API REST
to integrate services and systems to their solutions.
Moreover, five of seven open-source projects pre-
sented all the five required features (Farah et al.,
2014). As a commercial solution, Pipefy, Wrike,
Monday.com, Kissflow, and Integrity do not present
details of their solution and the language code. Thus,
we decided to remove these projects from our set of
possibilities.
Table 1: BPM Systems Evaluation.
Tool/ Feature BPMN Forms OpenSource
Pipefy NO NO NO
Wrike NO YES NO
Monday.com NO YES NO
Kissflow YES YES NO
Integrity YES NO NO
Joget NO YES YES
YAWL NO YES YES
Bonita YES YES YES
ProcessMaker YES YES YES
Activiti YES YES YES
jBPM YES YES YES
Camunda YES YES YES
We present below an overview of the five projects
that fulfilled our ve requirements above-mentioned,
describing more details of each open-source project.
Bonita delivers BPM automation and application
projects, and is composed of two parts: (i) BPM Stu-
dio and (ii) BPM Platform. The BPM Studio is a
graphical interface for process and forms develop-
ment; whereas the BPM Platform handles business
process execution and Bonita Portal. The latter allows
visualizing tasks and tracking user activity.
ProcessMaker is based on three main compo-
nents: (i) business process design; (ii) workflow en-
gine, and (iii) adapters. The BP design presents tools
to map processes and business rules. Moreover, it
also allows the creation of forms and the attachment
of documents as input to the process. The engine is
used to automate processes. Finally, the adapters are
a suite of connectors to integrating external solutions.
Activiti, as all the open-sources projects pre-
sented, Activity allows users to design BPMN 2.0
environments. The process engine was developed in
Java, and distributed under the Apache license. It is
composed of a modeler, and Activiti engine to execute
the modeled processes.
jBPM is also an open-source project written in
Java. It allows the design, execution and monitoring
of the business process life cycle. Moreover, it also al-
lows the user to model business process throughout a
web-based interface. Remote APIs and tasks services
are also available.
ICEIS 2020 - 22nd International Conference on Enterprise Information Systems
820
Camunda delivers process automation by a BPM
java-based framework, and consists of two parts: (i)
Camunda Modeler and (ii) Camunda Engine. The for-
mer is a web-based application to model business pro-
cesses. The latter is an engine composed of the fol-
lowing components: Cockpit, Tasklist, Workflow En-
gine, and Decision Engine, which are used to execute
and monitor processes.
Although five out of seven open-source projects
attended to our requirements, we had to choose only
one of them, even though we acknowledge that any
of the other four projects could also be used. In this
sense, we have chosen Camunda, because this project
presents an architecture that supports process appli-
cation event listeners, classified as (i) task event lis-
tener and (ii) execution event listeners. The former
allows reacting to task events, such as creation, as-
signment and conclusion, while the latter allows re-
acting to trigger events at the same time that a move
is executed further on the diagram.
Furthermore, the Camunda BPMN model API en-
ables the extraction of data from existing process def-
inition. Likewise, Camunda Process Engine guar-
antees that Events are delegated to the right process
application. The combination of these features cre-
ated an adequate environment to integrate Camunda
BMPS with blockchain technology, allowing for the
registration of immutable data, high data availability
and permissioned access between organizations. In
the next sections, we explain in details the usage of
Camunda and its architecture when integrated with a
private blockchain, thus creating a dBPMS.
5 PROPOSED SOLUTION
This section describes the main concepts used to de-
velop the dBPMS architecture, and how such archi-
tecture will work in the business process manage-
ment environment with the integration of blockchain
technology, thus, guaranteeing transparency, tamper-
proof information and self-executed smart contracts.
This kind of architecture, used to store rules, and cur-
rent state of tasks in the blockchain trough BSC, was
also proposed in (Smirnov et al., 2019).
5.1 Camunda BPM
Camunda BPM is a Java-based open-source platform
for Business Process Management automation. Its
stack is composed of the following applications:
BPMN Workflow Engine: Used to execute
(micro-)service orchestration and human task
management based on the BPMN model;
Modeler: Used to create BPMN process diagrams
and DMN decision tables and deploy these work-
flows to the Camunda Engines;
Tasklist: Used to perform human task manage-
ment that allows users to work on assigned tasks,
such as form filling;
Cockpit: Used to monitor workflows and deci-
sions in production to identify, analyse and solve
technical problems.
Moreover, Camunda BPM also offers a REST API
to interact with the engines and allows the integration
with external applications. Besides, in order to han-
dle the workflow execution, Camunda BPM offers the
possibilities to write Delegation Code, a Java Code to
execute external applications, scripts or evaluate ex-
pressions when certain events occur during process
execution by the Execution Listener. It can attach
any event in the normal token flow, for instance, the
start and end of a process instance, activity, gateway
or event.
The Execution Listener is an exter-
nal Java-class that should implement the
org.camunda.bpm.engine.delegate.ExecutionListener
interface. When the process, event, gateway or
activity occurs, the notify method notifies the lis-
tener implementation to store the information in
the blockchain. It allows variables manipulation
and log creations of all completed steps by process
instances; thus, the listener implementation can call
a blockchain Hyperledger Fabric node and persists
JSON objects with all the variables of any process.
Therefore, the listener can make requests to external
systems and manipulate the variables within the
BPMN elements.
5.2 Hyperledger Integration
The integration of the proposed BPMN solution with
Hyperledger Fabric is rather simple, but still powerful
enough to bring forward the benefits of a blockchain
distributed system.
The Hyperledger Fabric environment consists of
permissioned distributed nodes that execute smart
contracts. These contracts are specifically built to reg-
ister and manage information created by the BPMN
solution. The BPMN system communicates with the
blockchain nodes using Javascript clients and the ap-
propriate Hyperledger SDKs. These clients act as in-
termediaries to the blockchain network to allow inter-
actions with the smart contracts. All execution and
data generated from these interactions are distributed
to the blockchain network; hence, the stored data be-
comes immutable and auditable.
Exploring Blockchain Technology to Improve Multi-party Relationship in Business Process Management Systems
821
Moreover, Hyperledger Fabric is a permissioned
blockchain where smart contracts are executed on
controlled and access-restricted communication chan-
nels. In other words, only specific and authorized par-
ticipants can interact and access transactions on a par-
ticular channel. Thus, these channels can be used to
effectively maintain private information between par-
ticipants of the system, allowing for data governance
and provenance.
5.3 dBPMS Proposal
Business Process Management Systems (BPMSs) are
sophisticated tools that are able to model, execute, co-
ordinate and monitor business processes. BPMS aims
to handle the relationship between one or more par-
ties as a centralized system. However, BPMSs do
not provide any external guarantee of data integrity
or immutable log record. All BPMS listed (see sec-
tion 4, Table 1) used a traditional centralized database
to store the transmitted information. Therefore, we
propose a blockchain-based solution applying critical
blockchain features.
The integration between Camunda BPMS and Hy-
perledger private blockchain result in a trusted and
distributed BPMS. Figure 1 depicts the proposed so-
lution. Initially, the Camunda Modeler is used to de-
sign the BPMN 2.0 business model in a web-based
interface, available at any web browser. Then, the
Camunda BPM platform orchestrate and executes the
designed processes.
Furthermore, the BPM platform is composed of
two main steps. The first step aims to generate tasks
and assign them to users. The second aims to exe-
cute tasks according to the designed business process
rules. The transmitted information is stored in a tra-
ditional database. Camunda supports MySQL, Mari-
aDB, Oracle, IBM DB2, PostgreSQL, Microsoft SQL
Server and H2 databases.
Camunda BPM developed a delegation code that
allows for the execution of external Java code, scripts
or the evaluation of expressions during the process ex-
ecution. There are four different types of delegation
code: (i) Execution Listeners, that can be attached to
any event within the normal token flow; (ii) Java Dele-
gates, which can be attached to a BPMN Service Task;
(iii) Delegate Variable Mapping, that can be attached
to a Call Activity, and (iv) Task Listeners which can
be attached to events within the user task life cycle.
Thus, we applied the Execution Listeners to allow
the blockchain data persistence. Camunda Listener
is responsible for storing sensitive business informa-
tion on the Hyperledger blockchain. This ensures the
trustworthiness of registered information and strict
Figure 1: Distributed Business Process System.
adherence to business rules for all participants. Since
Hyperledger creates and executes blockchain smart
contracts in the distributed environment, there is no
need of a central authority to validate the registered
transactions on the blockchain.
Figure 2 depicts our Hyperledger architecture.
There are three different nodes types on our Hyper-
ledger Fabric network. The Orderer nodes maintain
consensus of all information in the system and they
are the pillar to the entire blockchain system. They
are responsible for organizing data creation and shar-
ing throughout the network. On the other hand, Peer
nodes maintain and execute smart contracts. They are
oriented by the Orderes to maintain consensus and
consistency of contracts data.
Figure 2: Hyperledger Architecture.
Our application uses smart contracts, that run on
these Peers, to register BPMS log data. Moreover,
Client nodes act as interfaces between the blockchain
ICEIS 2020 - 22nd International Conference on Enterprise Information Systems
822
Figure 3: Simplified Geophysics Service Solicitation Process.
and external systems. They are used in our solu-
tion to provide the link between the BPMS and the
blockchain. Clients interact directly with nodes to
consult, call and create smart contracts. All other
nodes, i.e., Orderers and Peers, can communicate
freely between themselves.
Furthermore, Hyperledger Fabric implements the
concept of communication channels. These channels
restrict smart contracts execution and data access to
specific Peer nodes. In our application, this is used
to maintain private information between participants
that need to interact, but do not want to expose all data
transacted to everyone in the network.
Hyperledger Fabric also allows simple integration
with various modern programming languages. The
used integration consists of an interaction between a
blockchain Peer node (through a Client node) that val-
idates transactions and creates smart contract calls,
and external applications. In this manner, the Ca-
munda Listener is able to execute smart contracts
commands in the Hyperledger Fabric network, per-
sisting, consulting and changing data. The blockchain
smart contract ensure self-execution of the agreed
obligation embedded on code. Moreover, this kind
of platform, private blockchains, also allows data
sharing, privacy management, and fast transactions,
which is often vital to the business. A positive aspect
of this application is that polices related to which in-
formation should, or not, be stored on the blockchain
can be defined by each application context, following
the company’s security guidelines.
Moreover, in order to integrate other BPMSs, we
also have saved the information metadata generated
from the BPMS process execution in the blockchain,
the class HyperledgerLoggerListener.kt shows how it
was made
1
. This metadata allows further different
1
All the source code changed and created from scratch
BPMSs integration, since they will be able to query
the blockchain data and recreate the objects used in a
Camunda BPM Platform.
In summary, the decentralized backend and the
data immutability are important elements to assure
high availability, secure and transparent systems.
Combined with blockchain smart contracts, such sys-
tems are able to provide the ecosystem with these
characteristics.
6 USE CASE: GEOPHYSICS DATA
ACQUISITION PROCESS
The proposed example scenario was developed on the
Oil and Gas context, specifically the geophysics data
acquisition, which is a familiar scenario in this sector.
In order to evaluate the pros and cons to explore a
specific block, the geophysics department is requested
to evaluate the project availability.
The simplified scenario involves three actors: (i)
client, who is asking for the geophysics data; (ii) geo-
physics department, and (iii) the client purchasing de-
partment. The client and its purchasing department
are untrusted external entities, so all parties actions
need to be transparent, and all exchanged information
must be immutable and available for auditing.
To attend to these demands, the Geophysics De-
partment developed a standard workflow to deal with
external data requisition that guarantee data reliability
of registered information. Figure 3 depicts the sim-
plified business process created in Camunda Modeler.
The Camunda Tasklist was used to execute the mod-
elled process and allow users to perform their actions,
in this project are available in our repository. Repository
Link: shorturl.at/etyC1 (visited on 18/03/2020).
Exploring Blockchain Technology to Improve Multi-party Relationship in Business Process Management Systems
823
such as fill up the forms and contracts.
As presented in Figure 3, the process starts when
a client request geophysics data, by filling up a form
with a detailed description of the wanted data. Within
seven days, the Geophysics Department must evaluate
such request and present in a workshop their solutions
to acquire the data. After the presentation, the client
has to fill up the acceptance form with the selected so-
lution and confirm their interest in pursuing the acqui-
sition data. Then, the Geophysics Department creates
a service contract and send it to the client purchasing
department. If all clauses comply with the requested
service, a ballot is started to get the acceptance of the
managers. Next, the ballot evaluation process is exe-
cuted by a simple voting smart contract system in two
weeks. If the managers decide to accept the contract,
the process will end. Otherwise, they must send the
rejection notes to the Geophysics Department to gen-
erate a new contract.
All the process information, i.e., forms, contracts,
and acceptance letters, were stored on the blockchain
in an encrypted manner, using many Hyperledger
Fabric nodes, some inside the organization, and oth-
ers outside, in the cloud. This procedure ensures data
transparency and auditability. Moreover, in the Cock-
pit, managers are able to monitor and follow the pro-
cess anytime.
Therefore, the developed scenario presents the
use of the proposed solution from modelling a pro-
cess to executing and storing the process data on the
blockchain. Any department inside the organization
can use the dBPMS solution, and more parties can be
added in this process, including external ones, with no
need to implement changes to the proposed architec-
ture. Furthermore, all data transmitted and stored are
immutable and available for the selected participants.
This is possible due to the permissioned blockchain
architecture.
7 CONCLUSION AND FUTURE
WORK
This paper proposes an approach to distributed BPMS
data through the use of blockchain technology to
improve multiple parties process orchestration, pro-
cess transparency, and allow tamper-proof registries.
Moreover, the proposed architecture also ensures the
reliability of business process information. In order
to select one BPMS to develop our solution, we an-
alyzed the BPMS state of art and selected the most
appropriate solution, according to our goals.
The main contributions of this research are: (i)
the BPM Systems evaluation, where we listed com-
mercial and open-source platforms, and (ii) the pro-
posal of a Distributed Business Process Management
System (dBPMS) to deliver blockhain features to the
business process management environment. The for-
mer is described in detail and an analysis of the core
business of each application is presented. The latter is
also described and exemplified by a case study in the
context of the Oil and Gas industry, specifically, the
geophysics service data acquisition process.
As future work, we aim to develop a middle in-
terface layer between the Listener and the private
blockchain to allow different blockchain-base solu-
tion, instead of a specific one. Although the pre-
sented work allows the storage of information on the
blockchain, an interesting improvement would be the
other way around, where the BPMS request informa-
tion from the blockchain to rebuild the previously ex-
ecuted processes..
Another future work is related to the development
of a data visualization tool to apply process min-
ing techniques to improve the process performance.
Moreover, despite the model design, new modelling
entities considering the blockchain features could be
developed to improve the BPMN representation.
REFERENCES
Abdelgader, F. M. Z., Dawood, O. O. S., and Mustafa, M.
M. E. (2013). Comparison of the workflow manage-
ment systems bizagi, processmaker, and joget. In The
International Arab Conference on Information Tech-
nology (ACIT), Sudan University of Science and Tech-
nology, Khartoum, Sudan.
Adler, J., Berryhill, R., Veneris, A., Poulos, Z., Veira,
N., and Kastania, A. (2018). Astraea: A decen-
tralized blockchain oracle. In 2018 IEEE Interna-
tional Conference on Internet of Things (iThings) and
IEEE Green Computing and Communications (Green-
Com) and IEEE Cyber, Physical and Social Comput-
ing (CPSCom) and IEEE Smart Data (SmartData),
pages 1145–1152. IEEE.
Alves, P., Laigner, R., Nasser, R., Robichez, G., Lopes,
H., and Kalinowski, M. (2018). Desmistificando
blockchain: Conceitos e aplicac¸
˜
oes. Computac¸
˜
ao e
Sociedade. Rio de Janeiro: Sociedade Brasileira de
Computac¸
˜
ao, pages 1–24.
Bhattacharya, K., Gerede, C., Hull, R., Liu, R., and Su, J.
(2007). Towards formal analysis of artifact-centric
business process models. In International Confer-
ence on Business Process Management, pages 288–
304. Springer.
Bonaccorsi, A. and Rossi, C. (2003). Why open source soft-
ware can succeed. Research policy, 32(7):1243–1258.
Chabanoles, N. and Ozil, P. (2015). Bonita bpm: An open-
source bpm-based application development platform
ICEIS 2020 - 22nd International Conference on Enterprise Information Systems
824
to build adaptable business applications. In Interna-
tional Conference on Business Process Management.
Cumberlidge, M. (2007). Business process management
with JBoss jBPM. Packt Publishing Ltd.
Di Ciccio, C., Cecconi, A., Dumas, M., Garcia-Ba
˜
nuelos,
L., L
´
opez-Pintado, O., Lu, Q., Mendling, J., Pono-
marev, A., Tran, A. B., and Weber, I. (2019).
Blockchain support for collaborative business pro-
cesses. Informatik Spektrum, pages 1–9.
Dumas, M., La Rosa, M., Mendling, J., Reijers, H. A., et al.
(2013). Fundamentals of business process manage-
ment, volume 1. Springer.
Farah, G., Tejada, J. S., and Correal, D. (2014). Openhub: a
scalable architecture for the analysis of software qual-
ity attributes. In Proceedings of the 11th Working Con-
ference on Mining Software Repositories, pages 420–
423. ACM.
Fernandez, A. (2013). Camunda bpm platform loan assess-
ment process lab. Brisbane, Australia: Queensland
University of Technology.
Fitzgerald, B. (2006). The transformation of open source
software. MIS quarterly, pages 587–598.
Garc
ˆ
es, R., de Jesus, T., Cardoso, J., and Valente, P. (2009).
Open source workflow management systems: a con-
cise survey. GWDL: A graphical workflow definition
language for business workflows. Springer Berlin Hei-
delberg.
Garc
´
ıa-Ba
˜
nuelos, L., Ponomarev, A., Dumas, M., and We-
ber, I. (2017). Optimized execution of business pro-
cesses on blockchain. In International Conference
on Business Process Management, pages 130–146.
Springer.
Hull, R., Batra, V. S., Chen, Y.-M., Deutsch, A., Heath III,
F. F. T., and Vianu, V. (2016). Towards a Shared
Ledger Business Collaboration Language Based on
Data-Aware Processes. In Sheng, Q. Z., Stroulia, E.,
Tata, S., and Bhiri, S., editors, Service-Oriented Com-
puting, volume 9936, pages 18–36. Springer Interna-
tional Publishing, Cham.
Karagiannis, D. (1995). Bpms: business process manage-
ment systems. ACM SIGOIS Bulletin, 16(1):10–13.
L
´
opez-Pintado, O., Garc
´
ıa-Ba
˜
nuelos, L., Dumas, M., We-
ber, I., and Ponomarev, A. (2019). Caterpillar: A
business process execution engine on the ethereum
blockchain. Software: Practice and Experience,
49(7):1162–1193.
Meidan, A., Garc
´
ıa-Garc
´
ıa, J. A., Escalona, M., and Ramos,
I. (2017). A survey on business processes man-
agement suites. Computer Standards & Interfaces,
51:71–86.
Mendling, J., Dustdar, S., Gal, A., Garc
´
ıa-Ba
˜
nuelos, L.,
Governatori, G., Hull, R., Rosa, M. L., Leopold, H.,
Leymann, F., Recker, J., Reichert, M., Weber, I., Rei-
jers, H. A., Rinderle-Ma, S., Solti, A., Rosemann,
M., Schulte, S., Singh, M. P., Slaats, T., Staples, M.,
Weber, B., Weidlich, M., Aalst, W. V. D., Weske,
M., Xu, X., Zhu, L., Brocke, J. V., Cabanillas, C.,
Daniel, F., Debois, S., Ciccio, C. D., and Dumas, M.
(2018). Blockchains for Business Process Manage-
ment - Challenges and Opportunities. ACM Trans-
actions on Management Information Systems, 9(1):1–
16.
Meroni, G., Plebani, P., and Vona, F. (2019). Trusted
artifact-driven process monitoring of multi-party busi-
ness processes with blockchain. In International Con-
ference on Business Process Management, pages 55–
70. Springer.
Murata, T. (1989). Petri nets: Properties, analysis and ap-
plications. Proceedings of the IEEE, 77(4):541–580.
Nakamoto, S. (2009). Bitcoin: A peer-to-peer electronic
cash system. Technical report.
Peters, G. W. and Panayi, E. (2016). Understanding modern
banking ledgers through blockchain technologies: Fu-
ture of transaction processing and smart contracts on
the internet of money. In Banking Beyond Banks and
Money, pages 239–278. Springer.
Prusty, N. (2017). Building Blockchain Projects. Packt Pub-
lishing Ltd.
Prybila, C., Schulte, S., Hochreiner, C., and Weber, I.
(2017). Runtime Verification for Business Processes
Utilizing the Bitcoin Blockchain. Future Genera-
tion Computer Systems, page S0167739X1731837X.
arXiv: 1706.04404.
Rademakers, T. (2012). Activiti in Action: Executable busi-
ness processes in BPMN 2.0. Manning Publications
Co.
Smirnov, A., Sheremetov, L., and Teslya, N. (2019). Fuzzy
cooperative games usage in smart contracts for dy-
namic robot coalition formation: Approach and use
case description.
Szabo, N. (1994). Smart contracts. Unpublished
manuscript.
van Der Aalst, W. M. (2009). Workflow patterns. Encyclo-
pedia of Database Systems, pages 3557–3558.
Van Der Aalst, W. M. and Ter Hofstede, A. H. (2005). Yawl:
yet another workflow language. Information systems,
30(4):245–275.
Viriyasitavat, W., Da Xu, L., Bi, Z., and Sapsomboon, A.
(2018). Blockchain-based business process manage-
ment (BPM) framework for service composition in in-
dustry 4.0. Journal of Intelligent Manufacturing.
Weber, I., Xu, X., Riveret, R., Governatori, G., Ponomarev,
A., and Mendling, J. (2016). Untrusted Business Pro-
cess Monitoring and Execution Using Blockchain. In
La Rosa, M., Loos, P., and Pastor, O., editors, Busi-
ness Process Management, volume 9850, pages 329–
347. Springer International Publishing, Cham.
Exploring Blockchain Technology to Improve Multi-party Relationship in Business Process Management Systems
825