Botany krishna series 2nd semester Only Mcq type questions
Caterpillar: A Blockchain-Based Business Proces Management System
1. Caterpillar:
A Blockchain-Based Business Process
Management System
Orlenys López-Pintado, Marlon Dumas, Luciano García-Bañuelos, Ingo Weber
1WU Vienna, Research Seminar, 18 December 2017Caterpillar: Blockchain-Based BPMS
3. Drawbacks
• Bilateral message exchange is a weak consensus primitive, hence:
• Correct execution hinges on parties checking on each other
• Traceability is a nightmare
• Exceptions cause havoc
• Disputes require manual resolution
• Process change and new partner on-boarding are hard
• Money flows happen outside the process
• EDI networks can help
• But rely on a central trust provider to which everyone must be connected
• Quite inflexible
• …and money flows still happen elsewhere
Caterpillar: A BPMS on the Blockchain WU Vienna Ressearch Seminar, 18 Dec 2017 3
4. • Blockchain enables us to approach collaborative process execution
differently
• No messages, only blockchain transactions
• Collaborative process models can be translated to smart contracts
• Maintain execution state
• Ensure that the process is executed correctly
• Process execution data on the Blockchain
• Single source of truth across the participants
• Full traceability
4
Collaborative Processes on Blockchain
5. Collaborative Process on Blockchain
5
OrdertoCashProcess
CustomerSupplierCarrier
Goods delivering
Carrier selection
PO created
Submit PO to
Supplier
Verify PO
PO rejected
PO accepted
Request carrier
quote
Submit quote
Appoint carrier
Ship goods
PO cancelled
Issue invoice for
customer
Issue invoice for
supplier
Approve invoice
from supplier
Resend invoice to
customer
Invoice accepted
Approve invoice
from carrier
Resend invoice to
supplier
Invoice accepted
6. Caterpillar
• Business Process Management System (BPMS) without a DB and
without an execution engine
• Process state stored on blockchain
• All execution driven by smart contract transactions
• Based on the Business Process Model and Notation (BPMN 2.0)
• Current version targeted at the Ethereum blockchain
• Open-source
Caterpillar: A BPMS on the Blockchain WU Vienna Ressearch Seminar, 18 Dec 2017 6
7. Caterpillar: Design Principles
1. Transparent design of collaborative business processes
• A collaborative process model looks exactly like a regular intra-organizational process
• One lane = one role in the collaboration
• Sequence flow across lanes handover between two parties
• Kiss goodbye to bilateral messages
2. Everything needed to execute the process is on the blockchain
• All process instance state on the blockchain
• All execution logic is encoded in smart contracts
• One root process = one smart contract
• There is a single (Factory) contract from which all instances of a process and its subprocesses can
be accessed
• Design-time component and tools only needed to deploy the process
• Off-chain runtime component (RESTful) is purely for convenience, BYO runtime is OK
Caterpillar: A BPMS on the Blockchain WU Vienna Ressearch Seminar, 18 Dec 2017 7
8. Caterpillar Architecture
Sub processSub process
Root process
Work item
manager
Service proxy
Sub process
Process instance
registry
Process metadata
BPMN models
Solidity smart
contracts
EVM bytecode
ABI interfaces
Compilation artifacts
CATERPILLAR (on-chain runtime)
Ethereum client node
(e.g. Geth, Parity)
Descentralized storage
(e.g. IPFS, Swarm)
BPMN to
solidity
Solidity
compiler
Execution mediator Event monitor
CATERPILLAR (off-chain runtime)
Process instance
Modeling tool Execution panel
8
9. Main artefacts and tool chain
BPMN model
with solidity
extensions
Smart contracts
(generated)
Dictionary of
BPMN elements
Smart contracts
(existing)
EVM
Bytecode
Contract
interfaces
(ABI)
Parse BPMN model
(BPMN2Sol)
Compile smart
contracts
(solc)
Caterpillar: A BPMS on the Blockchain WU Vienna Ressearch Seminar, 18 Dec 2017 9
11. Outlook
• Cost and throughput are two major challenges
• 0.0347 Ether per process instance for a real (but small) process (around $30)
• 50 transactions per block (12-14 seconds inter-block time in Ethereum)
• Currently, all process data is stored on the blockchain
• Infeasible in case of large amounts of data
• Need to support off-chain data as an option
• No access control in current version
• Plan to incorporate a dynamic RBAC mechanism in future version
Caterpillar: A BPMS on the Blockchain WU Vienna Ressearch Seminar, 18 Dec 2017 11