The Blockchain as a Software Connector
Top Cited Papers
- 1 April 2016
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 182-191
- https://doi.org/10.1109/wicsa.2016.21
Abstract
Blockchain is an emerging technology for decentralized and transactional data sharing across a large network of untrusted participants. It enables new forms of distributed software architectures, where components can find agreements on their shared states without trusting a central integration point or any particular participating components. Considering the blockchain as a software connector helps make explicitly important architectural considerations on the resulting performance and quality attributes (for example, security, privacy, scalability and sustainability) of the system. Based on our experience in several projects using blockchain, in this paper we provide rationales to support the architectural decision on whether to employ a decentralized blockchain as opposed to other software solutions, like traditional shared data storage. Additionally, we explore specific implications of using the blockchain as a software connector including design trade-offs regarding quality attributes.Keywords
This publication has 10 references indexed in Scilit:
- SoK: Research Perspectives and Challenges for Bitcoin and CryptocurrenciesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2015
- Cryptocurrencies, smart contracts, and artificial intelligenceAI Matters, 2014
- Permacoin: Repurposing Bitcoin Work for Data PreservationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2014
- Database replicationProceedings of the VLDB Endowment, 2010
- Documenting software architectures: views and beyondPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Towards a taxonomy of software connectorsPublished by Association for Computing Machinery (ACM) ,2000
- The part-time parliamentACM Transactions on Computer Systems, 1998
- Byzantine quorum systemsPublished by Association for Computing Machinery (ACM) ,1997
- The Byzantine Generals ProblemACM Transactions on Programming Languages and Systems, 1982
- Weighted voting for replicated dataPublished by Association for Computing Machinery (ACM) ,1979