SlideShare a Scribd company logo
1Page© 2018 IBM Corporation© 2018 IBM Corporation
Blockchain Business Processes & Rule-based
Smart Contracts
With IBM Operational Decision Manager
October 2018
Stephane Mery
Distinguished Engineer, IBM ODM Chief Architect
2
It has been estimated that a blockchain “is about 80%
business process change and 20% technology implementation”
Source: Deloitte, Blockchain: Enigma. Paradox. Opportunity, 2016, page 11
Blockchain will foster automation of processes at the edge of the Enterprise.
Connecting your systems and data will be a significant integration challenge.
What will be the impact on your existing processes?
How can you make your systems ready to participate?
Process
Integration
3
Letter of credit process – without Blockchain
4
Letter of credit – with Blockchain
• Distributed, immutable ledger
• Replicated on each participant’s system
• Contract clauses automated by Smart Contracts
5
Participant Process Orchestration - Choregraphy
Participant Shared Process
Private Process Private Process
Participant
Participant
Participant
Participant
Participant
Blockchain
Because business rules and smart contracts that
execute based on one or more conditions can be built
into the platform, blockchain business networks can
evolve to support end-to-end business processes and
a wide range of activities.
IBM Institute for Business Value, Oct 2016
6
Disruption ahead!
• Entire industry business processes will be re-invented, using Blockchain as
medium
• The eco-system will have to adapt its own business processes
• Failure to do so will foster emergence of brand new, “born-in-blockchain” eco-
systems
• Look at industries where eco-system processes are today manual
• Look at industries where “middlemen” are taking the biggest share of the trade
7Page© 2018 IBM Corporation
Blockchain for Business
Append-only
distributed system of
record shared across
business network
Business terms
embedded in
transaction
database
& executed with
transactions
Transactions are
endorsed by
relevant
participants
Ensuring appropriate
visibility; transactions
are secure,
authenticated
& verifiable Privacy
Shared
ledger
Smart
contract
Trust
8Page© 2018 IBM Corporation
Smart Contracts
• Verifiable, signed
• Encoded in programming language
• Example:
– Defines contractual conditions under
which a bond transfer occurs
Business rules associated
with the transaction
9
Blockchain Smart Contracts
• Automate transaction processing logic in the Blockchain
• Executed by all nodes
• Consensus needed to validate the side effects
• Limited in Bitcoin
• Turing-complete in other blockchain platforms (Hyperledger, Ethereum…)
• Written in code – Go Lang, Javascript, Solidity…
Term coined by Nick Szabo in 1994: computer protocol to digitally enforce a contract
https://en.wikipedia.org/wiki/Smart_contract
Combined with immutability, the ability to automate transaction
processing is what make Blockchain a disruptive technology
10
Smart Contracts – not smart, nor contracts….
• Smart Contracts are no more than code processing transactions embedded
in the Blockchain platform
• “Smart” is more a marketing twist
• A real legally binding contract is much more than code
• Must be able to deal with ambiguity in court
• Would require end-to-end legally-approved system
• However, still a powerful mechanism to automate the conditions of value
exchange
• Trusted execution environment, actions are tracked, code is transparent
• “The Code is the Law” philosophy – Decentralized Autonomous Organization
11
Smart Contracts are dangerous
• They are manipulating value (crypto-currency or other assets)
• They are code, subject to bugs
• 2016 - $40M stolen due to a Solidity bug in Ethereum
• 2017 - $30M stolen and $150M locked due to
a bug in multi-signature wallet technology
è but… Bitcoin core technology has never been hacked
Technology is in its infancy, need time to mature and be fully secured
12
Ricardian Contracts – half-way between Law and code
• Contract readable by lawyers and machines
• Keeping a text version of the contract,
digitally signed
• Source of Truth in court
• Extract machine-readable conditions
• To automate execution of the contract
• Startup in LegalTech are on it
• Clause.io
• Livecontracts.io
13
Accord Project – standard for legal smart contracts
https://www.accordproject.org/
Nascent standardization initiative to make legal & code closer
14
Challenges with Smart Contracts
• Sometimes Law and regulations are ambiguous… on purpose
• Smart Contracts can have bugs
• Smart Contracts define business logic in technical code
• Who decide when and how the contract need to be amended?
• How Smart Contract can use knowledge from the real world?
• Oracles
15
How Decision Management can be an answer?
• Decision Management is a discipline to involve Business people in the
implementation of the business logic in IT systems
• Decisions are extracted from applications and encoded as readable
Business Rules
• Can evolve at the pace of the business
• Governance and life-cycle management involve both Business & IT
• Business Agility, transparency, auditability, governance are the key benefits
• Smart Contracts are typical examples of code that represent business logic
https://en.wikipedia.org/wiki/Decision_management
16Page© 2018 IBM Corporation
Blockchain = Process + Decisions
Eco-system processes automated with Smart Contracts
Rule-based Smart Contracts
Encoding agreement as business rules
17Page© 2018 IBM Corporation
Decision Management and Blockchain
• Implement real contracts if Blockchain is used a platform to trade value
• Contracts have clauses that are business conditions
Smart Contract is the Blockchain mechanism to automate transaction processing logic.
• On the market for more than 15 years
• Used by ~1,000 Customers Worldwide for critical business operations – Finance, Insurance, Retail, Supply Chain,
Transportation…
• Provides Enterprise-class capabilities to author, execute and manage decision logic
IBM Operational Decision Manager (ODM) is the market-leading Business Rules
Management System
18Page© 2018 IBM Corporation
Smart Contracts – Challenges and Opportunities
Code in Smart Contract is often Business Logic
• Implementing the clauses of contract & agreement between transacting parties
• Making transactions compliant to the regulation
• Code is essentially “business rules” encoded in Go, Java or JavaScript.
• -- quickly becomes complex to implement and manage without a rule engine
• è need to be more accessible to Business Stakeholders, a high-level business-friendly language would be better
Business Logic might change frequently
• Need proper governance around change
• è need extensive tooling to govern Smart Contracts life-cycle
Semantic of the Smart Contract should be well defined
• Expressivity should be limited to early detect inconsistencies, ambiguities and contradictions
• We should be able to verify, test and simulate Smart Contracts
• è A Rule Engine provides a safer environment, trading expressivity for safety
19Page© 2018 IBM Corporation
Smart Contracts – Use Cases
Digital Rights dispatch to Artists
- Current solutions spoil artists
- Intermediaries capture a lot of the value
- Smart Contracts to store artist rights
encoded as rules
- Smart Contract to encode payment split
depending on when/where a song is
broadcast, for instance
- …
20Page© 2018 IBM Corporation
Smart Contracts – Use Cases
Parametric Insurance
- Insurance contract fully automated using
Smart Contracts
- Policy conditions defined as Business Rules
Insurance Contract
define a location and
the weather conditions
triggering payout
Weather events published as
transactions in Blockchain
Automatic payout as weather
conditions meet contract clauses
21Page© 2018 IBM Corporation
Introducing IBM Operational Decision Manager
22Page© 2018 IBM Corporation
Introducing IBM ODM
Business Rules
ApplicationApplication
Decision logic
§ Natural language rules can be easily read
§ Externalized rules are easy to change
§ Centralized rules enable reuse and consistency
§ Rules written in software code cannot be read by
business people
§ Hard coded rules are difficult to change
§ Rules intertwined within applications cannot be reused by
other systems
Without Decision Management With Decision Management
23Page© 2018 IBM Corporation
Key Capabilities
24Page© 2018 IBM Corporation
Author – Decision Service
Author Business Analysts prepare the Decision Service
structure and define contract in Rule Designer
Rules are organized in reusable and composable
Rule Projects
The Business Decision is exposed
as a Decision Service
25Page© 2018 IBM Corporation
Author – Business Vocabulary
Author Business Analysts can represent complex Business
Data Model that Developers can integrate with Enterprise Data
Business Object Model Business Vocabulary
Loan
§ amount
§ loanScore
§ riskScore
§ approve(message)
§ reject(message)
the loan
§ the amount of <the loan>
§ the score of <the loan>
§ the risk associated to of <the loan>
§ accept <the loan> with …
§ reject <the loan> with …
Data Model
Rule Language
X
S
D
J
A
V
A
26Page© 2018 IBM Corporation
Author – Business Rules
Author Business Users can express and orchestrate complex
Business Logic
27Page© 2018 IBM Corporation
Govern
28Page© 2018 IBM Corporation
Automate
29Page© 2018 IBM Corporation
Rule-based Smart Contracts with IBM ODM
30Page© 2018 IBM Corporation
ODM for Smart Contracts – Public Assets
• ODM for Blockchain Smart Contracts: http://ibm.biz/odm-blockchain
Article:
Code Sample:
• ODM for Blockchain Smart Contracts: https://github.com/ODMDev/sample-blockchain-vehicle-lifecycle
Based on:
Hyperledger Fabric 1.1
Hyperledger Composer 0.19+
31Page© 2018 IBM Corporation
Smart Contracts leveraging IBM Operational Decision Manager
è Externalizing Smart Contract business logic in ODM
- Business decisions involved in Smart Contracts are delegated to the ODM rule engine
- eXecution Object Model generated from HyperLedger Composer Data Model
- Business stakeholders are maintaining the logic in ODM tools, like Decision Center
è Integrating ODM Rule Execution Server with Hyperledger Fabric
- Deploying Rule Execution Server in Blockchain peer nodes
- Calling Decision Services REST API from Hyperledger Composer Smart Contracts
- Deploying Ruleset through Blockchain transactions
32Page© 2018 IBM Corporation
Smart Contracts – Running ODM rules in-chain
- ODM rule engine part of the
Blockchain Peer Nodes
validating transactions
- Deployed as a Docker
image
- Transaction processing logic expressed
as Business Rules with ODM
- Ruleset stored in the Blockchain and
deployed through a Blockchain
transaction
- Out-process REST call from Composer
Transaction Processor
Leveraging ODM Business-friendly tooling to author, test, simulate and govern Smart Contract rules
33Page© 2018 IBM Corporation
• Decision Services are implemented in ODM
- eXecution Object Model and BOM are generated from HyperLedger Composer domain model
- Business Vocabulary created in ODM
- Decisions are implemented as Business Rules & Decision Tables using ODM tooling
• Decision Services exposed as REST/JSON API
- Signature based on the BOM
- Called from the Smart Contract
Invoking Decision Services
34Page© 2018 IBM Corporation
Invoking Decision Services
• HyperLedger Composer Transaction Processors calling-out to Decision Service REST API
- Transaction data and assets are serialized in JSON and passed to the POST API
- Decision result data come back as JSON object, used in the Java Script Transaction Processor code
HyperLedger Composer Transaction Processor
Using Composer ‘post’ API passing the transaction
and related assets referenced by the transaction
Transaction Processor code decodes the decision
service response and takes the appropriate action
35Page© 2018 IBM Corporation
Business Rules life-cycle
• New version of the Ruleset are submitted to the Blockchain as Transactions
- Specific RuleAppUpdated Transaction type specified in Composer
- Specific Transaction Processor in Composer to handle the transaction and deploy the ruleset
- Ruleset deployed to the RES associated to the peer through a facade to the RES exposed as a REST API
• Most current Ruleset version is stored in the Blockchain
- Ruleset are stored in the Blockchain for reference
- The most current version number is written in an asset and used when calling out Decision Services
- If deployment transaction fails, transaction is rolled-back and most current version is unchanged
• XOM changes are deployed the same way
- All logic execution support secured by the Blockchain
36Page© 2018 IBM Corporation
Smart Contracts – Business Rules Lifecycle Management
1 Business Users update rules in
Decision Center following proper
Governance workflow
2
When Business Rules are agreed and
properly validated, they are pushed to
the Ledger as a Transaction and
dispatched to all Nodes
Composer
Chaincode
Specific Transaction Processor
ODM Rule Execution Server
RES Deploy REST API
Blockchain World State
& Ledger
Ruleset Deployment Tx
3
Ruleset is stored in
the Ledger as well
as the current
version
4 Ruleset is deployed to the RES
5
When Deployment
Tx will be validated
on all nodes, the
new version of the
rules is available
Ruleset
Blockchain Peer Node
Blockchain
BusinessNetworkParticipants
37Page© 2018 IBM Corporation
Smart Contracts – Leveraging IBM Operational Decision Manager
Author
Empower Business Stakeholders to author business-friendly Smart Contracts, validate and simulate them.
Run
Execute in a Rule Engine in HyperLedger Fabric, via HyperLedger Composer. Capture traces and metrics for
auditing, reporting and analytics purpose
Govern
Allow Business Partners to collaborate, deploy and govern their Smart Contracts. (negociation, change
management process, auditing, reporting…)
IBM Operational Decision Manager: https://www.ibm.com/cloud-computing/products/business-process-management/business-rules/
38Page© 2018 IBM Corporation
Wrap-up
• Smart Contract is a key concept in Blockchain. The logic applied to transactions is likely to be
Business-related.
• IBM ODM, as the Market-leading Decision Management platform, provides Enterprise-class
capabilities to define and manage Business-logic and make it accessible to the Business.
• The combination of Blockchain/Smart Contract and ODM is a way to go beyond technology and
include Business stakeholders in the value chain.
39Page© 2018 IBM Corporation
Backup
40Page© 2018 IBM Corporation
http://ibm.biz/odm-blockchain
https://github.com/ODMDev/sample-blockchain-vehicle-lifecycle
Article
Sample
References
41Page© 2018 IBM Corporation
Vehicle Lifecycle Blockchain Application
• Developed with Hyperledger Composer and run on Hyperledger Fabric
• Manage the overall lifecycle of a Vehicle from Order to Recycling through registration and
various ownership transfer
• Detect suspicious ownership transfer using Business Rules externalized in ODM
https://www.youtube.com/watch?v=IgNfoQQ5Reg
42Page© 2018 IBM Corporation
Vehicle Lifecycle Data Model
43Page© 2018 IBM Corporation
Vehicle Lifecycle Data Model in Composer
Participants, Assets and Transactions are defined in HyperLedger Composer
44Page© 2018 IBM Corporation
Vehicle Lifecycle Data Model in ODM
• The same model is designed in ODM as a Java Execution Model (XOM) and a Business Object Model (BOM).
• Could be generated from Composer
• A Business Vocabulary is created in ODM using the business terminology
45Page© 2018 IBM Corporation
Vehicle Lifecycle Data Model in ODM
Based on the Decision Service signature, ODM generates a REST API
46Page© 2018 IBM Corporation
Decision: is this transaction suspicious?
Is the ownership transfer of this Vehicle from this Seller to this Buyer suspicious?
47Page© 2018 IBM Corporation
Demo – 11 Steps Demo
48Page© 2018 IBM Corporation
• HyperLedger Fabric and Composer deployed as a set of Docker Containers
Step1 – Start Hyperledger Fabric and Composer
Please refer to https://hyperledger.github.io/composer/installing/development-tools.html to install and run
HyperLedger Fabric and Composer.
49Page© 2018 IBM Corporation
• Start the ODM Rule Execution Server Docker Container
Step 2 – Start ODM RES Docker Container
In odm-runtime directory , invoke docker-compose up command
50Page© 2018 IBM Corporation
• Start the Deployment Service facade
Step 3 – Start ODM Deployment Service
In odm-deployer directory , invoke docker-compose up command
51Page© 2018 IBM Corporation
• Use Rule Designer to build the XOM and the Ruleapp
it packages the XOM jar and the Ruleapp in the ‘output’ directory
Step 4 – Build the XOM and the RuleApp
Launch IBM ODM Rule Designer on a workspace and import projects from vehicle-lifecycle-xom
and vehicle-lifecycle-decision-service
52Page© 2018 IBM Corporation
• Using Composer API to build and deploy vehicle-lifecycle@1.0.0.bna
Step 5 – Deploy the Vehicle Lifecycle Business Network to Blockchain
Go to vehicle-lifecycle directory , invoke npm run deploy command
53Page© 2018 IBM Corporation
• XOM is built from Rule Designer and deployed to the RES through a Blockchain
transaction
Step 6 – Deploy the XOM to the RES
In vehicle-lifecycle-cli directory, invoke npm run deployXom command (*)
(*) the first time you have to invoke npm install to
initialize the command line
54Page© 2018 IBM Corporation
Step 7 – Deploy the RuleApp to the RES
• The Ruleapp is built from Rule Designer and deployed to the RES through a Blockchain
transaction
In vehicle-lifecycle-cli directory, invoke npm run deployRuleapp command
55Page© 2018 IBM Corporation
• Send specific PrivateVehicleTransfer transactions that are detected as suspicious by
ODM. The decision service returns the suspicion message related to the vehicle
Step 8 – Submit suspicious transactions
In vehicle-lifecycle-cli directory, invoke npm run demo command
56Page© 2018 IBM Corporation
• Use ODM Tooling to change the Business Rules. Increment the version number of the
Ruleset and generate the new Ruleapp archive
Step 9 – Updating the business logic
57Page© 2018 IBM Corporation
• Submit a RuleUpdated transaction with the new ruleapp
Npm run list (in vehicle-lifecycle directory) >
Step 10 – Deploy the new version of the RuleApp
In vehicle-lifecycle-cli directory, invoke the following node command
58Page© 2018 IBM Corporation
• Submit a suspicious transfer again
Step 11 – See impact of business logic change

