第1章 軟件工程概念(1 / 2)

1.軟件是人們寫給計算機的一係列指令以及相關文檔的集合。

軟件由以下三部分組成:

(1)在運行中能提供所希望的功能和性能的指令集(即程序)。

(2)使程序能夠正確運行的數據結構。

(3)描述程序研製過程、方法所用的文檔。

2.軟件的評價因素:易用性、可靠性、可維護性、安全性。

3.程序的發展:程序設計階段、程序係統階段、軟件工程階段、第四階段。

程序設計階段:

批處理係統

有限的分布

自定義軟件

程序係統階段:

多用戶係統

實時

數據庫管理係統

軟件產品

軟件工程階段:

分布式係統

嵌入“智能”

硬件成本下降

消費者的影響

第四階段

強大的桌麵係統

麵向對象技術

專家係統

人工神經網絡

並行計算

網絡計算

4.軟件的特點:抽象性、可複製性、不會磨損、依賴性、開發效率低、開發費用高。

5.軟件的分類:

軟件功能->係統軟件、係統支持軟件、應用軟件

軟件工作方式->實時處理軟件、批處理軟件、分時軟件、交互式軟件

係統規模->微型軟件、小型軟件、大型軟件、巨大型軟件、超大型軟件

應用結構層次->基礎軟件、中間層、應用軟件

硬件關聯性->嵌入式係統、實施係統

軟件的運行方式->編譯式軟件、解釋型軟件、混合型軟件

6.軟件危機是指軟件生產方式無法滿足迅速增長的計算機軟件需求,從而導致軟件在開發與維護過程中出現一係列嚴重問題的現象。

7.軟件危機的特征:軟件開發費用和進度的失控、軟件可靠性差、生產出來的軟件難以維持。

8.軟件危機的原因:與軟件本身特點有關、與軟件開發人員本身的特點有關(軟件需求不明確、缺乏正確的理論指導、軟件開發規模來越大、軟件開發複雜度越來越高)。

9.軟件工程的理解:

軟件工程學科是一門指導計算機軟件開發和維護的工程學科

軟件工程不是科學,其目的是創造而不是發現

軟件工程不是傳統意義的工程,沒有成熟的係統化方法。

10.軟件工程的7條基本原理:

用分階段的生命周期計劃嚴格管理

堅持進行階段評審

實行嚴格的產品控製

采用現代程序設計技術

結果應能清楚的審查

開發小組的人員應該少而精

承認不斷改進軟件工程實踐的必要性

11.新的思想方法:抽象、信息隱蔽、模塊化、局部化。

12.新的設計原則:確定性、一致性、完備性、可驗證性。

13.軟件生命周期:問題定義->可行性研究->需求分析->總體設計->詳細設計->軟件編碼->軟件測試->軟件維護。

14.軟件需求:IEEE軟件工程中需求定義->用戶解決問題或達到目標所需的條件或技能、係統或係統部件要滿足合同、標準、規範或其他正式規定文檔所需具有的條件或技能、一種反映上麵兩條所描述的條件或技能的文檔說明。