Abstract

Blockchain technology promises to spark a real revolution. One of most important concepts associated with this technology is smart contracts, which enable the automatic execution of agreements and augur a world without intermediaries. The conditions and rules of “contracts” are established in a computer codes and trust is enforced by consensus among the participants. One relevant feature associated with smart contract is the immutability property, which establishes the non-alteration of blockchain network data after the clauses of the contract are been approved by all parties or entities involved. For this reason, smart contract development requires more effort and care than the development of other common programs. They require systematic mechanisms to collect requirements and functional specifications. In addition, it is necessary to verify and validate the agreed functionality and the implemented code before they are deployed in the blockchain platform. This article presents a systematic literature review of primary studies in the field of Software Development Life Cycle, focusing on model-based software design and testing in the blockchain domain of smart contracts. This research aims to identify gaps and/or opportunities for further research. After carried out this review, it was observed that no clear methodology exists for evaluating and validating the quality either of this software or the overall development process. This means that software developers may implement smart contract code in which bugs and serious security vulnerabilities appear when the software is delivered to their customers.

Highlights

  • Blockchain technology has well-known benefits in many areas and could reconfigure many aspects of today’s society [2]

  • Blockchain technology, based on distributed ledger technologies (DLT), is a chain of cryptographically linked blocks. This technology provides mechanisms to define agreements using the concept of smart contract [61], which is computer programs that run on blockchain networks without intermediaries

  • At present, some authors [15] admit that an important gap still exists regarding the evaluation of quality in studies based on empirical methods

Read more

Summary

Introduction

Blockchain technology has well-known benefits in many areas (e.g., economic, political, humanitarian, or social, among others) and could reconfigure many aspects of today’s society [2]. Blockchain technology, based on distributed ledger technologies (DLT), is a chain of cryptographically linked blocks. This technology provides mechanisms to define agreements using the concept of smart contract [61], which is computer programs that run on blockchain networks without intermediaries. A smart contract, in the case of legal agreement, tends to replace the printed document with. The software requirements that this computer program must satisfy, from the engineering perspective, are analogous to the terms, rules, and conditions in a conventional legal contract. It is important to highlight that smart contracts can encode automated agreement execution, but not all smart contracts may necessarily be agreements and do not always necessarily codify actions between more than one party

Objectives
Methods
Findings
Discussion
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.