1. 程式人生 > >【軟體工程】第一章 軟體工程概論

【軟體工程】第一章 軟體工程概論

1.1 軟體的定義及特點

1.1.1 軟體的定義

兩個定義:

計算機程式和關聯文件,軟體產品可能是為了特定的使用者或者市場開發。

1.1.2 軟體的特點

特點:
  1. 無形的、不可見的邏輯實體(正確與否需上機執行,導致設計生產管理較難)。
  2. 設計開發而得,不是生產製造而得(無法批量生產)。
  3. 無磨損老化問題(是否淘汰取決於市場)。
  4. 根據實際的顧客需求定製開發。
  5. 涉及各行各業各學科專業,較為複雜。
  6. 開發成本高。
  7. 易於複製。
  8. 對於質量的要求較高,否則容易造成重大的財產損失。
  9. 軟體的開發和執行離不開計算機系統環境。
  10. 軟體開發工作涉及到的社會因素較多。
  11. 編寫程式碼只佔整個工程的小部分,軟體測試、系統維護佔據主要成本。

1.1.3 軟體的種類

三類:

1.2 軟體工程的起源和概念

1.2.1 軟體工程的起源

早期的程式計算機程式:
  1. 採用機器碼編制,沒有獨立的軟體概念。
  2. 機器碼指令只用於驅動計算機硬體工作。
  3. 馮諾依曼首先提出流程圖描述計算機的執行,軟體區別於硬體的工作。

現代認為,微電子是基礎,計算機和網路是載體,軟體是核心。

1.2.2 軟體開發的三個階段

三個階段:

1.3 軟體開發的本質和基本手段

1.3.1 軟體開發的含義

含義:

本質:問題域到不同抽象層之間的概念和計算邏輯的對映。
軟體開發:即是為了實現問題域中的概念和處理邏輯到執行平臺的概念和處理邏輯的對映。

本質:

即:不同抽象層術語間的“對映”,不同抽象層處理邏輯之間的“對映”。

1.3.2 實現對映的基本手段:建模

  • 建模:是解決問題的一般途徑,運用所掌握的知識,通過抽象,給出該問題的一個結構。
  • 模型:在特定意圖下所確定的角度和抽象層次上對物理系統的描述,通常包含對該系統邊界的描述,給出系統內各模型元素以及他們之間的語義關係。

軟體系統或項的模型設計:

分層的基本動機是控制開發的複雜性,一個抽象層由一組確定的術語定義。

1.4 軟體工程框架

1.4.1 軟體工程的目標

三個目標:

1.4.2 軟體工程的活動

五項活動:

1.4.3 軟體工程的原則

三個原則:

1.4.4 軟體工程框架的作用

軟體工程三元組<目標,原則,活動>

  1. 給出了軟體所涉及軟體工程的工程要素。
  2. 給出了個要素間的關係。
  3. 給出了軟體工程學科所研究的主要內容。

(完)