=Paper= {{Paper |id=Vol-2339/paper5 |storemode=property |title=Estimating the Duration of Blockchain-Based Business Processes Using Simulation |pdfUrl=https://ceur-ws.org/Vol-2339/paper5.pdf |volume=Vol-2339 |authors=Stephan Haarmann |dblpUrl=https://dblp.org/rec/conf/zeus/Haarmann19 }} ==Estimating the Duration of Blockchain-Based Business Processes Using Simulation== https://ceur-ws.org/Vol-2339/paper5.pdf
    Estimating the Duration of Blockchain-Based
        Business Processes Using Simulation

                                 Stephan Haarmann

        Hasso Plattner Institute, University of Potsdam, Potsdam, Germany
                           {stephan.haarmann@hpi.de}



       Abstract. Information systems automate parts of business processes
       and support involved stakeholders. Recently, blockchains and other dis-
       tributed ledgers are considered to extend the possibilities for automating
       inter-organizational processes: these technologies offer a new paradigm
       for such processes as they may automatically enforce contractual agree-
       ments without a trusted third party. Although existing research shows
       that inter-organizational processes can be enacted based on blockchains,
       fundamental question, such as What is the impact of blockchain on the
       process?, remain open. This work focuses on analyzing the duration of
       blockchain-based inter-organizational processes using simulation tech-
       niques.

       Keywords: Business Process Management · Blockchain · Simulation.


1    Introduction
With business process management (BPM), enterprises can structure, document,
and enact their processes [15]. At the core of BPM, process models (e.g., mod-
eled using the Business Process Model and Notation (BPMN) [10]) can capture
process elements, such as tasks and data, the elements’ relations (e.g., causal
and data dependencies), as well as the process’ interactions.
    Process engines use various technologies: databases store process relevant
data, mobile devices enable ubiquitous access, IoT technologies establish cyber-
physical connections, and more. Recently, the BPM community researches the
application of blockchain, especially in inter-organizational processes [8]. The
blockchain technology can enforce the execution of programs by creating trans-
parency and integrity, so collaborating parties can rely on the blockchain as a
source of truth. Most research focuses on the blockchain-based execution and
mediation of processes: in a setting in which mutual distrust prevents any par-
ticipant from acting as a central coordinator, authority, or platform provider,
blockchain technologies can replace a trusted third party [3].
    However, for some inter-organizational business processes, blockchain-based
solutions are inefficient and not viable. Some methods employ model-driven de-
velopment to speed up the development cycle, but expertise and manual effort
is required for blockchain-specific configurations. For enterprises it is difficult to
decide whether a blockchain is applicable and whether it is efficient enough to

      S. Kolb, C. Sturm (Eds.): 11th ZEUS Workshop, ZEUS 2019, Bayreuth, Germany, 14-15
                   February 2019, published at http://ceur-ws.org/Vol-2339
       Estimating the Duration of Blockchain-Based Business Processes           25

be viable. Additionally, most of the current solutions are tailored to one specific
blockchain implementation (e.g., Ethereum [16] or Hyperledger Fabric [1]), but
each technology has different characteristics and the implications for the pro-
cess vary. Process analysis techniques, such as process simulation, can provide
insights to support decision makers.
    In this paper, we sketch an approach for analyzing the duration of blockchain-
based business processes using simulation. The analysis is based on a configurable
model of the blockchain’s behavior, which can be integrated in process models
to simulate the blockchain’s impact on the process execution. Combined with
general information (e.g., the technology’s security guarantees), the results help
businesses to make an informed decision about whether to apply blockchain.
    The remainder of this paper starts with an example and an overview of works
on blockchain-based BPM (Section 2). In Section 3, we present our approach of
estimating the duration of blockchain-based processes. Finally, we discuss our
approach and list directions for future work (Section 4).


2     Blockchains for BPM

In BPM, blockchains are mostly applied to inter-organizational (collaborative)
business processes [8]. Initially, blockchain was proposed to power the cryptocur-
rency Bitcoin [9]. It supports simple money transfer and advanced concepts such
as escrows.
    The so called 2nd generation of blockchains supports smart contracts: pro-
grams that are executed by the nodes of the blockchain network. Just as the
blockchain-stored ledger, smart contracts are tamper-proofed, transparent, and
permanent. These properties guarantee that the program is executed when it
is called (stopping the execution requires manipulating the ledger); thus, smart
contracts can enforce contractual agreements. Since inter-organizational process
models describe an agreement on responsibilities (by whom and in which order
are actions performed?), smart contracts can enforce them.


2.1   Related Work

The BPM community focuses mostly on the blockchains with smart contract
capabilities. The degree of blockchain integration can vary from simple mon-
itoring tools to blockchain-based process engines: Weber et al. demonstrated
blockchain-based monitoring and execution of inter-organizational business pro-
cesses [14]. The tool Caterpillar by Lopez-Pintado et al. extends this idea to an
Ethereum-based process engine — the work takes classical process models [6].
Similar works with different foci exist: Sturm et al. focus on the flexibility of
processes [13], Madsen et al. on declarative processes [7], and Hull et al. on data
centric processes [4].
    Generating smart contracts from process models reduces the development
time. However, blockchain-based process execution may have non-functional re-
quirements, i.e., temporal constraints. The mentioned works help to estimate
      26          Stephan Haarmann

aspects such as the duration; however, this still involves manual configuration
and a blockchain setup. The same holds for the work by Yasaweerasinghelage et
al.: their approach uses process simulation to send transaction to a blockchain
in order to estimate its latency [17].

2.2     Motivating Example


       Buyer                      Bank                    Auctioneers                      Buyer
  Transfer Money     3 d*     Inform about     10 min*                     1-2 d
                                                         Deliver Artwork           Request Assessment
     to Escrow                   Escrow
        Bank                   Auctioneers                   Buyer                         Expert
      15-20 min                  1 min                       0.5 d                 0.5-1.5 d




                                                                                               0 min
        Bank                      Expert                     Expert
                      0 min                      1-2 d                              fake
  Transfer Money              Cancel Escrow              Return Artwork

       Buyer                      Bank                     Auctioneer
       3 d*                     15-30 min                    0.5 d
                                  Bank                       Expert
                                                 0 min
                              Transfer Money             Release Funds

                               Auctioneers                    Bank
                                 3 d*                       15-30 min


Fig. 1. A choreography model depicting the process of purchasing artworks; tasks are
annotated with the time between detecting the previous message and sending the
next; control flow is annotated with the time between sending a message and the next
initiator detecting it; times marked with * do not exist in a blockchain-based process.


    Figure 1 depicts an example inter-organization process as a BPMN choreog-
raphy model: a buyer purchases an artwork from auctioneers. Since the purchase
may bear a high risk, the buyer first opens an escrow. The auctioneers send the
artwork to the buyer and an expert assesses it. The expert is a neutral party
trusted by both the auctioneers and the buyer. Based on the expert’s assessment
the money in the escrow is released, and the money is sent to the auctioneers (if
the artwork is real). In case of a fraud, the artwork is sent back, and the escrow
is canceled (transferring all funds back to the buyer).
    Blockchain technologies can take on different roles in the art-dealing exam-
ple. Blockchains with inherent cryptocurrencies often support escrows. Thus,
blockchain technologies can replace the bank (a trusted intermediary). With
smart contracts, the process can further be enhanced: the contract can track the
correct progression of the process, for example that the escrow is created before
the artwork is delivered. Furthermore, blockchain-based identities can restrict
the execution of actions to specific roles. By storing a fingerprint of messages or
proficiency data, the blockchain can support the process as a data storage.
    In the following, we describe initial work on simulating blockchain-based pro-
cesses that helps stakeholders to estimate the process execution time and which
can be configured towards various blockchain implementations. For the chore-
ography, we consider two types of durations: the time between a message being
      Estimating the Duration of Blockchain-Based Business Processes             27

sent and being detected by the initiator of the next task (annotated on edges) [5]
and time between detecting a message and sending the next one (annotated on
tasks). For the former, we lift the assumption that interactions in choreographies
are timeless.


3   Analyzing Blockchain-Based Latency

A blockchain is a decentralized system for reaching consensus in a peer-to-peer
network. Due to its nature, blockchains introduce additional latency: transac-
tions are submitted, shared, verified and processed, and eventually incorporated
in the consensus. Afterwards, participants are accountable for their transactions.
    Inter-organizational business processes can employ blockchain in various ways.
For the art-dealing example, we consider blockchain-based process execution:
The bank is replaced by a smart contract and all interactions are logged by a
smart contract, which enforces the right ordering of the actions. The triggering
participant sends a transaction at the end of each interaction, i.e., the auctioneers
send the transaction for the shipment after handing over the artwork.
    The transactions trigger the progression of the on-chain process instance. The
network managing the ledger processes a transaction in steps: a local transaction
is shared with the network but remains pending, a pending transaction is mined
(included in a block that extends the ledger), and the mined block with all
its transactions is confirmed (succeeded by a certain number of blocks). The
duration of each step depends mostly on the blockchain and the underlying
network: in Bitcoin, a transaction needs a couple of seconds to spread, and a new
block is appended approximately every 10 minutes; for Ethereum, transactions
diffuse the network similarly fast; however, a block is added every 15 seconds. We
assume that a transaction is included in the first block that is mined after the
transaction became available to the network (the reality may be more complex
and influenced by transaction fees, network load, and throughput).
    In most cases, a participant waits for all preceding transactions to be con-
firmed. However, if the same participant triggers two subsequent interactions,
the participant does not need confirmation of his or her own action. Addition-
ally, if an interaction is physically, such as shipping the artwork, the transaction
must be confirmed and the interaction must be completed.
    Figure 2 partially shows a timed Petri net representation of the inter-organiza-
tional process. Each interaction task of the choreography model is translated into
corresponding transitions: the firing of such a transition indicates the completion
of the respective interaction. It progresses the state by producing an unnamed
token for the control flow. Further, each interaction puts a token identifying the
interaction on the Transaction Local place. The net includes the blockchain-
based transaction processing: a transaction is sent, diffuses the network, is in-
cluded in a block, and eventually the block is confirmed. The transition Mine
Block consumes all tokens on Transaction Pending and produces respective
tokens on Transaction Included. Each interaction depends on the previous
one; thus, the respective transition can only fire if the previous transaction is
         28                  Stephan Haarmann

                                                                                                                        <15 – 30 min>
                                                                                                                          Cancel                                      txCE
                                                                                                                         Escrow 1
                                                                  ...                                                                    <15 – 30 min>
                                                                                                                                           Cancel
                       <0.5 – 1.5 d>                                                 <1.5 – 2.5 d>                                                                       txCE
                                                                                                                                          Escrow 2
                                                                                                                                                      <15 – 30 min>

....                   Request
                      Assessment
                                                                                      Return
                                                                                      Artwork
                                                                                                                                                          Cancel
                                                                                                                                                         Escrow 3               txCE            ...
                                                                                                                            txRA2                                        <15 – 30 min>
     Artwok                            Artwork Assessed            Artwork is Fake                   Artwork Returned                                                         Cancel
                                                                                                                                              txRA2
     Deliverd                                                                           txRA2                                                                                Escrow 4    txCE
                      txRA                                 txRA                                                                       txRA2
                                                                                                                                                                              txRA2



                                                                                                                                                                                                 interblock-time>

                                           Diffuse                                         Mine                                          Confirm
                                                                                *                         *
        Transaction                       Network                                          Block                                          Block
              Local                                        Transaction Pending                            Transaction Included                              Transaction Confirmed




                                                                                     Time of Last Block




Fig. 2. A timed Petri net showing the three interactions Request Assessment, Return
Artwork, and Cancel Escrow including the blockchain’s transaction processing


in the place Transaction Confirmed. This requirement is represented by the
labels on the respective arcs. In the example, the expert is performing two ac-
tions in a row, and does not need confirmation of the first transaction. The
transitions with label Cancel Escrow represent the different options: the escrow
can be canceled immediately after Return Artwork; thus, there is a transition
for Cancel Escrow for each possible state of the Return Artwork transaction
(local, pending, included and confirmed).
    Each transition is annotated with ranges for the duration of the respective
choreography task/blockchain action [12]. We derived the time by assuming 8h
per day. A transition is annotated with the sum of the choreographies task
duration and the communication (outgoing arch), for example Return Artwork
is annotated with <1.5–2.5d> which is the sum of the duration 0.5d and the
communication 1–2d. While the duration of a choreography task is domain and
instance specific, the duration for a blockchain action depends mostly on the
implementation. For this purpose, we introduce a blockchain configuration: 1. the
diffusion-time — the time until a transaction is known by the network (e.g.,
around 15 sec for Bitcoin [2]1 ); 2. the inter-blocktime — the time between the
mining of two blocks (e.g., approximately 10 min for Bitcoin, about 15 sec for
Ethereum2 ) 3. the confirmation-count — the number of blocks that follow
an included transaction until it is consider confirmed (e.g., Bitcoin recommends
a confirmation-count of 6, Ethereum one of 12, and most private blockchains
use 0). These parameters are set according to the used blockchain. The product
of inter-blocktime and confirmation-count denotes the time between mining a
transaction and confirming a transaction.
    The Petri net semantics equipped with temporal information of the choreog-
raphy and a blockchain configuration allow a simulation of the blockchain-based
 1
       Bitcoin diffusion-time: http://bitcoinstats.com/network/propagation/ (02/06/2019)
 2
       Ethereum inter-blocktime : https://etherscan.io/chart/blocktime (02/06/2019)
       Estimating the Duration of Blockchain-Based Business Processes          29

inter-organizational process. We use CPNTools3 to model4 all aspects of the
Petri net and simulate the process quantitatively and manually step-through
simulation techniques. Running 100 instances, we derived an average duration
of about 8 days for the version not using blockchain and about 3 days for a
blockchain-based version (0 min diffusion-time, 10 min inter-blocktime, 6 blocks
confirmation-count; duration ranges where simulated via a binomial distribu-
tion). While the blockchain causes delays, it enables process changes that reduce
the overall duration: in the example, the replacement of the bank improved
the process performance. By simply adjusting the blockchain configuration, it is
possible to estimate other blockchain implementations.


4     Discussion and Future Work

In some cases, blockchain technologies may remove the need for trusted interme-
diaries in inter-organizational business processes. However, such solutions have
drawbacks: the distributed nature limits the throughput and causes latency. We
sketched a method to analyze the duration of blockchain-based processes.
    The analysis relies on formal semantics, domain specific information, and a
configuration for a certain blockchain implementation. The configuration com-
prises three parameters; thus, adapting to different blockchains is simple. Through
simulation, the analysis estimates the duration of blockchain-based processes
with little effort compared to prototypical and model-driven implementations.
However, the impact of blockchain-based implementations on processes is not
always significant: especially processes that are executed frequently and that are
highly automated might be slowed down by blockchains. Processes that contain
various manual and physical tasks may be delayed insignificantly by blockchains
or even speed up as manual tasks are automated or third parties are replaced
by smart contracts.
    The presented work is in an early state. In future work, we will support
BPMN choreography models by integrating our approach into a business process
simulator, which takes a blockchain configuration as well as an enriched BPMN
choreography model as an input. Additionally, different ways of blockchain-based
process support exist: we want to investigate existing solutions (such as Cater-
pillar) to estimate different implementations and paradigms. Furthermore, the
blockchain behavior can be modeled and configured on different granularity lev-
els: currently we do not consider that blocks are limited in size, the processing
of transactions might be prioritized based on transaction fees, and that block
propagation depends on various factors [2].
    Additionally, execution time of processes is only one aspect affected by the
underlying technology. Public blockchains include a cryptocurrency: a transac-
tion has costs depending on its priority and payload. This may or may not have
a significant impact on the overall costs of a process. Related to both costs and
3
    CPNTools homepage: https://cpntools.org (1/7/2019)
4
    Models and results: https://owncloud.hpi.de/index.php/s/iGVqu7WkgMYXIpW
    30      Stephan Haarmann

duration is the throughput of blockchains: when a blockchain is used for multiple
purposes or by many participants, transactions may remain pending longer.
    Analyzing various aspect of blockchain-based processes requires a detailed
understanding of the technologies as well as the configuration points. In future
work, we will explore such behavioral properties and derive a formal model of
blockchains that can be configured towards specific implementations. Detailed
models can provide insights in blockchain’s behavior as well as its impact on
business processes beyond latencies. Such models equipped with empirical data
[11] may lead to higher precision in simulating the processes.


References
 1. Androulaki, E., Barger, A., Bortnikov, V., Cachin, C., Christidis, K., De Caro, A.,
    Enyeart, D., Ferris, C., Laventman, G., Manevich, Y., et al.: Hyperledger fabric: a
    distributed operating system for permissioned blockchains. In: Proceedings of the
    Thirteenth EuroSys Conference. p. 30. ACM (2018)
 2. Decker, C., Wattenhofer, R.: Information propagation in the bitcoin network. In:
    13th IEEE International Conference on Peer-to-Peer Computing, IEEE P2P 2013,
    Trento, Italy, September 9-11, 2013, Proceedings. pp. 1–10 (2013), https://doi.org/
    10.1109/P2P.2013.6688704
 3. Hawlitschek, F., Notheisen, B., Teubner, T.: The limits of trust-free systems:
    A literature review on blockchain technology and trust in the sharing econ-
    omy. Electronic Commerce Research and Applications 29, 50–63 (2018), https:
    //doi.org/10.1016/j.elerap.2018.03.005
 4. Hull, R., Batra, V.S., Chen, Y., Deutsch, A., III, F.F.T.H., Vianu, V.: Towards
    a shared ledger business collaboration language based on data-aware processes.
    In: Service-Oriented Computing - 14th International Conference, ICSOC 2016,
    Banff, AB, Canada, October 10-13, 2016, Proceedings. pp. 18–36 (2016), https:
    //doi.org/10.1007/978-3-319-46295-0 2
 5. Lamport, L.: Time, clocks, and the ordering of events in a distributed system.
    Commun. ACM 21(7), 558–565 (1978), https://doi.org/10.1145/359545.359563
 6. López-Pintado, O., Garcı́a-Bañuelos, L., Dumas, M., Weber, I.: Caterpillar: A
    blockchain-based business process management system. In: Proceedings of the
    BPM Demo Track and BPM with 15th International Conference on Business
    Process Management (BPM 2017), Barcelona, Spain, September 13, 2017. (2017),
    http://ceur-ws.org/Vol-1920/BPM 2017 paper 199.pdf
 7. Madsen, M.F., Gaub, M., Høgnason, T., Kirkbro, M.E., Slaats, T., Debois, S.:
    Collaboration among adversaries: Distributed workflow execution on a blockchain.
    In: 2018 Symposium on Foundations and Applications of Blockchain (2018)
 8. Mendling, J., Weber, I., van der Aalst, W.M.P., vom Brocke, J., Cabanillas, C.,
    Daniel, F., Debois, S., Ciccio, C.D., Dumas, M., Dustdar, S., Gal, A., Garcı́a-
    Bañuelos, L., Governatori, G., Hull, R., Rosa, M.L., Leopold, H., Leymann, F.,
    Recker, J., Reichert, M., Reijers, H.A., Rinderle-Ma, S., Solti, A., Rosemann, M.,
    Schulte, S., Singh, M.P., Slaats, T., Staples, M., Weber, B., Weidlich, M., Weske,
    M., Xu, X., Zhu, L.: Blockchains for business process management - challenges and
    opportunities. ACM Trans. Management Inf. Syst. 9(1), 4:1–4:16 (2018), https:
    //doi.org/10.1145/3183367
 9. Nakamoto, S.: Bitcoin: A peer-to-peer electronic cash system (2008)
      Estimating the Duration of Blockchain-Based Business Processes               31

10. OMG: Business process model and notation (2011)
11. Pappalardo, G., di Matteo, T., Caldarelli, G., Aste, T.: Blockchain inef-
    ficiency in the bitcoin peers network. EPJ Data Sci. 7(1),             30 (2018).
    https://doi.org/10.1140/epjds/s13688-018-0159-3, https://doi.org/10.1140/epjds/
    s13688-018-0159-3
12. Popova-Zeugmann, L.: Time and Petri Nets. Springer (2013)
13. Sturm, C., Szalanczi, J., Schönig, S., Jablonski, S.: A lean architecture for
    blockchain based decentralized process execution. In: Business Process Manage-
    ment Workshops - BPM 2018 International Workshops, Sydney, NSW, Australia,
    September 9-14, 2018, Revised Papers. pp. 361–373 (2018), https://doi.org/10.
    1007/978-3-030-11641-5 29
14. Weber, I., Xu, X., Riveret, R., Governatori, G., Ponomarev, A., Mendling, J.:
    Untrusted business process monitoring and execution using blockchain. In: Busi-
    ness Process Management - 14th International Conference, BPM 2016, Rio de
    Janeiro, Brazil, September 18-22, 2016. Proceedings. pp. 329–347 (2016), https:
    //doi.org/10.1007/978-3-319-45348-4 19
15. Weske, M.: Business Process Management - Concepts, Languages, Architectures,
    2nd Edition. Springer (2012), https://doi.org/10.1007/978-3-642-28616-2
16. Wood, G.: Ethereum: A secure decentralised generalised transaction ledger.
    Ethereum project yellow paper 151, 1–32 (2014)
17. Yasaweerasinghelage, R., Staples, M., Weber, I.: Predicting latency of blockchain-
    based systems using architectural modelling and simulation. In: 2017 IEEE Inter-
    national Conference on Software Architecture, ICSA 2017, Gothenburg, Sweden,
    April 3-7, 2017. pp. 253–256 (2017), https://doi.org/10.1109/ICSA.2017.22