This document discusses using blockchain technology to provide traceability of inter-organizational business processes. It describes how business processes can be executed on a blockchain using smart contracts, with each process instance and task recorded as transactions. This allows anyone to trace the execution of a process across organizations. As a case study, it examines applying this approach to trace pharmaceutical supply chains.
Blockchain based traceability of inter-organisational business processes
1. Blockchain-based Traceability of Inter-
organisational Business Processes
Claudio Di Ciccio, Alessio Cecconi, Jan Mendling, Dominik Felix, Dominik
Haas, Daniel Lilek, Florian Riel, Andreas Rumpl, and Philipp Uhlig
http://dx.doi.org/10.1007/978-3-319-94214-8_4
Eighth International Symposium on Business
Modeling and Software Design
VIENNA: 3 JULY 2018
4. Transfer of (crypto)assets (Ether, Bitcoin, Litecoin, EOS, …)
from account A to account B
Transaction
Externally Owned
Account (EOA)
Externally Owned
Account (EOA)
Digital signature
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 4
5. Ledger
Ordered collection of transactions
The order matters!
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 5
6. Block
Blocks group and collate transactions
The order matters!
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 6
7. BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 7
Blockchain
Blocks refer back to direct predecessors
The order matters!
9. Ideally, return
fully random (numeric) codes
for any value
except for values given before
same digest all the times then
In practice: input/output (I/O)
I: (bit)string of any length (message)
O: fixed-length hash value (digest)
No secret key
All operations are public
SHA-3
Contest open by NIST
Running for 3 rounds
Won by Team Keccak in 2012
Ethereum uses Keccak
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 9
Hashing and standards
10. SHA3("Hi there!") =
0xA61E6BF963B21B593248A1E0972D434
92E018E5E3B8300B0DF21D2D409EC8580
SHA3("Hello there!") =
0xBCAA8219A31B43EE23EAEDE08AEBAE3
9CDBA2DD382D3579DE9463070E53DA6BD
SHA3("BPM") =
0x5AAC68BEA69BB8F9197B69476C4A697
72183D1FA6BB622460072CF60E9047F71
SHA3("BPMS") =
0x6573FBE16AD1CA39D560F9EA855BAD4
771D988D6E1635FAD7BF65CF8C7552BD1
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 10
Hashing and preimage resistance
Ideally, return
fully random (numeric) codes
for any value
except for values given before
same digest all the times then
In practice: input/output (I/O)
I: (bit)string of any length (message)
O: fixed-length hash value (digest)
No secret key
All operations are public
15. “A universal platform with internal
programming language, so that
everyone could write any app”
[V. Buterin]
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 15
From peer-to-peer electronic cash system
to programmable distributed environment
16. BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 16
A programmable distributed environment
Gas price (execution costs)
Input (and output) encoded data. Yes, hashing strikes back.
Smart Contract
Account
17. Contracts in Ethereum
live in the Ethereum environment
execute a piece of code when called
have direct control over own balance
and key/value storage
Called smart because
executed by a machine
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 17
Smart Contracts are autonomous agents
20. BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 20
Executing inter-organisational processes
on the blockchain
Weber, Xu, Riveret, Governatori, Ponomarev,
Mendling (2016): Untrusted business process
monitoring and execution using blockchain. In
International Conference on Business Process
Management (pp. 329-347). Springer.
21. García-Bañuelos, L., Ponomarev, A.,
Dumas, M., & Weber, I. (BPM 2017).
Optimized execution of business
processes on blockchain.
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 21
Executing inter-organisational processes
on the blockchain
López-Pintado, O., García-Bañuelos, L.,
Dumas, M., & Weber, I. (BPM Demos
2017).
Caterpillar: A blockchain-based business
process management system.
22. From transactions to process traces
Enabling traceability of
process executions
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 22
23. BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 23
Pharmaceutical supply chain: a case study
https://www.gs1.org/sites/default/files/docs/traceability/Global_Traceability_Standard_Healthcare.pdf
28. A dedicated
Worklist Factory SC
for every process
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 28
Caterpillar and the blockchain
A dedicated
Process Factory SC
for every process
A dedicated
Process Instance SC
for every process instance
A dedicated
Worklist SC
for every process instance
30. Worklist SCs are Smart Contracts
Every task corresponds to a function
Application Binary Interface (ABI)
Contract descriptor
Concept
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 30
Understanding the enacted task
Example
Function signature:
function receive_order(uint256) public
Corresponding ABI:
… { "constant":false,
"inputs":[{"name":"workitemId","type":"uint256"}],
"name":"receive_order",
"outputs":[],
"payable":false,
"stateMutability":"nonpayable",
"type":"function“ } …
31. BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 31
Understanding the enacted task
Example
Function signature:
function receive_order(uint256) public
Corresponding ABI:
… { "constant":false,
"inputs":[{"name":"workitemId","type":"uint256"}],
"name":"receive_order",
"outputs":[],
"payable":false,
"stateMutability":"nonpayable",
"type":"function“ } …
SHA3(“receive_order")=0xb20a9aa9619b9dc0c6a76bef0
c51350699afd93b05757350f8c20de71bc75e18
34. Implementation based on Caterpillar tool
More tools to come
Framework implementation
Assumption of unique IDs for process instances (Worklist SCs)
Might not hold true in distributed scenarios
Record linkage
No connection to off-chain world
Usage of Oracles?
Object matching
Step towards enabling process mining on blockchain
Reading of transactions and (possibly) emitted events
Event log creation
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 34
Limitations and future investigations
35. INSTITUTE FOR INFORMATION BUSINESS
Welthandelsplatz 1, 1020 Vienna, Austria
Building D2-C
DR. CLAUDIO DI CICCIO
T: +43 1 31336 5222
F: +43 1 31336 90 5222
Email: claudio.di.ciccio@wu.ac.at
www.wu.ac.at/infobiz/team/claudio-di-ciccio
BLOCKCHAIN-BASED TRACEABILITY OF INTER-
ORGANISATIONAL BUSINESS PROCESSES
PAGE 35
Claudio Di Ciccio, Alessio Cecconi, Jan
Mendling, Dominik Felix, Dominik Haas, Daniel
Lilek, Florian Riel, Andreas Rumpl, Philipp
Uhlig. (2018)
Blockchain-Based Traceability of Inter-
organisational Business Processes.
In: Shishkov B. (eds) Business Modeling and
Software Design. BMSD 2018. Lecture Notes in
Business Information Processing, vol 319.
Springer, Cham.
https://doi.org/10.1007/978-3-319-94214-8_4