More Related Content

PDF
Making blockchain real for business
PDF
IBM Blockchain Usecase - Nov 2016
PDF
Blockchain Explained v5.20
PDF
Getting Started with Cloud Foundry on Bluemix
PDF
Modeling Blockchain Applications v1.02
PDF
IBM Blockchain Platform Explained v2.2
PDF
IBM - Blockchain Explained - Introduction for Business
PDF
Brussels Hyperledger Meetup - IBM Blockchain Explained
Making blockchain real for business
IBM Blockchain Usecase - Nov 2016
Blockchain Explained v5.20
Getting Started with Cloud Foundry on Bluemix
Modeling Blockchain Applications v1.02
IBM Blockchain Platform Explained v2.2
IBM - Blockchain Explained - Introduction for Business
Brussels Hyperledger Meetup - IBM Blockchain Explained

What's hot (20)

PDF
IBM-BLOCKCHAIN-DECK
PDF
IBM Blockchain PoV: Hyperledger genesis block
PDF
Blockchain explained cata
PDF
Hyperledger: Advancing Blockchain Technology for Business
PDF
IBM Blockchain Platform - Architectural Good Practices v1.0
PDF
Using IBM Blockchain Platform (November 2019)
PDF
IBM Blockchain Usage Patterns v1.3
PDF
Ibm system storage solutions handbook
PPTX
Blockchain Fundamentals Quickstart
PPTX
How to design, code, deploy and execute a smart contract
PPTX
How to get started with IBM Blockchain
PDF
Making Blockchain Real for Business at the "z Systems Agile Enterprise Develo...
PDF
Blockchain a-new-disruption-in-financial-servies by ibm
PDF
IBM Blockchain Platform Technical Introduction v1.1
PPTX
Kathleen Breitman at the Hyperledger Meetup
PPTX
Blockchain Fundamentals for Technology Engineers
PDF
Blockchain FinTech PoC
PDF
IBM Bluemix Nice Meetup #4-20170302 6 Meetup @INRIA - BlockChain
PPTX
Blockchain in enterprise - Challenges, Considerations and Designs
PDF
"Creating a Competitive Edge Using Blockchain Technology"
IBM-BLOCKCHAIN-DECK
IBM Blockchain PoV: Hyperledger genesis block
Blockchain explained cata
Hyperledger: Advancing Blockchain Technology for Business
IBM Blockchain Platform - Architectural Good Practices v1.0
Using IBM Blockchain Platform (November 2019)
IBM Blockchain Usage Patterns v1.3
Ibm system storage solutions handbook
Blockchain Fundamentals Quickstart
How to design, code, deploy and execute a smart contract
How to get started with IBM Blockchain
Making Blockchain Real for Business at the "z Systems Agile Enterprise Develo...
Blockchain a-new-disruption-in-financial-servies by ibm
IBM Blockchain Platform Technical Introduction v1.1
Kathleen Breitman at the Hyperledger Meetup
Blockchain Fundamentals for Technology Engineers
Blockchain FinTech PoC
IBM Bluemix Nice Meetup #4-20170302 6 Meetup @INRIA - BlockChain
Blockchain in enterprise - Challenges, Considerations and Designs
"Creating a Competitive Edge Using Blockchain Technology"
Ad

