遇到的問題,都有解決方案,希望我的博客能為你提供一點幫助。
教材參考《軟件工程導論(第六版)》
七、 層次圖(H圖)與HIPO圖
1、概述
1.1、層次圖(Hierarchy Chart / H圖)
?核心定義
- ?目的:描述軟件系統的層次結構,體現模塊的從屬關系。
- ?適用階段:自頂向下設計(Top-Down Design)的核心工具。
- ?形態特征:
- 樹狀結構,根節點為系統頂層模塊。
- 每個父模塊分解為多個子模塊。
- 不展示模塊間數據流或控制流。
1.2、HIPO圖(Hierarchy + Input-Process-Output)
核心組成
- ?H圖(層次圖)?:模塊分解結構,附加追蹤編號。
- ?IPO圖:為每個模塊定義輸入、處理邏輯、輸出三要素。
?關鍵特征
- ?可追蹤性:模塊編號體系(如
1.2.3
)明確層級關系。 - ?設計完整性:H圖描述結構,IPO圖補充行為。
- ?IBM標準格式:常用于傳統結構化方法,與數據字典配合使用。
1.3、層次圖 vs. HIPO圖對比
維度 | 層次圖 | HIPO圖 |
---|---|---|
?核心目標 | 模塊結構分解 | 模塊結構+行為設計 |
?信息維度 | 僅層次關系 | 層次+輸入/處理/輸出細節 |
?可追溯性 | 無編號體系 | 嚴格編號支持模塊追蹤 |
?設計深度 | 宏觀架構 | 宏觀到微觀的完整設計 |
?適用階段 | 初步設計 | 詳細設計階段 |
2、符號
H圖
HIPO圖
3、例子
H圖
HIOP圖
八、 結構圖
1、概述
步驟1:確定系統邊界。步驟2:構建模塊層次樹。步驟3:定義調用關系。步驟4:標注數據流。步驟5:處理特殊邏輯。步驟6:連接數據存儲。步驟7:驗證與優化
2、符號
圖形符號 | 名稱 | 含義說明 | 應用場景示例 |
---|---|---|---|
? | 模塊框 | 表示獨立功能單元,通常以"動詞+名詞"命名 | 用戶管理模塊 訂單處理模塊 |
──── | 調用關系線 | 表示模塊間的單向調用關系 | 訂單模塊 → 支付模塊 |
?──→ (空心圓箭頭) | 數據流箭頭 | 表示模塊間傳遞數據結構,通常伴隨數據元素說明 | 傳遞訂單數據:{訂單ID, 金額, 商品列表} |
●──→ (實心圓箭頭) | 控制信息箭頭 | 表示傳遞控制標志或狀態碼,影響程序執行流程 | 傳遞支付驗證狀態:{狀態碼: 200, 錯誤信息: null} |
3、例子
九、面向數據流的設計方法
面向數據流的設計(Data Flow-Oriented Design)是一種基于數據流圖(DFD)的結構化設計方法,旨在將系統的數據流程轉換為模塊化的軟件結構。
1、步驟
1.1.繪制數據流圖(DFD)
使用加工(Process)、