Remove ads

系統發展生命周期(英語:System Development Life CycleSDLC),也稱軟件生命周期,是系統工程資訊系統軟件工程中的術語,用於描述一個資訊系統從規劃、建立、測試到最終完成部署的全過程[1]。系統開發生命周期的概念對於硬件和軟件系統都是適用的,這些系統可能只由硬件或軟件組成,也可能兩者都有[2]

Thumb
系統開發生命周期模型,強調維護階段。

概述

系統發展生命周期由一系列明確定義的不同工作階段組成,有助於系統工程師和系統開發人員利用對系統的設計、構建、測試和交付進行計劃。就像任何在生產裝配線上製造的東西一樣,SDLC的目標是根據客戶需求生產滿足或超越客戶的期望的高質素的系統。所發佈的系統經過了每一個工作階段,其中包括了時間時限和成本估計[3]。電腦系統是複雜的(尤其是近期興起的面向服務的體系結構),通常涉及到多個傳統系統,這些系統可能需要由不同的軟件供應商提供。管理這種級別的複雜性,許多SDLC模型或方法被建立,如「瀑布模型」、「螺旋模型」、「敏捷軟件開發」、「快速原型模型」、「增量模型」;和「同步及穩定」[4]

SDLC可以看做一個快速迭代的過程。敏捷的方法,如XPScrum,專注於輕量級行程,這些輕量級行程在開發周期中允許快速的變化(不一定要按照SDLC的開發模型)。迭代法,例如統一軟件開發過程動態系統開發方法英語Dynamic systems development method,專注於有限的專案範圍並通過多個迭代來擴大或改善產品由。順序模型或預先大量設計模型(BDUF)、如瀑布模型、關注於完整和正確的規劃來指導大型專案、估計取得成功的風險,保證結果的可預測性。其他模式,如變形開發(Anamorphic development),傾向於由專案範圍和功能的迭代來指導系統開發。

在專案管理中一個專案既可以用專案生命周期(PLC)定義,也可以用SDLC定義,其中會有幾個步驟略有不同。根據泰勒(2004)所說,「專案生命周期包括了所有專案的內容,而系統開發生命周期關注於實現產品需求」[5]

SDLC在開發IT專案時中被使用,它描述了完成專案所要涉及到的不同階段。

Remove ads

歷史

產品生命周期結構化地描述了資訊系統的構建過程,重申產品生命中的每一個階段。根據艾略特和斯特拉和雷德福(2004)所說,系統開發生命周期「起源於1960年代,用於在大型企業時代大規模地開發功能性商用系統。這些資訊系統的活動將涉及大規模的數據以及數據處理常式」。[6]

還有很多系統開發框架在一定程度上借鑑了SDLC的模型,如1980年代的結構化系統分析和設計方法(SSADM),用於生產英國政府商務辦公室系統。根據艾略特(2004)所說,「傳統的系統開發生命周期方法逐漸被其他方法和框架取代,這些方法試圖克服傳統SDLC模型的一些原生缺陷」[6]

系統分析與設計

系統分析與設計(SAD)通過有效地使用硬件、軟件、數據、流程、和人力資源來支援公司的商業目標,是開發高效資訊系統(IS)的一個重要過程。系統分析和設計有助於做好開發前的準備和約束問題的範圍。系統分析與設計權衡在功能性和非功能性需求,並在兩者之間形成平衡。系統分析與設計和分散式企業架構、企業I.T.體系結構和業務體系結構有着緊密的聯絡, 要達到高等級的系統描述,很大程度上依賴於分割、介面、角色和部署建模。這個高水平描述可以被進一步分解為可以被分析、設計的組件模組,這些組件和模組被分開構建,最終整合以實現業務目標。SDLC和SAD是系統規劃和生命完整產品的基礎。

優勢與劣勢

在現代電腦界很少人會在SDLC中嚴格使用瀑布模型,因為已經有很多的現代方法取代了這種想法。有些人會認為SDLC已經不再適用一些模型,比如敏捷開發,但它仍然是科技界的一個廣泛使用的術語。SDLC在系統開發的傳統模型上有優勢, 更適合結構化環境。SDLC方法的缺點在於,在專案需要迭代開發時,如:web開發、電子商務開發,專案組需要定期檢查軟件設計,SDLC就不實用了。與其說討論SDLC的優缺點,更重要的應該是借鑑SDLC的實踐模型,將其應用到現代軟件設計中。

SDLC的優勢與劣勢對比

SDLC的優勢與劣勢[7]

  • 優勢:控制;監控大型專案;步驟具體;預先評估成本和達成目標;文件完整;定義良好的用戶輸入;易於維護;標準化的設計和開發;能夠容忍開發團隊中的人員變化
  • 劣勢:增加了開發時間;增加開發成本;系統必須預先定義;刻板;很難估計成本,導致專案超支;用戶輸入有時是受限的

快速應用程式開發(RAD)是SDLC的一個替代品,它結合原型模型,將應用程式開發和CASE工具的實現相結合。RAD的優點是速度快,降低了開發成本,並且使用戶更積極地參與開發過程。

參考資料

Remove ads

參見

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.

Remove ads