fabric composer - construct 2017

10
© 2017 IBM Corporation 1 Page © 2017 IBM Corporation Introduction to Fabric Composer Construct 2017 Simon Stone, Software Engineer @mrsimonstone

Upload: simon-stone

Post on 08-Feb-2017

326 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Fabric Composer - Construct 2017

© 2017 IBM Corporation

1Page© 2017 IBM Corporation

Introduction to Fabric ComposerConstruct 2017

Simon Stone, Software Engineer@mrsimonstone

Page 2: Fabric Composer - Construct 2017

© 2017 IBM Corporation

2

Blockchain for business

• Blockchain builds on basic business concepts– Business Networks connect businesses– Assets flow over business networks– Transactions describe asset exchange– Participants submit transactions– Contracts define the rules for transactions– The ledger is a log of transactions

• Blockchain provides a shared, replicated ledger– Consensus, immutability, finality, provenance

Page 3: Fabric Composer - Construct 2017

© 2017 IBM Corporation

3

Hyperledger Fabric

• Hyperledger Fabric provides a technical foundation for transactional applications across business networks:– Smart contracts (chaincode) are executed on a distributed network– Inputs go into an immutable ledger; outputs go to a data store (world state)– Applications are built from the ground up

Page 4: Fabric Composer - Construct 2017

© 2017 IBM Corporation

4

Fabric Composer

• Fabric Composer is a framework to accelerate the development of applications built on top of Hyperledger Fabric– Start from the business level; model network assets, participants, and

transactions– Applications use business centric APIs to invoke transactions that create, delete,

and update assets and transfer them between participants– Assets, participants, and transactions are recorded in the world state in registries– Easily integrate Fabric with existing business processes and systems of record– Emphasis on quick solution creation and business-centric vocabulary

• Fabric Composer has been open sourced this week (relevant links are at end of presentation!) and it will be developed in the open.

Page 5: Fabric Composer - Construct 2017

© 2017 IBM Corporation

5

Key development concepts

• Model files describe the assets, participants, and transactions in a business network– Expressive modelling language includes relationships, arrays, and validation rules– Data serialized as JSON, and is fully validated by Fabric Composer runtime

• Access control lists define rules for sharing and privacy– Rules automatically enforced by Fabric Composer runtime

• Transaction processors implement additional business requirements– Standard JavaScript code executed on the Fabric network by Fabric Composer

runtime

• A business network definition is the set of the above for a given business network.

Page 6: Fabric Composer - Construct 2017

© 2017 IBM Corporation

6

Complete, familiar, and open development toolset

CLI utilities

Data modelling JavaScriptbusiness logic Web playground

Editor support Integration

$ composer

Client libraries

composer-clientcomposer-admin

Code generation

Page 7: Fabric Composer - Construct 2017

Buyer

Owner Buyer

Insurer

Listings registryVehicle registry

"$class": "org.acme.vehicle.auction.VehicleListing", "listingId": "LIST_1234","reservePrice": 500, "description": "Car sale for playback 2", "state": "FOR_SALE", "vehicle": "VIN_123456"

"$class": "org.acme.vehicle.auction.Vehicle", "vin": "VIN_123456", "owner": "[email protected]"

net.biz.vehicle.auction

sell car

offer bid for car

offer bid for car

Transactions• (Sell)• Offer

• Close Bidding

closebidding

( Counterparties outside the business network )

Car Auction Business Network

1 23

Business NetworkParticipants

IdentityAssets

RegistriesTransactions

(Events)(Links)

THIS DEMO1. Modelling, testing and exposing the business network2. Applications consuming the business network3. Integrating existing systems with the business network

2

DMV

Existing system

AuctioneerOwner

KV storeChaincode

PeersConsensus

App

App

App

Page 8: Fabric Composer - Construct 2017

© 2017 IBM Corporation

8

Demo

• {{demo}}

Page 9: Fabric Composer - Construct 2017

© 2017 IBM Corporation

9

Links

• We’re all over the internet!– Docs and Getting Started guide: https://fabric-composer.github.io/– Public demo: http://fabric-composer.mybluemix.net/#/editor– Source code: https://github.com/fabric-composer/fabric-composer/– NPM modules: https://www.npmjs.com/search?q=fabric-composer– JSDoc: https://fabric-composer.github.io/jsdoc/develop/index.html– Slack: https://fabric-composer.slack.com/– Stack Overflow: http://

stackoverflow.com/questions/tagged/fabric-composer

Page 10: Fabric Composer - Construct 2017

© 2017 IBM Corporation

10Page© 2017 IBM Corporation

Thank you!