Smart contract development: Challenges and opportunities

Smart contract, a term which was originally coined to refer to the automation of legal contracts in general, has recently seen much interest due to the advent of blockchain technology. Recently, the term is popularly used to refer to low-level code scripts running on a blockchain platform. Our study...

Full description

Saved in:
Bibliographic Details
Main Authors: ZOU, Weiqin, LO, David, KOCHHAR, Pavneet Singh, LE, Xuan-Bach D., XIA, Xin, FENG, Yang, CHEN, Zhenyu, XU, Baowen
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2021
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/4496
https://ink.library.smu.edu.sg/context/sis_research/article/5499/viewcontent/tse196.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-5499
record_format dspace
spelling sg-smu-ink.sis_research-54992022-04-11T08:37:33Z Smart contract development: Challenges and opportunities ZOU, Weiqin LO, David KOCHHAR, Pavneet Singh LE, Xuan-Bach D. XIA, Xin FENG, Yang CHEN, Zhenyu XU, Baowen Smart contract, a term which was originally coined to refer to the automation of legal contracts in general, has recently seen much interest due to the advent of blockchain technology. Recently, the term is popularly used to refer to low-level code scripts running on a blockchain platform. Our study focuses exclusively on this subset of smart contracts. Such smart contracts have increasingly been gaining ground, finding numerous important applications (e.g., crowdfunding) in the real world. Despite the increasing popularity, smart contract development still remains somewhat a mystery to many developers largely due to its special design and applications. Are there any differences between smart contract development and traditional software development? What kind of challenges are faced by developers during smart contract development? Questions like these are important but have not been explored by researchers yet. In this paper, we performed an exploratory study to understand the current state and potential challenges developers are facing in developing smart contracts on blockchains, with a focus on Ethereum (the most popular public blockchain platform for smart contracts). Toward this end, we conducted this study in two phases. In the first phase, we conducted semi-structured interviews with 20 developers from GitHub and industry professionals who are working on smart contracts. In the second phase, we performed a survey on 232 practitioners to validate the findings from the interviews. Our interview and survey results revealed several major challenges developers are facing during smart contract development: (1) there is no effective way to guarantee the security of smart contract code; (2) existing tools for development are still very basic; (3) the programming languages and the virtual machines still have a number of limitations; (4) performance problems are hard to handle under resource constrained running environment; and (5) online resources (including advanced/updated documents and community support) are still limited. Our study suggests several directions that researchers and practitioners can work on to help improve developers’ experience on developing high-quality smart contracts. 2021-10-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/4496 info:doi/10.1109/TSE.2019.2942301 https://ink.library.smu.edu.sg/context/sis_research/article/5499/viewcontent/tse196.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Smart Contract Challenges Empirical Study Blockchain Software Engineering Technology and Innovation
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Smart Contract
Challenges
Empirical Study
Blockchain
Software Engineering
Technology and Innovation
spellingShingle Smart Contract
Challenges
Empirical Study
Blockchain
Software Engineering
Technology and Innovation
ZOU, Weiqin
LO, David
KOCHHAR, Pavneet Singh
LE, Xuan-Bach D.
XIA, Xin
FENG, Yang
CHEN, Zhenyu
XU, Baowen
Smart contract development: Challenges and opportunities
description Smart contract, a term which was originally coined to refer to the automation of legal contracts in general, has recently seen much interest due to the advent of blockchain technology. Recently, the term is popularly used to refer to low-level code scripts running on a blockchain platform. Our study focuses exclusively on this subset of smart contracts. Such smart contracts have increasingly been gaining ground, finding numerous important applications (e.g., crowdfunding) in the real world. Despite the increasing popularity, smart contract development still remains somewhat a mystery to many developers largely due to its special design and applications. Are there any differences between smart contract development and traditional software development? What kind of challenges are faced by developers during smart contract development? Questions like these are important but have not been explored by researchers yet. In this paper, we performed an exploratory study to understand the current state and potential challenges developers are facing in developing smart contracts on blockchains, with a focus on Ethereum (the most popular public blockchain platform for smart contracts). Toward this end, we conducted this study in two phases. In the first phase, we conducted semi-structured interviews with 20 developers from GitHub and industry professionals who are working on smart contracts. In the second phase, we performed a survey on 232 practitioners to validate the findings from the interviews. Our interview and survey results revealed several major challenges developers are facing during smart contract development: (1) there is no effective way to guarantee the security of smart contract code; (2) existing tools for development are still very basic; (3) the programming languages and the virtual machines still have a number of limitations; (4) performance problems are hard to handle under resource constrained running environment; and (5) online resources (including advanced/updated documents and community support) are still limited. Our study suggests several directions that researchers and practitioners can work on to help improve developers’ experience on developing high-quality smart contracts.
format text
author ZOU, Weiqin
LO, David
KOCHHAR, Pavneet Singh
LE, Xuan-Bach D.
XIA, Xin
FENG, Yang
CHEN, Zhenyu
XU, Baowen
author_facet ZOU, Weiqin
LO, David
KOCHHAR, Pavneet Singh
LE, Xuan-Bach D.
XIA, Xin
FENG, Yang
CHEN, Zhenyu
XU, Baowen
author_sort ZOU, Weiqin
title Smart contract development: Challenges and opportunities
title_short Smart contract development: Challenges and opportunities
title_full Smart contract development: Challenges and opportunities
title_fullStr Smart contract development: Challenges and opportunities
title_full_unstemmed Smart contract development: Challenges and opportunities
title_sort smart contract development: challenges and opportunities
publisher Institutional Knowledge at Singapore Management University
publishDate 2021
url https://ink.library.smu.edu.sg/sis_research/4496
https://ink.library.smu.edu.sg/context/sis_research/article/5499/viewcontent/tse196.pdf
_version_ 1770574875442806784