Engineering Blockchain Based Software Systems: Foundations, Survey, and Future Directions
Mahdi Fahmideh, John Grundy, Aakash Ahmed, Jun Shen, Jun Yan, Davoud, Mougouei, Peng Wang, Aditya Ghose, Anuradha Gunawardana, Uwe Aickelin, Babak, Abedin

TL;DR
This paper provides a comprehensive review of blockchain-based software systems, discussing their foundations, development challenges, and future research directions from a software engineering perspective.
Contribution
It offers a systematic survey of BBS engineering research, characterizing foundational theories, processes, models, and identifying key challenges and techniques.
Findings
Consolidated current state of BBS engineering research
Identified key challenges and principles in BBS development
Outlined future directions for BBS research
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 a software engineering perspective. We characterize BBS engineering from the theoretical foundations, processes, models, and roles and discuss a rich repertoire of key development activities, principles, challenges, and techniques. The focus and depth of this survey not only gives software engineering practitioners and researchers a consolidated body of knowledge about current BBS development but also…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsBlockchain Technology Applications and Security · Cloud Computing and Resource Management · Software System Performance and Reliability
