Engineering Blockchain-based Software Systems: Foundations, Survey, and Future Directions

Mahdi Fahmideh,John Grundy,Aakash Ahmad,Jun Shen,Jun Yan,Davoud Mougouei,Peng Wang,Aditya Ghose,Anuradha Gunawardana,Uwe Aickelin,Babak Abedin
DOI: https://doi.org/10.1145/3530813
IF: 16.6
2022-12-08
ACM Computing Surveys
Abstract:Many scientific and practical areas have shown increasing interest in reaping the benefits of blockchain technology to empower software systems. However, the unique characteristics and requirements associated with Blockchain-based Software (BBS) systems raise new challenges across the development lifecycle that entail an extensive improvement of conventional software engineering. This article presents a systematic literature review of the state-of-the-art in BBS engineering research from the perspective of the software engineering discipline. We characterize BBS engineering based on the key aspects of theoretical foundations, processes, models , and roles . Based on these aspects, we present a rich repertoire of development tasks, design principles, models, roles, challenges, and resolution techniques. The focus and depth of this survey not only give software engineering practitioners and researchers a consolidated body of knowledge about current BBS development but also underpin a starting point for further research in this field.
computer science, theory & methods
What problem does this paper attempt to address?