螺旋模型英文spiral model)係一種喺 1980 年代尾興起嘅軟件開發方法,指成場開發過程涉及咗若干次嘅迴轉(loop)。

步驟

編輯

螺旋模型嘅每一次迴轉都會涉及以下嘅步驟[1][2][3]

  1. 決定目標:由「啲客嘅意見」同「距離想要嘅產品爭幾遠」等嘅資訊來源嗰度評估隻軟件需求達到啲咩要求,從而知道隻軟件喺呢一次迴轉當中要達到啲咩目的(例:想整一隻電子遊戲,決定咗第一步係想成功造出隻遊戲入面嗰一個虛擬世界先);喺呢個階段,軟件工程師會諗一柞可能嘅解決方案出嚟(例:諗吓要用啲乜嘢演算法遊戲資產);睇埋軟件需求
  2. 諗同解決風險:班軟件工程師睇勻嗮柞可能嘅解決方案,由啲方案當中揀出佢哋覺得最掂嗰個,然後佢哋就會度吓採取呢個方案會引起啲乜嘢風險同埋要點樣應對(例:隻電子遊戲想用一款好創新遊戲機制,但因為前人冇用過呢種機制,班工程師擔心整咗件原型出嚟先發現根本完全唔好玩)。睇埋軟件設計
  3. 郁手整件原型:揀咗方案之後,就郁手寫源碼,整件原型(prototype)出嚟-喺工程學上,一件原型係指件產品實際上行得嘅一個版本,整好咗就要做測試,知道件原型達唔達得到想要嗰啲要求(例:揀好咗方案之後,就郁手寫個遊戲程式嘅源碼嘅原型,寫好就試行吓,睇吓件原型行起上嚟點,達唔達到想要嘅效果)。
  4. 計劃下次迴轉
 

優劣

編輯

瀑布模型等嘅大多數開發模型比起嚟,螺旋模型最大嘅好處係有效噉應付風險:軟件開發通常都係有風險嘅-要整出一個行得嘅原型要用好耐時間,而且好多時都擔心辛苦整咗件原型出嚟先發覺有問題(例如一個創新嘅遊戲機制,做完試玩先至知冇想像中咁好玩);相比之下,螺旋模型每次迴轉都整一嚿細嘅原型出嚟,每一次迴轉都會令件原型更加接近最後嘅成品-好似條螺線噉愈轉愈大,而且喺每次郁手整原型之前就諗好嗮有乜可能會出錯嘅地方同點應對[2][3]。喺廿一世紀初,螺旋模型係某啲軟件工程子領域(例如電子遊戲製作[1])嘅業界標準,尤其常用於大型項目嘅開發。

睇埋

編輯
  1. 1.0 1.1 Schell, J. (2014). The Art of Game Design: A book of lenses. AK Peters/CRC Press. p. 82 - 86.
  2. 2.0 2.1 Boehm, B (May 1988). "A Spiral Model of Software Development and Enhancement 互聯網檔案館歸檔,歸檔日期2021年6月24號,." (PDF). IEEE Computer. 21 (5): 61-72.
  3. 3.0 3.1 Boehm, B (July 2000). "Spiral Development: Experience, Principles, and Refinements" (PDF). Special Report. Software Engineering Institute. CMU/SEI-2000-SR-008.