軟體工程概論18918第一節課

楊歸元發表於2018-09-18

一.軟體危機

1.軟體危機是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題

2.典型表現:

(1)對開發成本和進度估計不準確

(2)使用者對"已完成的"軟體系統不滿意

(3)軟體質量不佳

(4)軟體不可維護

(5)缺乏軟體文件

(6)軟體成本逐年增高

(7)開發速度跟不上普及速度

二.軟體工程的介紹

採用工程的概念,原理,技術和方法來開發和維護軟體,把管理技術和技術方法結合起來,以經濟地開發出高效軟體並有效維護,這就是軟體工程

三.軟體生命週期

問題定義→可行性研究→需求分析→總體設計→詳細設計→編碼和單元測試→綜合測試

四.軟體模型

(一)瀑布模型:

瀑布模型有下述多個特點:1.階段間具有順序性和依賴性2.推遲延遲的觀點3.質量保證的觀點

瀑布模型的優點:1.強迫開發人員採用規範的方法2.嚴格地規定了每個階段必須提交的文件3.要求每個階段的產品經過嚴格驗證

瀑布模型的缺點:1.使用者只能通過文件來了解產品2.過於依賴書面要求,開發出的軟體不切實際

(二)快速原型模型

快速原型是指快速建立起來的可以在計算機上執行的程式,它所能完成的功能往往是最終產品能完成的功能的一個子集.

優點:軟體開發基本上是線性順序進行的

(三)增量模型

也稱漸增模型,使用增量模型開發軟體時,把軟體產品作為一系列的增量構件來設計,編碼,整合和測試.

優點:1.短時間內向使用者提交可完成部分工作的產品2.使使用者有較多的時間來學習使用新產品

缺點:1.開發新軟體時,不能破壞原有的功能2.要求開發人員把軟體看作一個整體,另一方面又要求開發人員把軟體看作構件序列,要求人員技術很高

(四)螺旋模型

螺旋模型的基本思想是,使用原型及其他方法來儘量降低風險.

螺旋模型的主要優勢是,他是風險驅動的.同時這也可能是他的一個缺點

(五)噴泉模型

各個開發步驟的多次反覆迭代,達到認識的逐步深化

相關文章