Similar to IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes & Rule-based Smart Contracts (20)

PDF
IBM Bluemix Nice Meetup - 20171120 - Smart Contracts
PDF
SCAT-Final block chain detection .pdf
PDF
INFOGRAPHIC: Smart contracts between hype and reality
PDF
Smart contracts infographic
PDF
Blockchain Smart Contracts - getting from hype to reality
PDF
Smart Contracts in Financial Services: Getting from Hype to Reality. Report
PDF
THE EVOLUTION OF SMART CONTRACTS: TRANSFORMING BUSINESS PROCESSES
PDF
Ibm blockchain - Hyperledger 15.02.18
PDF
The rise of cryptocurrency &amp; smart contract in blockchain industry
PDF
OVERVIEW OF SMART CONTRACT & ADOPTION
PDF
Smart Contract Audit and Development
PDF
Making blockchain works for business
PDF
Blockchain and Smart Contracts (Series: Blockchain Basics 2020)
PDF
Blockchan ready f.business
PDF
Making blockchain ready for business
PDF
Making blockchain ready for business
PDF
Blockchain
PPTX
Blockchain 2.0
PDF
Blockchain and Smart Contracts (Series: Blockchain Basics)
PDF
Digital Transformation and Blockchain
IBM Bluemix Nice Meetup - 20171120 - Smart Contracts
SCAT-Final block chain detection .pdf
INFOGRAPHIC: Smart contracts between hype and reality
Smart contracts infographic
Blockchain Smart Contracts - getting from hype to reality
Smart Contracts in Financial Services: Getting from Hype to Reality. Report
THE EVOLUTION OF SMART CONTRACTS: TRANSFORMING BUSINESS PROCESSES
Ibm blockchain - Hyperledger 15.02.18
The rise of cryptocurrency &amp; smart contract in blockchain industry
OVERVIEW OF SMART CONTRACT & ADOPTION
Smart Contract Audit and Development
Making blockchain works for business
Blockchain and Smart Contracts (Series: Blockchain Basics 2020)
Blockchan ready f.business
Making blockchain ready for business
Making blockchain ready for business
Blockchain
Blockchain 2.0
Blockchain and Smart Contracts (Series: Blockchain Basics)
Digital Transformation and Blockchain
Ad

