SlideShare a Scribd company logo
1
ICSA, Early Career Researchers Forum
Seattle, USA
2018-05-01
Florian Weßling
florian.wessling@paluno.uni-due.de
University Duisburg-Essen, Germany
Prof. Dr. Volker Gruhn
Engineering Software Architectures of 

Blockchain-Oriented Applications
Overview
• Blockchain Intro
• Architectures of Blockchain-based Applications
• Next Steps and Discussion
2
3
Blockchain Intro
Blockchain Technology
• Goal: Saving information
• "A blockchain is a database that can be shared between a group of non-trusting
individuals, without needing a central party to maintain the state of the database."
• Avoid centralization (Server) – Trend towards decentralization (P2P)
• Save information and create consensus (distributed ledger)
• No trust necessary towards a central authority
• Trust towards a self-sustaining protocol using certain incentives to validate
transactions
4
– https://medium.com/loom-network/scalability-tradeoffs-why-the-ethereum-killer-hasnt-arrived-yet-8f60a88e46c0
• Consensus about world state: values of objects
• Transactions modify the world state deterministically
5
Contract 0x123
{insuranceId: 0x485,
premium: 851241,
trigger: 0x791,
setPremium: func(a) {
this.premium = a
}
} Transaction 0x8682934
To: 0x123
Call: setPremium(1500)
Contract 0x123
{insuranceId: 0x485,
premium: 1500,
trigger: 0x791,
setPremium: func(a) {
this.premium = a
}
}
Ethereum
• Each node saves the latest world state
6
Transaction
0x8682934
setPremium(1500)
Node #74
Contract 0x123
{insuranceId: 0x485,
premium: 851241,
trigger: 0x791,
setPremium: func(a) }
Contract 0x815
{...}
Node #74
Contract 0x123
{insuranceId: 0x485,
premium: 851241,
trigger: 0x791,
setPremium: func(a) }
Contract 0x815
{...}
Node #74
Contract 0x123
{insuranceId: 0x485,
premium: 851241,
trigger: 0x791,
setPremium: func(a) }
Contract 0x815
{...}
Transaction
0x8682934
setPremium(1500)
Transaction
0x8682934
setPremium(1500)
Ethereum
• Receive transaction and update world state
7
Node #74
Contract 0x123
{insuranceId: 0x485,
premium: 1500,
trigger: 0x791,
setPremium: func(a) }
Contract 0x815
{...}
Node #74
Contract 0x123
{insuranceId: 0x485,
premium: 1500,
trigger: 0x791,
setPremium: func(a) }
Contract 0x815
{...}
Node #74
Contract 0x123
{insuranceId: 0x485,
premium: 1500,
trigger: 0x791,
setPremium: func(a) }
Contract 0x815
{...}
Ethereum
✅
✅
✅
✅
✅
✅
✅
8
Architectures of
Blockchain-based
Applications
• Increasing need for building blockchain-based applications
(decentralized apps = DApps)
• → Increasing need for good architectures and smart contracts!
• Deal with blockchain properties: decentral, trustless, transparent and immutable
system
• Best practices, architectural patterns, design patterns for smart contracts
• Main Research Question: 

How to determine the architecture of a blockchain-based application?
• Concepts to support architectural design of blockchain-based applications are missing
9
Research Motivation
Which architectural patterns exist in
blockchain-based applications?
• Examine architectures of existing DApps
• A: Self-Generated Transaction
• B: Self-Confirmed Transaction
• C: Delegated Transactions
• Compare pros and cons regarding costs, trust,
complexity, user experience
10
Browser
MetaMask
/ Wallet
Private or Public Blockchain Node
MyEtherWallet
Blockchain
/ EDCC A
Browser
MetaMask
/ Wallet
DApp-Website
Private or Public
Blockchain
Node
Blockchain
/ EDCC B
Browser
DApp-
Website
DApp-Server/Backend
REST
Private or
Public
Blockchain
Node
DApp
Backend
Logic
Transactions
Private or
Public
Blockchain
Node
Websocket
Blockchain
/ EDCC
C
DApp Architectures
[2]
Outlook: Overall Concept
11
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
12
Next Steps
and
Discussion
• Risk: Ethereum technology lock-in
• start with Ethereum, extend to other platforms
• goal: generalized and technology agnostic approach
• Next Steps
• write down research questions and hypotheses
• describe the research outcome/artifacts and methodology how to get there
• Advice from ECRF mentor: Qualitative studies: (semi-)structured interviews/questionnaires
• Examine the Architecture Tradeoff Analysis Method (ATAM): look where Blockchain aspects are not covered
• Working on validation: Three research projects in submission (energy, building, insurance)
Next Steps and Discussion
13
14
Thank you! 😄
Questions? 💭
Discussion? 💬

More Related Content

Recently uploaded

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
GohKiangHock
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
gapen1
 
Liberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptxLiberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptx
Massimo Artizzu
 
YAML crash COURSE how to write yaml file for adding configuring details
YAML crash COURSE how to write yaml file for adding configuring detailsYAML crash COURSE how to write yaml file for adding configuring details
YAML crash COURSE how to write yaml file for adding configuring details
NishanthaBulumulla1
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
mz5nrf0n
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
VALiNTRY360
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
Marcin Chrost
 

