Litcius/Paper detail

A Decision Model for Choosing Patterns in Blockchain-Based Applications

Xiwei Xu, H. M. N. Dilum Bandara, Qinghua Lu, Ingo Weber, Len Bass, Liming Zhu

202139 citationsDOI

Abstract

Blockchains have been applied in different domains to guarantee data integrity and provide a decentralized computational infrastructure for executing smart contracts. Multiple blockchain-related patterns have been summarized by academics and industry practitioners covering different aspects, such as engineering applications on top of a blockchain, structuring smart contracts, and security. The existence of these patterns is both helpful and challenging for designers. Helpful, as the existence of these patterns means that developers do not need to recreate solutions to common problems. Challenging, as the multitude of patterns leaves a designer confused about when to adopt or adapt patterns. In this paper, we propose a decision model that assists developers and architects in selecting appropriate patterns for blockchain-based applications. The selection is based on the characteristics of the use cases and trade-offs implicit in the patterns. We evaluated the proposed decision model based on expert opinion regarding its correctness and usefulness in guiding the architecture design and understanding the rationale of various design decisions.

Topics & Concepts

Computer scienceBlockchainStructuringCorrectnessSoftware engineeringSoftware design patternArchitectureMultitudeData scienceSelection (genetic algorithm)Risk analysis (engineering)Artificial intelligenceComputer securitySoftwareMedicineVisual artsEconomicsProgramming languageArtFinanceEpistemologyPhilosophyBlockchain Technology Applications and SecurityCloud Data Security SolutionsCloud Computing and Resource Management