More from IBM France Lab (20)

PDF
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
PDF
20200114 - IBM Cloud Paris Meetup - DevOps
PDF
20200128 - Meetup Nice Côte d'Azur - Agile Mindset
PDF
Défis de l'IA : droits, devoirs, enjeux économiques et éthiques
PDF
Meetup ibm abakus banque postale
PDF
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
PDF
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
PDF
IBM Watson IOT - Acoustic or Visual Insights
PDF
Retour expérience Track & Trace - IBM using Sigfox.
PDF
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
PDF
IBM Cloud Paris Meetup - 20190520 - IA & Power
PDF
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
PDF
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
PDF
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
PDF
IBM Cloud Paris Meetup - 20190129 - Assima
PDF
IBM Cloud Paris Meetup - 20190129 - Myrtea
PDF
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
PDF
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
PDF
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
PDF
IBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200114 - IBM Cloud Paris Meetup - DevOps
20200128 - Meetup Nice Côte d'Azur - Agile Mindset
Défis de l'IA : droits, devoirs, enjeux économiques et éthiques
Meetup ibm abakus banque postale
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
IBM Watson IOT - Acoustic or Visual Insights
Retour expérience Track & Trace - IBM using Sigfox.
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
IBM Cloud Paris Meetup - 20190520 - IA & Power
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Paris Meetup - 20190129 - Assima
IBM Cloud Paris Meetup - 20190129 - Myrtea
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
IBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot

