Skip to main content
QUICK REVIEW

[论文解读] Blockchain Enabled Smart Contract Based Applications: Deficiencies with the Software Development Life Cycle Models

Mahdi H. Miraz, Maaruf Ali|arXiv (Cornell University)|Jan 21, 2020
Blockchain Technology Applications and Security参考文献 7被引用 27
一句话总结

本文識別出傳統軟體開發生命週期(SDLC)模型與區塊鏈支援的智慧合約應用之間的根本性不相容,主要源於區塊鏈的不可變性。文章批評六種主要的SDLC模型,指出版本控制與除錯方面的衝突,並主張亟需開發專為智慧合約生命週期與不可變性限制量身訂做的新SDLC框架。

ABSTRACT

With the recent popularity of Blockchain and other Distributed Ledger Technologies (DLT), blockchain enabled smart contract applications has attracted increased research focus. However, the immutability of the blocks, where the smart contracts are stored, causes conflicts with the traditional Software Development Life Cycle (SDLC) models usually followed by software engineers. This clearly shows the unsuitability of the application of SDLC in designing blockchain enabled smart contract based applications. This research article addresses this current problem by first exploring the six traditional SDLC models, clearly identifying the conflicts in a table with the application of smart contracts and advocates that there is an urgent need to develop new standard model(s) to address the arising issues. The concept of both block immutability and contract is introduced. This is further set in a historical context from legacy smart contracts and blockchain enabled smart contracts extending to the difference between "shallow smart contracts" and "deep smart contracts". To conclude, the traditional SDLC models are unsuitable for blockchain enabled smart contract-based applications.

研究动机与目标

  • 分析傳統SDLC模型與基於區塊鏈的智慧合約開發之間的不相容性。
  • 識別區塊鏈不可變性在軟體開發流程中引發的具體衝突。
  • 在生命週期管理背景下,區分淺層智慧合約與深層智慧合約的差異。
  • 主張應開發專為智慧合約應用量身訂做的新標準化SDLC模型。
  • 為重新思考分散式帳本技術中的軟體工程實務,提供歷史與概念基礎。

提出的方法

  • 系統性分析六種傳統SDLC模型:瀑布模型、V模型、螺旋模型、迭代模型、敏捷模型與RAD模型。
  • 將SDLC階段(需求、設計、實作、測試、部署、維護)對映至智慧合約生命週期的約束條件。
  • 透過比較表格識別衝突,突出在版本控制、回滾與測試方面的不相容性。
  • 概念性區分「淺層智慧合約」(有限邏輯)與「深層智慧合約」(複雜、狀態導向邏輯)及其對SDLC適用性的影響。
  • 回顧智慧合約從傳統系統到現代區塊鏈實現的演進歷史。
  • 使用概念建模,展示不可變性如何破壞標準軟體維護與演進實務。

实验结果

研究问题

  • RQ1傳統SDLC模型如何與基於區塊鏈的智慧合約不可變性特性產生衝突?
  • RQ2在生命週期管理挑戰方面,淺層與深層智慧合約之間的關鍵差異為何?
  • RQ3為何目前的SDLC模型不適合智慧合約應用的開發與維護?
  • RQ4區塊鏈不可變性對智慧合約開發中的軟體測試、除錯與版本控制有何影響?
  • RQ5為有效支援分散式帳本環境中的智慧合約開發,需要哪些新的SDLC模型特徵?

主要发现

  • 由於儲存的智慧合約具有不可變性,傳統SDLC模型與區塊鏈智慧合約開發根本上不相容。
  • 瀑布模型、V模型、螺旋模型、迭代模型、敏捷模型與RAD模型均因無法修改已部署合約,而在需求管理、測試與維護方面面臨關鍵衝突。
  • 不可變性阻止了標準SDLC實務中的回滾、修復與版本控制,導致生產環境中風險升高。
  • 淺層與深層智慧合約的區分顯示,複雜合約因增加的狀態管理與邏輯複雜度,使SDLC不相容性更加嚴重。
  • 現有的軟體工程實務未能解決智慧合約獨特的生命週期挑戰,特別是在部署後的除錯與審計方面。
  • 研究結論認為,亟需開發新的、領域專用的SDLC模型,以支援安全、可維護且可演化的智慧合約應用。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。