/blockchain-generation

Primary LanguageJupyter NotebookEclipse Public License 2.0EPL-2.0

Requirement-Driven Generation of Distributed Ledger Architectures

Generated models

The refinery directory contains our generated Hyperledger Fabric architecture models. Each model is available in both Refinery textual format (.refinery) and exported as an image (.png).

Some representative examples are shown below.

We also included links to open the initial model and the example model in the Refinery online editor. Because the online editor does not support multi-file projects, we copied our domain library directly into the online editor instead of referencing it using the import keyword from the hyperledger_fabric.refinery file. To show derived references, such as collaboratesWith, click on the Filter panel icon (Filter panel icon) and customize their visibility as desired.

The timeout of model generation in the online editor is much shorter (10 seconds instead of 5 minutes) than the timeout we used in our paper. Therefore, generation may sometimes time out. Install and run Refinery locally to run with a longer timeout and more memory. The full, ready-to-run generator pipeline will be submitted as an artifact for the paper later.

raft-size1

Initial model file (raft_size1/initial.problem)

▶ Open initial model in Refinery online editor

Example generated model:

Example model for raft-size1

Model file (raft_size1/model0.refinery)

▶ Open model in Refinery online editor

kafka-size1

Initial model file (kafka_size1/initial.problem)

▶ Open initial model in Refinery online editor

Example generated model:

Example model for kafka-size1

Model file (kafka_size1/model2.refinery)

▶ Open model in Refinery online editor