【软件工程】数据流图 ( 数据字典 | 数据流图平衡原则 | 父图与子图平衡 | 子图内平衡 | 数据流图绘制原则 )
文章目錄
- 一、數據字典
- 二、數據流圖平衡原則
- 1、父圖 ( 上層數據流圖 ) 與 子圖 ( 下層數據流圖 ) 平衡
- 2、子圖內平衡
- 三、數據流圖繪制原則
一、數據字典
數據字典 可以 配合 數據流圖 使用 , 對數據進行詮釋 , 可以讓開發者更加清楚 數據的組成 , 格式 ;
數據字典中包含的符號 :
① “=” : 含義是 “被定義為” ; 如 : x=a+bx=a+bx=a+b , 表示 xxx 數據 被定義為 由 aaa 與 bbb 組成 ;
② “+” : 含義是 “與” ; 如 : x=a+bx=a+bx=a+b , 表示 xxx 數據 被定義為 由 aaa 與 bbb 組成 ;
③ “[… | …]” , “[… , …]” : 含義是 “或” ; 如 : x=[a,b],x=[a∣b]x = [ a, b ] , x=[ a | b ]x=[a,b],x=[a∣b] , 表示 xxx 由 aaa 或 bbb 組成 , 二者選其一 ;
④ “{…}” : 含義是 “重復” ; 如 : x={a}x=\{a\}x={a} , 表示 xxx 由多個 000 , 或多個 aaa 組成 ;
⑤ “(…)” : 含義是 “可選” ; 如 x=(a)x=(a)x=(a) , 表示 aaa 可以出現在 xxx 數據中 , 也可以不出現 ;
數據字典示例 : 學生數據的數據字典 ;
學生 = 姓名 + 學號 + 年齡 + 年級 + 學校 + 地址
學號 = “1”…“100”
班級 = [一年級 | 二年級 | 三年級 ]
二、數據流圖平衡原則
數據流圖平衡原則 :
- 父圖 ( 上層數據流圖 ) 與 子圖 ( 下層數據流圖 ) 之間的平衡
- 子圖 內部的平衡
1、父圖 ( 上層數據流圖 ) 與 子圖 ( 下層數據流圖 ) 平衡
父圖 ( 上層數據流圖 ) 與 子圖 ( 下層數據流圖 ) 平衡 :
利用 數據流圖平衡原則 , 可以找出 在 細化上層數據流圖 時 , 忽略的 數據流 ;
根據 頂層數據流 可以 確定缺失的 底層數據流 ; 根據底層數據流 , 可以補充缺失的頂層數據流 ;
找 000 層數據流圖 缺失的數據流時 , 先查看 頂層數據流圖 , 在 外部實體 與 系統之間 , 存在哪些 數據流 , 這些數據流 是否 在 000 層數據流圖 中出現過 ;
找 頂層數據流圖 中缺失的數據流時 , 查看 000 層數據流圖中 , 有沒有出現缺失的數據流 ;
在 頂層數據流圖 與 000 層數據流圖 之間 , 只能確定 外部實體 與 系統 之間的數據流 ,
系統內部的數據流 , 在 頂層數據流圖中 , 是沒有體現的 ;
父圖 ( 上層數據流圖 ) 與 子圖 ( 下層數據流圖 ) 之間的平衡匹配方法 :
① 個數一致 : 兩層數據流圖中的 數據流個數一致 ;
② 方向一致 : 兩層數據流圖中的 數據流方向一致 ;
2、子圖內平衡
子圖內平衡 : 對于數據流圖的任意一個加工 , 既有輸入 , 又有輸出 ;
加工 : 描述 “輸入數據流” 到 “輸出數據流” 之間的變換 , 即 對數據進行了什么樣的處理 , 使得 “輸入數據流” 變為 “輸出數據流” ;
主要操作 : 在程序中的體現是 處理 數據的過程 , 向 “加工” 中輸入數據流后 , 將數據進行加工 , 處理 , 變換后 , 產生新的 “輸出數據流” ;
黑洞 : 某個加工 , 只有輸入 , 沒有輸出 , 稱為黑洞 ;
奇跡 : 某個加工 , 只有輸出 , 沒有輸入 , 稱為奇跡 ;
三、數據流圖繪制原則
數據流圖 由 數據流 , 加工 , 數據存儲 , 外部實體 組成 , 先找出 三個具體存在的事物 外部實體 , 加工 , 數據存儲 , 然后在為這些事物添加 數據流 箭頭 ;
拿到一個需求之后 , 繪制數據流圖流程 :
① 外部實體 : 找出外部實體 , 使用系統的 人 或 組織 ;
② 加工 : 找出系統中的 中間件 加工 , 處理數據用的 ;
③ 數據存儲 : 找到 暫時存儲數據的載體 , 數據存儲 ;
④ 數據流 : 在上述 外部實體 , 加工 , 數據存儲 基礎上 , 繪制 數據流 箭頭 ;
總結
以上是生活随笔為你收集整理的【软件工程】数据流图 ( 数据字典 | 数据流图平衡原则 | 父图与子图平衡 | 子图内平衡 | 数据流图绘制原则 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【组合数学】递推方程 ( 常系数线性非齐
- 下一篇: 【软件工程】CMMI 能力成熟度模型集成