Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Why and how developers maintain smart contracts

View through CrossRef
Abstract Smart contracts, i.e., self-executing contracts written in code, have gained popularity in recent years due to the introduction of blockchain technology. These contracts are executed automatically when certain conditions are met, and, once deployed, they can not be modified. This presents issues when errors are found or updates are needed. Previous research has mainly focused on introducing approaches and tools for detecting bugs or vulnerabilities in smart contracts. However, it is unclear if these are the only maintenance-related operations developers perform. In this paper, we aim to understand why and how developers maintain smart contracts. We run a qualitative analysis on 590 commits from 14 open-source smart contract repositories written in Solidity, the most popular programming language for smart contracts. We analyze the commit messages, related issues, and the changes made to understand what triggered changes. Then, we examine how developers changed the source code. As a result, we define two taxonomies: one reporting the reasons for the maintenance and one regarding the patterns of modifications. Our findings suggest that smart contract maintenance is often focused on improving the internal quality of the scripts (40% of the cases), and that many changes aim to fix bugs despite the several approaches available for detecting them beforehand.
Title: Why and how developers maintain smart contracts
Description:
Abstract Smart contracts, i.
e.
, self-executing contracts written in code, have gained popularity in recent years due to the introduction of blockchain technology.
These contracts are executed automatically when certain conditions are met, and, once deployed, they can not be modified.
This presents issues when errors are found or updates are needed.
Previous research has mainly focused on introducing approaches and tools for detecting bugs or vulnerabilities in smart contracts.
However, it is unclear if these are the only maintenance-related operations developers perform.
In this paper, we aim to understand why and how developers maintain smart contracts.
We run a qualitative analysis on 590 commits from 14 open-source smart contract repositories written in Solidity, the most popular programming language for smart contracts.
We analyze the commit messages, related issues, and the changes made to understand what triggered changes.
Then, we examine how developers changed the source code.
As a result, we define two taxonomies: one reporting the reasons for the maintenance and one regarding the patterns of modifications.
Our findings suggest that smart contract maintenance is often focused on improving the internal quality of the scripts (40% of the cases), and that many changes aim to fix bugs despite the several approaches available for detecting them beforehand.

Related Results

Generative AI-Driven Smart Contract Optimization for Secure and Scalable Smart City Services
Generative AI-Driven Smart Contract Optimization for Secure and Scalable Smart City Services
Smart cities use advanced infrastructure and technology to improve the quality of life for their citizens. Collaborative services in smart cities are making the smart city ecosyste...
An annotation assisted smart contracts generation method
An annotation assisted smart contracts generation method
AbstractWith the rapid development of blockchain technology, the demand and complexity of smart contracts have sharply increased. However, smart contracts not only have high securi...
Reinventing Smart Water Management System through ICT and IoT Driven Solution for Smart Cities
Reinventing Smart Water Management System through ICT and IoT Driven Solution for Smart Cities
Purpose: Worldwide water scarcity is one of the major problems to deal with. Smart Cities also faces this challenging problem due to its ever-increasing population and limited sour...
Smart Contract Technology Potential in Mitigating Defects of Islamic Banks’ Tawarruq Operations
Smart Contract Technology Potential in Mitigating Defects of Islamic Banks’ Tawarruq Operations
Smart contracts are computer codes that represent contract terms and are designed to run on a blockchain platform, automatically enforced upon receiving predetermined inputs. This ...
Smart contract generation model based on code annotation and AST-LSTM tuning
Smart contract generation model based on code annotation and AST-LSTM tuning
Abstract With the wide application of smart contracts in many fields, the number, types, and complexity of smart contracts are showing a rapidly increasing trend. However ,...
On Observing Contracts: Deontic Contracts Meet Smart Contracts
On Observing Contracts: Deontic Contracts Meet Smart Contracts
Smart contracts have been proposed as executable implementations enforcing real-life contracts. Unfortunately, the semantic gap between these allows for the smart contract to diver...
Kajian Pembangunan Smart Society Kota Bandung
Kajian Pembangunan Smart Society Kota Bandung
Abstract. Rancasari sub-district which is included in the Gedebage SWK with the theme of the technopolis area has a strong position in smart development because of the interest of ...
Home owners and developers relationships: exploring the cordiality factor
Home owners and developers relationships: exploring the cordiality factor
Purpose – The cordiality of the relationship between home owners and house developers is significant in the house building sector. This plays a key role in meeting ...

Back to Top