Recently uploaded (20)

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
 
Liberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptxLiberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptx
 
YAML crash COURSE how to write yaml file for adding configuring details
YAML crash COURSE how to write yaml file for adding configuring detailsYAML crash COURSE how to write yaml file for adding configuring details
YAML crash COURSE how to write yaml file for adding configuring details
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
 

Featured

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
marketingartwork
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
Skeleton Technologies
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
SpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
Rajiv Jayarajah, MAppComm, ACC
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
Christy Abraham Joy
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
Vit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
MindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
GetSmarter
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
Alireza Esmikhani
 

Featured (20)

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 

Engineering Software Architectures of Blockchain-Oriented Applications (ICSA 2018)

  • 1. 1 ICSA, Early Career Researchers Forum Seattle, USA 2018-05-01 Florian Weßling florian.wessling@paluno.uni-due.de University Duisburg-Essen, Germany Prof. Dr. Volker Gruhn Engineering Software Architectures of 
 Blockchain-Oriented Applications
  • 2. Overview • Blockchain Intro • Architectures of Blockchain-based Applications • Next Steps and Discussion 2
  • 4. Blockchain Technology • Goal: Saving information • "A blockchain is a database that can be shared between a group of non-trusting individuals, without needing a central party to maintain the state of the database." • Avoid centralization (Server) – Trend towards decentralization (P2P) • Save information and create consensus (distributed ledger) • No trust necessary towards a central authority • Trust towards a self-sustaining protocol using certain incentives to validate transactions 4 – https://medium.com/loom-network/scalability-tradeoffs-why-the-ethereum-killer-hasnt-arrived-yet-8f60a88e46c0
  • 5. • Consensus about world state: values of objects • Transactions modify the world state deterministically 5 Contract 0x123 {insuranceId: 0x485, premium: 851241, trigger: 0x791, setPremium: func(a) { this.premium = a } } Transaction 0x8682934 To: 0x123 Call: setPremium(1500) Contract 0x123 {insuranceId: 0x485, premium: 1500, trigger: 0x791, setPremium: func(a) { this.premium = a } } Ethereum
  • 6. • Each node saves the latest world state 6 Transaction 0x8682934 setPremium(1500) Node #74 Contract 0x123 {insuranceId: 0x485, premium: 851241, trigger: 0x791, setPremium: func(a) } Contract 0x815 {...} Node #74 Contract 0x123 {insuranceId: 0x485, premium: 851241, trigger: 0x791, setPremium: func(a) } Contract 0x815 {...} Node #74 Contract 0x123 {insuranceId: 0x485, premium: 851241, trigger: 0x791, setPremium: func(a) } Contract 0x815 {...} Transaction 0x8682934 setPremium(1500) Transaction 0x8682934 setPremium(1500) Ethereum
  • 7. • Receive transaction and update world state 7 Node #74 Contract 0x123 {insuranceId: 0x485, premium: 1500, trigger: 0x791, setPremium: func(a) } Contract 0x815 {...} Node #74 Contract 0x123 {insuranceId: 0x485, premium: 1500, trigger: 0x791, setPremium: func(a) } Contract 0x815 {...} Node #74 Contract 0x123 {insuranceId: 0x485, premium: 1500, trigger: 0x791, setPremium: func(a) } Contract 0x815 {...} Ethereum ✅ ✅ ✅ ✅ ✅ ✅ ✅
  • 9. • Increasing need for building blockchain-based applications (decentralized apps = DApps) • → Increasing need for good architectures and smart contracts! • Deal with blockchain properties: decentral, trustless, transparent and immutable system • Best practices, architectural patterns, design patterns for smart contracts • Main Research Question: 
 How to determine the architecture of a blockchain-based application? • Concepts to support architectural design of blockchain-based applications are missing 9 Research Motivation
  • 10. Which architectural patterns exist in blockchain-based applications? • Examine architectures of existing DApps • A: Self-Generated Transaction • B: Self-Confirmed Transaction • C: Delegated Transactions • Compare pros and cons regarding costs, trust, complexity, user experience 10 Browser MetaMask / Wallet Private or Public Blockchain Node MyEtherWallet Blockchain / EDCC A Browser MetaMask / Wallet DApp-Website Private or Public Blockchain Node Blockchain / EDCC B Browser DApp- Website DApp-Server/Backend REST Private or Public Blockchain Node DApp Backend Logic Transactions Private or Public Blockchain Node Websocket Blockchain / EDCC C DApp Architectures [2]
  • 11. Outlook: Overall Concept 11 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
  • 13. • Risk: Ethereum technology lock-in • start with Ethereum, extend to other platforms • goal: generalized and technology agnostic approach • Next Steps • write down research questions and hypotheses • describe the research outcome/artifacts and methodology how to get there • Advice from ECRF mentor: Qualitative studies: (semi-)structured interviews/questionnaires • Examine the Architecture Tradeoff Analysis Method (ATAM): look where Blockchain aspects are not covered • Working on validation: Three research projects in submission (energy, building, insurance) Next Steps and Discussion 13
  • 14. 14 Thank you! 😄 Questions? 💭 Discussion? 💬