Recently uploaded (20)

DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
KodekX | Application Modernization Development
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPT
Teaching material agriculture food technology
PDF
Approach and Philosophy of On baking technology
The AUB Centre for AI in Media Proposal.docx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Electronic commerce courselecture one. Pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Big Data Technologies - Introduction.pptx
Network Security Unit 5.pdf for BCA BBA.
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The Rise and Fall of 3GPP – Time for a Sabbatical?
NewMind AI Monthly Chronicles - July 2025
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
KodekX | Application Modernization Development
Dropbox Q2 2025 Financial Results & Investor Presentation
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
20250228 LYD VKU AI Blended-Learning.pptx
Teaching material agriculture food technology
Approach and Philosophy of On baking technology

IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes & Rule-based Smart Contracts

  • 1. 1Page© 2018 IBM Corporation© 2018 IBM Corporation Blockchain Business Processes & Rule-based Smart Contracts With IBM Operational Decision Manager October 2018 Stephane Mery Distinguished Engineer, IBM ODM Chief Architect
  • 2. 2 It has been estimated that a blockchain “is about 80% business process change and 20% technology implementation” Source: Deloitte, Blockchain: Enigma. Paradox. Opportunity, 2016, page 11 Blockchain will foster automation of processes at the edge of the Enterprise. Connecting your systems and data will be a significant integration challenge. What will be the impact on your existing processes? How can you make your systems ready to participate? Process Integration
  • 3. 3 Letter of credit process – without Blockchain
  • 4. 4 Letter of credit – with Blockchain • Distributed, immutable ledger • Replicated on each participant’s system • Contract clauses automated by Smart Contracts
  • 5. 5 Participant Process Orchestration - Choregraphy Participant Shared Process Private Process Private Process Participant Participant Participant Participant Participant Blockchain Because business rules and smart contracts that execute based on one or more conditions can be built into the platform, blockchain business networks can evolve to support end-to-end business processes and a wide range of activities. IBM Institute for Business Value, Oct 2016
  • 6. 6 Disruption ahead! • Entire industry business processes will be re-invented, using Blockchain as medium • The eco-system will have to adapt its own business processes • Failure to do so will foster emergence of brand new, “born-in-blockchain” eco- systems • Look at industries where eco-system processes are today manual • Look at industries where “middlemen” are taking the biggest share of the trade
  • 7. 7Page© 2018 IBM Corporation Blockchain for Business Append-only distributed system of record shared across business network Business terms embedded in transaction database & executed with transactions Transactions are endorsed by relevant participants Ensuring appropriate visibility; transactions are secure, authenticated & verifiable Privacy Shared ledger Smart contract Trust
  • 8. 8Page© 2018 IBM Corporation Smart Contracts • Verifiable, signed • Encoded in programming language • Example: – Defines contractual conditions under which a bond transfer occurs Business rules associated with the transaction
  • 9. 9 Blockchain Smart Contracts • Automate transaction processing logic in the Blockchain • Executed by all nodes • Consensus needed to validate the side effects • Limited in Bitcoin • Turing-complete in other blockchain platforms (Hyperledger, Ethereum…) • Written in code – Go Lang, Javascript, Solidity… Term coined by Nick Szabo in 1994: computer protocol to digitally enforce a contract https://en.wikipedia.org/wiki/Smart_contract Combined with immutability, the ability to automate transaction processing is what make Blockchain a disruptive technology
  • 10. 10 Smart Contracts – not smart, nor contracts…. • Smart Contracts are no more than code processing transactions embedded in the Blockchain platform • “Smart” is more a marketing twist • A real legally binding contract is much more than code • Must be able to deal with ambiguity in court • Would require end-to-end legally-approved system • However, still a powerful mechanism to automate the conditions of value exchange • Trusted execution environment, actions are tracked, code is transparent • “The Code is the Law” philosophy – Decentralized Autonomous Organization
  • 11. 11 Smart Contracts are dangerous • They are manipulating value (crypto-currency or other assets) • They are code, subject to bugs • 2016 - $40M stolen due to a Solidity bug in Ethereum • 2017 - $30M stolen and $150M locked due to a bug in multi-signature wallet technology è but… Bitcoin core technology has never been hacked Technology is in its infancy, need time to mature and be fully secured
  • 12. 12 Ricardian Contracts – half-way between Law and code • Contract readable by lawyers and machines • Keeping a text version of the contract, digitally signed • Source of Truth in court • Extract machine-readable conditions • To automate execution of the contract • Startup in LegalTech are on it • Clause.io • Livecontracts.io
  • 13. 13 Accord Project – standard for legal smart contracts https://www.accordproject.org/ Nascent standardization initiative to make legal & code closer
  • 14. 14 Challenges with Smart Contracts • Sometimes Law and regulations are ambiguous… on purpose • Smart Contracts can have bugs • Smart Contracts define business logic in technical code • Who decide when and how the contract need to be amended? • How Smart Contract can use knowledge from the real world? • Oracles
  • 15. 15 How Decision Management can be an answer? • Decision Management is a discipline to involve Business people in the implementation of the business logic in IT systems • Decisions are extracted from applications and encoded as readable Business Rules • Can evolve at the pace of the business • Governance and life-cycle management involve both Business & IT • Business Agility, transparency, auditability, governance are the key benefits • Smart Contracts are typical examples of code that represent business logic https://en.wikipedia.org/wiki/Decision_management
  • 16. 16Page© 2018 IBM Corporation Blockchain = Process + Decisions Eco-system processes automated with Smart Contracts Rule-based Smart Contracts Encoding agreement as business rules
  • 17. 17Page© 2018 IBM Corporation Decision Management and Blockchain • Implement real contracts if Blockchain is used a platform to trade value • Contracts have clauses that are business conditions Smart Contract is the Blockchain mechanism to automate transaction processing logic. • On the market for more than 15 years • Used by ~1,000 Customers Worldwide for critical business operations – Finance, Insurance, Retail, Supply Chain, Transportation… • Provides Enterprise-class capabilities to author, execute and manage decision logic IBM Operational Decision Manager (ODM) is the market-leading Business Rules Management System
  • 18. 18Page© 2018 IBM Corporation Smart Contracts – Challenges and Opportunities Code in Smart Contract is often Business Logic • Implementing the clauses of contract & agreement between transacting parties • Making transactions compliant to the regulation • Code is essentially “business rules” encoded in Go, Java or JavaScript. • -- quickly becomes complex to implement and manage without a rule engine • è need to be more accessible to Business Stakeholders, a high-level business-friendly language would be better Business Logic might change frequently • Need proper governance around change • è need extensive tooling to govern Smart Contracts life-cycle Semantic of the Smart Contract should be well defined • Expressivity should be limited to early detect inconsistencies, ambiguities and contradictions • We should be able to verify, test and simulate Smart Contracts • è A Rule Engine provides a safer environment, trading expressivity for safety
  • 19. 19Page© 2018 IBM Corporation Smart Contracts – Use Cases Digital Rights dispatch to Artists - Current solutions spoil artists - Intermediaries capture a lot of the value - Smart Contracts to store artist rights encoded as rules - Smart Contract to encode payment split depending on when/where a song is broadcast, for instance - …
  • 20. 20Page© 2018 IBM Corporation Smart Contracts – Use Cases Parametric Insurance - Insurance contract fully automated using Smart Contracts - Policy conditions defined as Business Rules Insurance Contract define a location and the weather conditions triggering payout Weather events published as transactions in Blockchain Automatic payout as weather conditions meet contract clauses
  • 21. 21Page© 2018 IBM Corporation Introducing IBM Operational Decision Manager
  • 22. 22Page© 2018 IBM Corporation Introducing IBM ODM Business Rules ApplicationApplication Decision logic § Natural language rules can be easily read § Externalized rules are easy to change § Centralized rules enable reuse and consistency § Rules written in software code cannot be read by business people § Hard coded rules are difficult to change § Rules intertwined within applications cannot be reused by other systems Without Decision Management With Decision Management
  • 23. 23Page© 2018 IBM Corporation Key Capabilities
  • 24. 24Page© 2018 IBM Corporation Author – Decision Service Author Business Analysts prepare the Decision Service structure and define contract in Rule Designer Rules are organized in reusable and composable Rule Projects The Business Decision is exposed as a Decision Service
  • 25. 25Page© 2018 IBM Corporation Author – Business Vocabulary Author Business Analysts can represent complex Business Data Model that Developers can integrate with Enterprise Data Business Object Model Business Vocabulary Loan § amount § loanScore § riskScore § approve(message) § reject(message) the loan § the amount of <the loan> § the score of <the loan> § the risk associated to of <the loan> § accept <the loan> with … § reject <the loan> with … Data Model Rule Language X S D J A V A
  • 26. 26Page© 2018 IBM Corporation Author – Business Rules Author Business Users can express and orchestrate complex Business Logic
  • 27. 27Page© 2018 IBM Corporation Govern
  • 28. 28Page© 2018 IBM Corporation Automate
  • 29. 29Page© 2018 IBM Corporation Rule-based Smart Contracts with IBM ODM
  • 30. 30Page© 2018 IBM Corporation ODM for Smart Contracts – Public Assets • ODM for Blockchain Smart Contracts: http://ibm.biz/odm-blockchain Article: Code Sample: • ODM for Blockchain Smart Contracts: https://github.com/ODMDev/sample-blockchain-vehicle-lifecycle Based on: Hyperledger Fabric 1.1 Hyperledger Composer 0.19+
  • 31. 31Page© 2018 IBM Corporation Smart Contracts leveraging IBM Operational Decision Manager è Externalizing Smart Contract business logic in ODM - Business decisions involved in Smart Contracts are delegated to the ODM rule engine - eXecution Object Model generated from HyperLedger Composer Data Model - Business stakeholders are maintaining the logic in ODM tools, like Decision Center è Integrating ODM Rule Execution Server with Hyperledger Fabric - Deploying Rule Execution Server in Blockchain peer nodes - Calling Decision Services REST API from Hyperledger Composer Smart Contracts - Deploying Ruleset through Blockchain transactions
  • 32. 32Page© 2018 IBM Corporation Smart Contracts – Running ODM rules in-chain - ODM rule engine part of the Blockchain Peer Nodes validating transactions - Deployed as a Docker image - Transaction processing logic expressed as Business Rules with ODM - Ruleset stored in the Blockchain and deployed through a Blockchain transaction - Out-process REST call from Composer Transaction Processor Leveraging ODM Business-friendly tooling to author, test, simulate and govern Smart Contract rules
  • 33. 33Page© 2018 IBM Corporation • Decision Services are implemented in ODM - eXecution Object Model and BOM are generated from HyperLedger Composer domain model - Business Vocabulary created in ODM - Decisions are implemented as Business Rules & Decision Tables using ODM tooling • Decision Services exposed as REST/JSON API - Signature based on the BOM - Called from the Smart Contract Invoking Decision Services
  • 34. 34Page© 2018 IBM Corporation Invoking Decision Services • HyperLedger Composer Transaction Processors calling-out to Decision Service REST API - Transaction data and assets are serialized in JSON and passed to the POST API - Decision result data come back as JSON object, used in the Java Script Transaction Processor code HyperLedger Composer Transaction Processor Using Composer ‘post’ API passing the transaction and related assets referenced by the transaction Transaction Processor code decodes the decision service response and takes the appropriate action
  • 35. 35Page© 2018 IBM Corporation Business Rules life-cycle • New version of the Ruleset are submitted to the Blockchain as Transactions - Specific RuleAppUpdated Transaction type specified in Composer - Specific Transaction Processor in Composer to handle the transaction and deploy the ruleset - Ruleset deployed to the RES associated to the peer through a facade to the RES exposed as a REST API • Most current Ruleset version is stored in the Blockchain - Ruleset are stored in the Blockchain for reference - The most current version number is written in an asset and used when calling out Decision Services - If deployment transaction fails, transaction is rolled-back and most current version is unchanged • XOM changes are deployed the same way - All logic execution support secured by the Blockchain
  • 36. 36Page© 2018 IBM Corporation Smart Contracts – Business Rules Lifecycle Management 1 Business Users update rules in Decision Center following proper Governance workflow 2 When Business Rules are agreed and properly validated, they are pushed to the Ledger as a Transaction and dispatched to all Nodes Composer Chaincode Specific Transaction Processor ODM Rule Execution Server RES Deploy REST API Blockchain World State & Ledger Ruleset Deployment Tx 3 Ruleset is stored in the Ledger as well as the current version 4 Ruleset is deployed to the RES 5 When Deployment Tx will be validated on all nodes, the new version of the rules is available Ruleset Blockchain Peer Node Blockchain BusinessNetworkParticipants
  • 37. 37Page© 2018 IBM Corporation Smart Contracts – Leveraging IBM Operational Decision Manager Author Empower Business Stakeholders to author business-friendly Smart Contracts, validate and simulate them. Run Execute in a Rule Engine in HyperLedger Fabric, via HyperLedger Composer. Capture traces and metrics for auditing, reporting and analytics purpose Govern Allow Business Partners to collaborate, deploy and govern their Smart Contracts. (negociation, change management process, auditing, reporting…) IBM Operational Decision Manager: https://www.ibm.com/cloud-computing/products/business-process-management/business-rules/
  • 38. 38Page© 2018 IBM Corporation Wrap-up • Smart Contract is a key concept in Blockchain. The logic applied to transactions is likely to be Business-related. • IBM ODM, as the Market-leading Decision Management platform, provides Enterprise-class capabilities to define and manage Business-logic and make it accessible to the Business. • The combination of Blockchain/Smart Contract and ODM is a way to go beyond technology and include Business stakeholders in the value chain.
  • 39. 39Page© 2018 IBM Corporation Backup
  • 40. 40Page© 2018 IBM Corporation http://ibm.biz/odm-blockchain https://github.com/ODMDev/sample-blockchain-vehicle-lifecycle Article Sample References
  • 41. 41Page© 2018 IBM Corporation Vehicle Lifecycle Blockchain Application • Developed with Hyperledger Composer and run on Hyperledger Fabric • Manage the overall lifecycle of a Vehicle from Order to Recycling through registration and various ownership transfer • Detect suspicious ownership transfer using Business Rules externalized in ODM https://www.youtube.com/watch?v=IgNfoQQ5Reg
  • 42. 42Page© 2018 IBM Corporation Vehicle Lifecycle Data Model
  • 43. 43Page© 2018 IBM Corporation Vehicle Lifecycle Data Model in Composer Participants, Assets and Transactions are defined in HyperLedger Composer
  • 44. 44Page© 2018 IBM Corporation Vehicle Lifecycle Data Model in ODM • The same model is designed in ODM as a Java Execution Model (XOM) and a Business Object Model (BOM). • Could be generated from Composer • A Business Vocabulary is created in ODM using the business terminology
  • 45. 45Page© 2018 IBM Corporation Vehicle Lifecycle Data Model in ODM Based on the Decision Service signature, ODM generates a REST API
  • 46. 46Page© 2018 IBM Corporation Decision: is this transaction suspicious? Is the ownership transfer of this Vehicle from this Seller to this Buyer suspicious?
  • 47. 47Page© 2018 IBM Corporation Demo – 11 Steps Demo
  • 48. 48Page© 2018 IBM Corporation • HyperLedger Fabric and Composer deployed as a set of Docker Containers Step1 – Start Hyperledger Fabric and Composer Please refer to https://hyperledger.github.io/composer/installing/development-tools.html to install and run HyperLedger Fabric and Composer.
  • 49. 49Page© 2018 IBM Corporation • Start the ODM Rule Execution Server Docker Container Step 2 – Start ODM RES Docker Container In odm-runtime directory , invoke docker-compose up command
  • 50. 50Page© 2018 IBM Corporation • Start the Deployment Service facade Step 3 – Start ODM Deployment Service In odm-deployer directory , invoke docker-compose up command
  • 51. 51Page© 2018 IBM Corporation • Use Rule Designer to build the XOM and the Ruleapp it packages the XOM jar and the Ruleapp in the ‘output’ directory Step 4 – Build the XOM and the RuleApp Launch IBM ODM Rule Designer on a workspace and import projects from vehicle-lifecycle-xom and vehicle-lifecycle-decision-service
  • 52. 52Page© 2018 IBM Corporation • Using Composer API to build and deploy vehicle-lifecycle@1.0.0.bna Step 5 – Deploy the Vehicle Lifecycle Business Network to Blockchain Go to vehicle-lifecycle directory , invoke npm run deploy command
  • 53. 53Page© 2018 IBM Corporation • XOM is built from Rule Designer and deployed to the RES through a Blockchain transaction Step 6 – Deploy the XOM to the RES In vehicle-lifecycle-cli directory, invoke npm run deployXom command (*) (*) the first time you have to invoke npm install to initialize the command line
  • 54. 54Page© 2018 IBM Corporation Step 7 – Deploy the RuleApp to the RES • The Ruleapp is built from Rule Designer and deployed to the RES through a Blockchain transaction In vehicle-lifecycle-cli directory, invoke npm run deployRuleapp command
  • 55. 55Page© 2018 IBM Corporation • Send specific PrivateVehicleTransfer transactions that are detected as suspicious by ODM. The decision service returns the suspicion message related to the vehicle Step 8 – Submit suspicious transactions In vehicle-lifecycle-cli directory, invoke npm run demo command
  • 56. 56Page© 2018 IBM Corporation • Use ODM Tooling to change the Business Rules. Increment the version number of the Ruleset and generate the new Ruleapp archive Step 9 – Updating the business logic
  • 57. 57Page© 2018 IBM Corporation • Submit a RuleUpdated transaction with the new ruleapp Npm run list (in vehicle-lifecycle directory) > Step 10 – Deploy the new version of the RuleApp In vehicle-lifecycle-cli directory, invoke the following node command
  • 58. 58Page© 2018 IBM Corporation • Submit a suspicious transfer again Step 11 – See impact of business logic change