Department of Computer Science, School of System and Technology, University of Management and Technology, Lahore, Punjab, Pakistan.
PLoS One. 2024 Mar 21;19(3):e0299324. doi: 10.1371/journal.pone.0299324. eCollection 2024.
Software Development based on Scrum Agile in a distributed development environment plays a pivotal role in the contemporary software industry by facilitating software development across geographic boundaries. However, in the past different frameworks utilized to address the challenges like communication and collaboration in scrum agile distributed software development (SADSD) were notably inadequate in transparency, security, traceability, geographically dispersed location work agreements, geographically dispersed teamwork effectiveness, and trust. These deficiencies frequently resulted in delays in software development and deployment, customer dissatisfaction, canceled agreements, project failures, and disputes over payments between customers and development teams. To address these challenges of SADSD, this paper proposes a new framework called ChainAgile, which leverages blockchain technology. ChainAgile employs a private Ethereum blockchain to facilitate the execution of smart contracts. These smart contracts cover a range of functions, including acceptance testing, secure payments, requirement verification, task prioritization, sprint backlog, user story design and development and payments with the automated distribution of payments via digital wallets to development teams. Moreover, in the ChainAgile framework, smart contracts also play a pivotal role in automatically imposing penalties on customers for making late payments or for no payments and penalties on developers for completing the tasks that exceed their deadlines. Furthermore, ChainAgile effectively addresses the scalability limitations intrinsic in blockchain technology by incorporating the Interplanetary File System (IPFS) is used for storage solutions as an off-chain mechanism. The experimental results conclusively show that this innovative approach substantially improves transparency, traceability, coordination, communication, security, and trust for both customers and developers engaged in scrum agile distributed software development (SADSD).
基于 Scrum 敏捷的软件开发在分布式开发环境中起着至关重要的作用,它促进了跨越地理边界的软件开发。然而,过去在解决 Scrum 敏捷分布式软件开发(SADSD)中的沟通和协作等挑战时,使用的不同框架在透明度、安全性、可追溯性、地理位置分散的工作协议、地理位置分散的团队工作效率和信任方面明显不足。这些缺陷经常导致软件开发和部署的延迟、客户不满、协议取消、项目失败以及客户和开发团队之间的付款纠纷。为了解决这些 SADSD 的挑战,本文提出了一个名为 ChainAgile 的新框架,该框架利用区块链技术。ChainAgile 使用私有以太坊区块链来促进智能合约的执行。这些智能合约涵盖了一系列功能,包括验收测试、安全支付、需求验证、任务优先级排序、冲刺待办事项、用户故事设计和开发以及通过数字钱包自动向开发团队分配支付款项。此外,在 ChainAgile 框架中,智能合约还在自动对延迟付款或不付款的客户和超过截止日期完成任务的开发人员处以罚款方面发挥着关键作用。此外,ChainAgile 通过使用星际文件系统(IPFS)作为链下机制来有效解决区块链技术固有的可扩展性限制。实验结果明确表明,这种创新方法大大提高了参与 Scrum 敏捷分布式软件开发(SADSD)的客户和开发人员的透明度、可追溯性、协调性、沟通、安全性和信任。