





















软件设计师案例题型 - DFD(数据流图)
一、数据流图基本概念
1. 数据流
说明:数据流由一组固定成分的数据组成,表示数据的流向。每个数据流通常有一个合适的名词反映数据流的含义
2. 加工 (处理过程/函数、功能模块)
3. 数据存储(文件)
说明:数据存储不是以数据库为单位,而是以表为单位,措辞一般为 XX记录文件/表
4. 外部实体
外部实体是指存在于软件系统外的人员或组织
注意:考试中,通常容易把数据流图和ER图混淆


二、数据流图平衡原则
数据流图的平衡原则非常重要,几乎每次考试都需要利用这个原则解决 一些分析类的问题。平衡原则有两个维度:
1. 父图与子图之间的平衡
父图(顶层数据流图)和子图(0层数据流图)在外部实体或父加工与拆分后的子加工之间的数据流需要保持平衡(一致),利用这一平衡原则找出哪些数据流在 分图的时候,细化的时候被遗忘了,丢失了。
2. 子图内平衡(既有输入也有输出)
对于一个数据流图的任意一个加工,应该正常的形态是既有输入,又有输出;只有输入,没有输出称之为黑洞;只有输出,没有输入称之为奇迹。这两类情况一旦在图中出现,要意识到图本身出了问题,在查找错误的时候要指出这类错误,有时甚至需要补充到底缺了哪一个数据流,起点是什么,终点是什么,数据流名称又是什么检查数据流的匹配情况,不能有遗漏,同时还要检查箭头所指的方向。
父图与子图之间的平衡例子。顶层加工一般即为要开发的系统,外部实体与要开发的系统之间有着数据的流转,题目常常需要我们补充父图或子图缺失的数据流。要找0层缺失就找顶层图哪些实体与系统间有哪样的数据流, 这些数据流有没有在0层数据流中出现。反之亦然,这些数据流必然是系统与 外部实体间的联系。但注意0层数据流图内部的加工与加工之间的数据流,在 0层图里面有,在顶层图是体现不出来的。

三、数据流图案例题考试内容
1. 写出顶层数据流图中的外部实体名 (E)
2. 写出各个数据存储的名称 (D)
3. 补充缺失的数据流图
一般都是数据加工(P)到 外部实体(E)/数据表(D) 或者 外部实体(E)/数据表(D) -> 数据加工(P)
数据的输入/读取: 数据表(D)-> 数据加工(P)
数据的输出:数据加工(P)-> 数据表(D)
四、用结构化语言来描述某一次加工过程
1. 开始结束
BEGIN / END
2. 输入输出(数据流)
DFD里“箭头进来/出去”:
READ 读取
WRITE 写入
OUTPUT 输出
3. 条件判断(最重要)
DFD“判断节点”:
IF ... THEN ... ELSE ...
ENDIF
4. 循环结构(高频)
WHILE ... DO ... ENDWHILE
5. 处理/加工(动词)
DFD“加工圆圈”:
PROCESS 处理、 CALCULATE 计算、 CHECK 检查、 VALIDATE 校验、 UPDATE 更新
6. 数据存储(数据库)
INSERT 插入、 SELECT 查询、UPDATE 更新、DELETE 删除(或者简写:READ/WRITE DATABASE)
7 . 标准模板
BEGIN
READ 输入数据
IF 条件 THEN
PROCESS 处理数据
WRITE 写入结果
ELSE
OUTPUT 错误信息
ENDIF
END
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。