ݺߣ

ݺߣShare a Scribd company logo
1
WETSEB @ ICSE 2018
Gothenburg, Sweden
2018-05-27
Florian Wessling, Christopher Ehmke, Marc Hesenius and Volker Gruhn
florian.wessling@paluno.uni-due.de
University Duisburg-Essen, Germany
Prof. Dr. Volker Gruhn
How Much Blockchain Do You Need?
Towards a Concept for Building
Hybrid DApp Architectures
Motivation
• Take advantage of Blockchain technology:
decentralized, trustless, transparent and tamper-proof app environment
• Deal with disadvantages:
blocktime delay, technical complexity, difficult updates
• Difficult to determine:
• Which attributes are important for my use case?
• Which elements of my architecture benefit from blockchain technology?
• Increasing need to build good decentralized app (DApp) architectures
• Best practices, architectural patterns, design patterns for smart contracts
• Concepts to support architectural design of blockchain-based applications are missing
2
Current Approaches
3
• No
• Yes, Public
• Yes, Private
Do I need a Blockchain?
• Yes, 1.2 MB Blocksize,
13s Blocktime, Hybrid
PoS/PoW consensus, ...
• Yes, custom protocol,
9.4s Blocktime, DPoS
consensus, ...
Gap: Finer-grained and balanced approach!
• Four step approach:
• 1. Identify participants
• 2. Identify trust relations between participants
• 3. Identify interactions between participants
• 4. Derive an architectural draft
• Usage
• Adding blockchain technology to existing systems
• Assessing use cases for implementing a new system
4
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
1. Participants
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
2. Trust Relations
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
3. Interactions
Area B
Area A
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
4. Architectural Draft
[2]
• Example use case: Coordination and payment of craftsmen constructing a building
• 1. Identify participants
• 2. Identify trust relations between participants
• Building owner and construction supervisor trust each other
• Contractors only trust supervisor as their only contact with the construction site
• 3. Identify interactions between participants
• Contractors report to supervisor
• Supervisor reports to building owner
• Building owner pays contractors
• 4. Derive an architectural draft
• Use of blockchain technology in Area A makes no sense
• For interaction between Building Owner and Contractors using a blockchain makes sense!
5
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
1. Participants
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
2. Trust Relations
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
3. Interactions
Area B
Area A
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
4. Architectural Draft
[2]
Outlook: Overall Concept
6
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
Area B
Area A
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
B
ZY
S
X
Contractor
Construction
Supervisor
Building
Owner
Contractor Contractor
Architectural Patterns
+ Best Practices
Use Case
Terms
+ Properties
Implementation as 

Smart Contract
+ Design Patterns
• Open issues
• How to model trust? Different levels of trust? Depending on context?
• How to model interactions? What is the right level of abstraction? Which interactions are relevant?
• Clear terminology for terms is required
• Validation
• Small-scale study with group of 8 students (CS Master)
• Build architectures within research projects (building, energy, insurance)
• How to quantify the results? How to measure what a good architecture is?
Future Work
7
8
Thank you! 😄
Questions? 💭
Discussion? 💬

More Related Content

How Much Blockchain Do You Need? Towards a Concept for Building Hybrid DApp Architectures (WETSEB @ ICSE 2018)

  • 1. 1 WETSEB @ ICSE 2018 Gothenburg, Sweden 2018-05-27 Florian Wessling, Christopher Ehmke, Marc Hesenius and Volker Gruhn florian.wessling@paluno.uni-due.de University Duisburg-Essen, Germany Prof. Dr. Volker Gruhn How Much Blockchain Do You Need? Towards a Concept for Building Hybrid DApp Architectures
  • 2. Motivation • Take advantage of Blockchain technology: decentralized, trustless, transparent and tamper-proof app environment • Deal with disadvantages: blocktime delay, technical complexity, difficult updates • Difficult to determine: • Which attributes are important for my use case? • Which elements of my architecture benefit from blockchain technology? • Increasing need to build good decentralized app (DApp) architectures • Best practices, architectural patterns, design patterns for smart contracts • Concepts to support architectural design of blockchain-based applications are missing 2
  • 3. Current Approaches 3 • No • Yes, Public • Yes, Private Do I need a Blockchain? • Yes, 1.2 MB Blocksize, 13s Blocktime, Hybrid PoS/PoW consensus, ... • Yes, custom protocol, 9.4s Blocktime, DPoS consensus, ... Gap: Finer-grained and balanced approach!
  • 4. • Four step approach: • 1. Identify participants • 2. Identify trust relations between participants • 3. Identify interactions between participants • 4. Derive an architectural draft • Usage • Adding blockchain technology to existing systems • Assessing use cases for implementing a new system 4 B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 1. Participants B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 2. Trust Relations B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 3. Interactions Area B Area A B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 4. Architectural Draft [2]
  • 5. • Example use case: Coordination and payment of craftsmen constructing a building • 1. Identify participants • 2. Identify trust relations between participants • Building owner and construction supervisor trust each other • Contractors only trust supervisor as their only contact with the construction site • 3. Identify interactions between participants • Contractors report to supervisor • Supervisor reports to building owner • Building owner pays contractors • 4. Derive an architectural draft • Use of blockchain technology in Area A makes no sense • For interaction between Building Owner and Contractors using a blockchain makes sense! 5 B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 1. Participants B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 2. Trust Relations B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 3. Interactions Area B Area A B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor 4. Architectural Draft [2]
  • 6. Outlook: Overall Concept 6 B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor Area B Area A B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor B ZY S X Contractor Construction Supervisor Building Owner Contractor Contractor Architectural Patterns + Best Practices Use Case Terms + Properties Implementation as 
 Smart Contract + Design Patterns
  • 7. • Open issues • How to model trust? Different levels of trust? Depending on context? • How to model interactions? What is the right level of abstraction? Which interactions are relevant? • Clear terminology for terms is required • Validation • Small-scale study with group of 8 students (CS Master) • Build architectures within research projects (building, energy, insurance) • How to quantify the results? How to measure what a good architecture is? Future Work 7
  • 8. 8 Thank you! 😄 Questions? 💭 Discussion? 💬