4. How to benchmark distributed ledger
technologies for the enterprise in 2019 Zug, 24.June.2019
5. …the methodology of comparing business processes and
performance metrics to industry bests and best practices.
Dimensions typically measured are quality, time and cost.
…using a specific indicator … resulting in a metric of
performance that is then compared to others.
https://en.wikipedia.org/wiki/Benchmarking
Benchmarking
6. Components for benchmarking distributed ledger technologies
Value drivers
Core characteristics/outcomes
expected
1
Weighting table
A multiplication factor given the
presence/absence,
weakness/strength of a value driver
2
Quantitative Analysis -
Score ranking
An objective measurement
obtained by direct observation
4
Utility/Price Analysis
The value obtained divided by the
cost of sustaining the network
3
Qualitative Analysis –
Capabilities Radar
Subjective measurements of the
weakness/strength of a value driver
5
8. Programmability
Transaction management
How easy/difficult it is to:
✓ Build transaction
✓ Broadcast transaction
✓ Confirm transaction
1
Language paradigms
✓ Imperative
✓ Object-oriented
✓ Procedural
✓ Declarative
✓ Functional
2
Memory Operations
Ability to optimize memory usage.
3
IO Operations
✓ Access to network resources
✓ Access to out-of-network
resource
4
CPU Operations
✓ Ability to optimize
instructions/operations
executed.
5
9. Asset tradeability
Asset issuance
✓ How easy/difficult it is to:
✓ Create a fungible asset
✓ Create an non-fungible asset
1
Marketplace
✓ Ability to set a instrument or
system that enables the purchasing
of digital assets.
3
Exchange
✓ Ability to set a instrument or
system that enables the exchange
of an asset with other digital assets.
2
10. Extensibility
Consensus mechanism
Examples such as:
✓ Proof-of-work
✓ Proof-of-authority
✓ Proof-of-stake
✓ Pre-byzantine fault tolerance
1
Block configuration
How easy/difficult it is optimize the
chain of blocks:
✓ Block-time
✓ Block-size
3
Data models
How easy/difficult it is to store:
✓ Key-value store
✓ An arbitrary set of data
✓ An arbitrary data schema
2
Execution
How easy/difficult it is to perform the
execution of business logic through:
✓ Turing completeness
✓ Oracles
4
11. Infrastructure Key Performance Indicators
Throughput
How capable is the network to
process state changes according to
the business environment.
2
Latency tolerance
How tolerant is the network when
there are multiple hops in the
network such as Network delay
5
Scalability
How capable is the network to accept
more nodes according to the business
environment.
3
Fault tolerance
How tolerant is the network's
behavior on:
✓ Crash failure
✓ Corrupt messengers
4
Deployability
How "scriptable" is the network to
enable automation in the enterprise
environment.
1
13. Development tools maturity
API
✓ Coherence of entities & relationships
✓ Domain-related naming conventions
✓ HTTP/REST Conventions
✓ Version history
✓ Age (in years)
1
SDKs
✓ Code editor plugins/templates
✓ Languages available
✓ Entities representations
✓ Cryptographic functions
✓ Integration to other systems
2
Documentation
✓ Attention to detail in github README
✓ Quality of ReadTheDocs-like content
✓ API documentation
✓ Hello-world Tutorials
✓ Advanced tutortials
3
Community/Ecosystem
✓ Github stars
✓ Github issues
✓ Commit activity
✓ PR activity
✓ Available technical training
✓ Stackoverflow questions
✓ Reddit posts
✓ Compatibility with legacy systems
4
14. Information security maturity
Confidentiality
is the property, that information is
not made available or disclosed to
unauthorized individuals, entities, or
processes.
1
Integrity
maintaining and assuring the accuracy
and completeness of data over its
entire lifecycle.
2
Availability
the information must be available
when it is needed... High availability
systems aim to remain available at all
times, preventing service disruptions.
3
Encryption
1a
Zero-knowledge proofs
1b
Consensus mechanism
2a
Fault tolerance
3a
16. How to measure, categorize and score
Baseline calculation
✓ BETTER THAN BASELINE: 1.3
✓ BASELINE: 1.0
✓ WORSE THAN BASELINE: 0.7
3
Categorization
✓ GREAT DOCUMENTATION
✓ NOT BAD DOCUMENTATION
✓ POOR/TERRIBLE DOCUMENTATION
✓ CAPABLE OF FUNGIBLE TOKENS (YES/NO)
✓ EXTENSIBLE WITH ORACLES (YES/NO)
1
Measurement
✓ 200 Txs/sec
✓ 1.5TB of hard disk needed
✓ 5K stars on Github
✓ 120 issues on Github
2
21. 1. Make a list of the value drivers you aim (find inspiration in this doc)
2. Make a weighting table and score ranking for every quantitative value
driver
3. Make a capabilities radar chart for every qualitative value driver
4. Calculate the costs of infrastructure and development and estimate the
utility/price ratio
5. Make a list of technologies you're interested to score
6. Compare results
7. Profit.
DLTs are flourishing and it's hard to choose, so…