軟體工程的發展
前言
萬物的生存都有一個共同的規律,那就是發展,但是在發展的時候總是會發生一些變化,舊的被新的取代,物競天擇,適者生存。無非都是一個從開始——廢棄的過程,指它被新事物代替,逐漸滿足不了人們的需求,從而進行變革。
一、發展
1.發展背景
軟體危機的出現
2.發展階段
(1)程式設計階段——50至60年代(機器,彙編)
(2)程式系統階段——60至70年代(作坊)
(3)軟體工程階段——70年代以後(產品化,規範化,標準化,網路化)
3.軟體工程發過程的特性
(1)易理解性
(2)可見性(功能)
(3)可支援性
(4)可接受性
(5)可靠性
(6)健壯性{抗病毒,抗侵入}
(7)可維護性(看得懂,有文件)
(8)速度
二.軟體的生存期(life cycle)
1.概念:軟體有一個孕育,誕生,成長,成熟,衰亡的生存過程,這個過程即為計算機軟體的生存期。
2.步驟
3.制定計劃(可行性研究)
(1)確定要開發軟體系統的總目標
(2)給出功能,效能,可靠性以及介面等方面的要求
(3)完成該軟體任務的可行性研究(技術可行,法律可行性,)
4.需求分析和定義
(1)軟體開發軟體提出的需求進行分析並給出詳細的定義
(2)編寫軟體需求說明書(使用者手冊在什麼時候開始編寫?需求分析階段)
5.軟體設計
(1)概要設計——把各項需求轉換成軟體的體系結構軟體測試
(2)單元測試,查詢各模組在功能和結構上存在的問題並加以糾正
(3)組裝測試,將已測試過的模組按一定順序組裝起來
軟體的執行與維護
發展模型
1.瀑布模型(嚴格,週期比較長,跟使用者見面比較晚,使用者課設計人員分開)
2.b模型(階段性和順序性,延遲,質量保證)
演化模型
由於在專案開發的初始階段人們對軟體的需求認識常常不夠清晰,因而使得開發專案難於做到以一次開發成功,出現返工情況
螺旋模型
螺旋模型沿著螺線旋轉,在四個現象上分別表達了四個方面的活動,即:
制定計劃——確定軟體目標,選定實施方案,弄清專案開發的限制條件
風險分析——分析所選定方案,考慮如何識別何消除風險
實施工程——實施軟體開發
客戶評價——評價開發工作,提出修正建議
噴泉模型
—迭代
-重複
-演進
—無間隙
各個階段無明顯界限
三、軟體工程專案的基本目標
1.交付較低的開發成本
2.達到要求的軟體功能
3.取得較好的軟體效能
4.開發的軟體易於移植
5.需要較低的維護費用
6.能按時完成開發工作,及時交付適用