軟件工程——軟件設計方法(概要設計)

軟件設計方法主要分爲兩個方面:1.概要設計  2.詳細設計

概要設計:

一.軟件設計的目標和任務

1.定義

將文字轉化爲結構圖,根據用信息域表示的軟件需求,以及功能和性能需求進行數據設計,系統結構設計,過程設計

2.軟件設計過程

指定規範;軟件系統結構的總體設計;處理方式設計;數據結構設計;可靠性設計;編寫概要設計階段的文檔;概要設計評審

3.軟件設計基礎

(1) 自頂向下,逐步細化:對各個層次的過程細節和數據細節逐層細化

(2) 軟件結構:程序的模塊結構和數據結構

(3) 程序結構:樹狀結構,網狀結構

(4) 結構圖:反應程序模塊之間的層次調用關係

(5) 抽象化:軟件系統進行模塊設計時,可有不同的抽象層次信息隱蔽

由結構圖引出模塊相關內容

二.模塊

1.模塊

2.模塊之間的調用關係和接口

3.模塊間的信息傳遞

4.模塊調用

5.模塊的獨立性

(1).三個基本屬性:

功能:描述該模塊實現什麼功能

邏輯:描述模塊內部怎麼做

狀態:該模塊使用時的環境和條件

(2).用耦合和模塊內聚來度量模塊獨立性(高內聚,低耦合)

模塊間的耦合:

  • 非直接耦合:兩個模塊之間沒有直接關係(弱耦合)

  • 數據耦合(弱):一個模塊訪問另一個模塊時,彼此之間是通過簡單數據參數來交換輸入輸出信息
  • 標記耦合(弱):一組模塊通過參數表傳遞記錄信息
  • 控制耦合(中):一個模塊通過傳送開關,標誌等控制信息明顯地控制選擇另一模塊的功能
  • 外部耦合(較強):模塊與軟件的外部環境相聯繫,一組模塊都訪問同一全局簡單變量而不是同一全局數據結構
  • 公共耦合(較強):一組模塊都訪問同一個公共數據環境

  • 內容耦合:直接引用另一模塊的內容

 

(3).模塊內聚(理想狀態高內聚)

  • 功能內聚:模塊的各個部分是不可分割的
  • 信息內聚:各個功能都能在同一數據結構上操作,按順序盡心,每一項功能有一個唯一的入口點
  • 過程內聚:使用流程圖作爲工具設計程序時,把流程圖中的某一部分劃出組成模塊
  • 時間內聚:通常要求所有功能必須在同一時間段內執行
  • 邏輯內聚:若干個邏輯功能相同的模塊組成
  • 巧合內聚:模塊各部分之間沒有聯繫,及時有聯繫也很鬆散

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章