Empir. Softw. Eng. | 2021

Maintenance-related concerns for post-deployed Ethereum smart contract development: issues, techniques, and future challenges

 
 
 
 
 

Abstract


Software development is a very broad activity that captures the entire life cycle of a software, which includes designing, programming, maintenance and so on. In this study, we focus on the maintenance-related concerns of the post-deployment of smart contracts. Smart contracts are selfexecuted programs that run on a blockchain. They cannot be modified once deployed and hence they bring unique maintenance challenges compared to conventional software. According to the definition of ISO/IEC 14764, there are four kinds of software maintenance, i.e., corrective, adaptive, perfective, and preventive maintenance. This study aims to answer (i) What kinds of issues will smart contract developers encounter for corrective, adaptive, perfective, and preventive maintenance after they are deployed to the Ethereum? (ii) What are the current maintenance-related methods used for smart contracts? To obtain the answers to these research questions, we first conducted a systematic literature review to analyze 131 smart contract related research Xin Xia is the corresponding author. Jiachi Chen Faculty of Information Technology, Monash University, Australia E-mail: [email protected] Xin Xia Faculty of Information Technology, Monash University, Australia E-mail: [email protected] David Lo School of Information Systems, Singapore Management University, Singapore E-mail: [email protected] John Grundy Faculty of Information Technology, Monash University, Australia E-mail: [email protected] Xiaohu Yang College of Computer Science and Technology, Zhejiang University, China E-mail: [email protected] 1 ar X iv :2 00 7. 00 28 6v 2 [ cs .S E ] 1 7 A ug 2 02 1 papers published from 2014 to 2020. Since the Ethereum ecosystem is fastgrowing, some results from previous publications might be out-of-date and there may be a gap between academia and industry. To address this, we performed an online survey of smart contract developers on Github to validate our findings and received 165 useful responses. Based on the survey feedback and literature review, we present the first empirical study on smart contract maintenance-related concerns. Our study can help smart contract developers better maintain their smart contract-based projects, and we highlight some key future research directions to improve the Ethereum ecosystem.

Volume 26
Pages 117
DOI 10.1007/s10664-021-10018-0
Language English
Journal Empir. Softw. Eng.

Full Text