在計算機界,混沌模型是一種軟件開發的結構。其創始者曾使用 L.B.S.Raccoon 的筆名指出,諸如螺旋模型瀑布模型的項目管理模型雖然擅長於管理日程表和員工,但並未提供如何修復缺陷等解決其它技術問題的方法;與此同時,程序設計方法學雖然對修復缺陷及解決其它技術問題有效,但在管理截止日期或響應客戶請求的方面並無幫助。此種模型試圖橋接此一溝壑。混沌理論被用來幫助理解這裡所出現的問題。[1]

軟件開發生命周期 編輯

混沌模型指出,生命周期的每個階段都應被套用到項目的所有層次上,從整個項目到單獨的代碼行

  • 整個項目必須被定義好、實現好、整合好。
  • (項目的)各個系統必須被定義好、實現好、整合好。
  • (系統的)各個模塊必須被定義好、實現好、整合好。
  • (模塊的)各個功能必須被定義好、實現好、整合好。
  • (功能的)各行代碼必須被定義好、實現好、整合好。

在觀念上的一個重大變革是關於項目是能被看成一個整體、還是必須被看成一些零部件的組合。沒人能一次寫出數千行代碼,人們只能每次寫幾行代碼的小片段、並測試這些小片段是否能正常工作,依此來一點一點搭建整個項目。一個複雜系統的行為發端於這些小建築塊的行為的組合。

混沌策略 編輯

混沌策略是基於混沌模型的軟件開發策略,其主要規則是永遠先解決最重要的問題

  • 問題是未完成的編程任務。
  • 最重要的問題包括以及這三個方面。
    • 問題向用戶提供功能點。
    • 問題亟需解決,否則可能會耽誤其它工作。
    • 問題在解決並測試之後就被認為是可信任的,這樣開發人員可以安全地着眼於其它地方。
  • 解決問題意味着拿出一個穩定的方案。

混沌策略描述了程序員如何在有一份「待修復缺陷及待實現功能」列表的情況下完成某個項目的。通常,有專人為剩餘的任務指定優先級,程序員們再一個一個解決它們。混沌策略認為這才是唯一行之有效的完成工作的方法。

混沌策略受到了圍棋戰術的啟發。

混沌理論的聯繫 編輯

兩者之間有許多聯繫:

  • 混沌模型有助於解釋為何軟件經常無法預測。
  • 揭示了為何諸如計算機架構這樣的高級概念不可以在底層代碼中單獨考慮。
  • 以混沌策略的形式提供了揭示下一步做什麼的提示。

參見 編輯

參考文獻 編輯

  1. ^ ACM Digital Library, The chaos model and the chaos cycle頁面存檔備份,存於網際網路檔案館), ACM SIGSOFT Software Engineering Notes, Volume 20 Issue 1, Jan. 1995

延伸閱讀 編輯