【软件工程】数据流图 ( 数据字典 | 数据流图平衡原则 | 父图与子图平衡 | 子图内平衡 | 数据流图绘制原则 )

2023-03-28 18:33:30 浏览数 (2)

文章目录

  • 一、数据字典
  • 二、数据流图平衡原则
    • 1、父图 ( 上层数据流图 ) 与 子图 ( 下层数据流图 ) 平衡
    • 2、子图内平衡
  • 三、数据流图绘制原则

一、数据字典


数据字典 可以 配合 数据流图 使用 , 对数据进行诠释 , 可以让开发者更加清楚 数据的组成 , 格式 ;

数据字典中包含的符号 :

① “=” : 含义是 “被定义为” ; 如 :

x=a b

, 表示

x

数据 被定义为 由

a

b

组成 ;

② “ ” : 含义是 “与” ; 如 :

x=a b

, 表示

x

数据 被定义为 由

a

b

组成 ;

③ “[… | …]” , “[… , …]” : 含义是 “或” ; 如 :

x = [ a, b ] , x=[ a | b ]

, 表示

x

a

b

组成 , 二者选其一 ;

④ “{…}” : 含义是 “重复” ; 如 :

x={a}

, 表示

x

由多个

0

, 或多个

a

组成 ;

⑤ “(…)” : 含义是 “可选” ; 如

x=(a)

, 表示

a

可以出现在

x

数据中 , 也可以不出现 ;

数据字典示例 : 学生数据的数据字典 ;

学生 = 姓名 学号 年龄 年级 学校 地址

学号 = “1”…“100”

班级 = [一年级 | 二年级 | 三年级 ]

二、数据流图平衡原则


数据流图平衡原则 :

  • 父图 ( 上层数据流图 ) 与 子图 ( 下层数据流图 ) 之间的平衡
  • 子图 内部的平衡

1、父图 ( 上层数据流图 ) 与 子图 ( 下层数据流图 ) 平衡

父图 ( 上层数据流图 ) 与 子图 ( 下层数据流图 ) 平衡 :

利用 数据流图平衡原则 , 可以找出 在 细化上层数据流图 时 , 忽略的 数据流 ;

根据 顶层数据流 可以 确定缺失的 底层数据流 ; 根据底层数据流 , 可以补充缺失的顶层数据流 ;

0

层数据流图 缺失的数据流时 , 先查看 顶层数据流图 , 在 外部实体 与 系统之间 , 存在哪些 数据流 , 这些数据流 是否 在

0

层数据流图 中出现过 ;

找 顶层数据流图 中缺失的数据流时 , 查看

0

层数据流图中 , 有没有出现缺失的数据流 ;

在 顶层数据流图 与

0

层数据流图 之间 , 只能确定 外部实体 与 系统 之间的数据流 , 系统内部的数据流 , 在 顶层数据流图中 , 是没有体现的 ;

父图 ( 上层数据流图 ) 与 子图 ( 下层数据流图 ) 之间的平衡匹配方法 :

① 个数一致 : 两层数据流图中的 数据流个数一致 ;

② 方向一致 : 两层数据流图中的 数据流方向一致 ;

2、子图内平衡

子图内平衡 : 对于数据流图的任意一个加工 , 既有输入 , 又有输出 ;

加工 : 描述 “输入数据流” 到 “输出数据流” 之间的变换 , 即 对数据进行了什么样的处理 , 使得 “输入数据流” 变为 “输出数据流” ;

主要操作 : 在程序中的体现是 处理 数据的过程 , 向 “加工” 中输入数据流后 , 将数据进行加工 , 处理 , 变换后 , 产生新的 “输出数据流” ;

黑洞 : 某个加工 , 只有输入 , 没有输出 , 称为黑洞 ;

奇迹 : 某个加工 , 只有输出 , 没有输入 , 称为奇迹 ;

三、数据流图绘制原则


数据流图 由 数据流 , 加工 , 数据存储 , 外部实体 组成 , 先找出 三个具体存在的事物 外部实体 , 加工 , 数据存储 , 然后在为这些事物添加 数据流 箭头 ;

拿到一个需求之后 , 绘制数据流图流程 :

① 外部实体 : 找出外部实体 , 使用系统的 人 或 组织 ;

② 加工 : 找出系统中的 中间件 加工 , 处理数据用的 ;

③ 数据存储 : 找到 暂时存储数据的载体 , 数据存储 ;

④ 数据流 : 在上述 外部实体 , 加工 , 数据存储 基础上 , 绘制 数据流 箭头 ;

0 人点赞