An Extended Pattern Collection for Blockchain-based Applications

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Xu, Xiwei, Pautasso, Cesare, Lo, Sin Kuang, Zhu, Liming, Lu, Qinghua, Weber, Ingo
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866916625744134144
author Xu, Xiwei
Pautasso, Cesare
Lo, Sin Kuang
Zhu, Liming
Lu, Qinghua
Weber, Ingo
author_facet Xu, Xiwei
Pautasso, Cesare
Lo, Sin Kuang
Zhu, Liming
Lu, Qinghua
Weber, Ingo
contents Blockchain is an emerging technology that enables new forms of decentralized software architectures, where distributed components can reach agreements on shared system states without trusting a central integration point. Blockchain provides a shared infrastructure to execute programs, called smart contracts, and to store data. Since blockchain technologies are at an early stage, there is a lack of a systematically organized knowledge providing a holistic view on designing software systems that use blockchain. We view blockchain as a component of a bigger software system, which requires patterns for using blockchain in the design of the software architecture. In this paper, we collect a list of patterns for blockchain-based applications. The pattern collection is categorized into five categories, including interaction with external world patterns, data management patterns, security patterns, structural patterns of contracts, and user interaction patterns. Some patterns are designed considering the nature of blockchain and how blockchains can be specifically introduced within real-world applications. Others are variants of existing design patterns applied in the context of blockchain-based applications and smart contracts.
format Preprint
id arxiv_https___arxiv_org_abs_2502_16017
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle An Extended Pattern Collection for Blockchain-based Applications
Xu, Xiwei
Pautasso, Cesare
Lo, Sin Kuang
Zhu, Liming
Lu, Qinghua
Weber, Ingo
Software Engineering
Blockchain is an emerging technology that enables new forms of decentralized software architectures, where distributed components can reach agreements on shared system states without trusting a central integration point. Blockchain provides a shared infrastructure to execute programs, called smart contracts, and to store data. Since blockchain technologies are at an early stage, there is a lack of a systematically organized knowledge providing a holistic view on designing software systems that use blockchain. We view blockchain as a component of a bigger software system, which requires patterns for using blockchain in the design of the software architecture. In this paper, we collect a list of patterns for blockchain-based applications. The pattern collection is categorized into five categories, including interaction with external world patterns, data management patterns, security patterns, structural patterns of contracts, and user interaction patterns. Some patterns are designed considering the nature of blockchain and how blockchains can be specifically introduced within real-world applications. Others are variants of existing design patterns applied in the context of blockchain-based applications and smart contracts.
title An Extended Pattern Collection for Blockchain-based Applications
topic Software Engineering
url https://arxiv.org/abs/2502.16017