数据流图的基本元素及其作用
数据流图通过外部代理(实体)描述系统与外界之间的数据交互关系,内部的活动通过处理(加工)表示,用数据流描述系统中不同活动之间的数据传输内容和方向,需要持久化存储的数据用数据存储表示,一般用文件系统或者数据库表存储数据。
数据流图中所包含的四种元素:
- 外部实体(External Agent)定义位于项目范围之外,但与正在被研发的系统有交互关系的人、部门、外部系统或组织
- 加工(Process)在输入数据流或条件上执行,或者对输入数据流或条件做出响应的工作
- 数据存储(Data Store)描述静止的数据,表示系统中需要保存的数据
- 数据流(Data Flow)描述运动中的数据,表示到一个过程的数据输入,或者来自一个过程的数据输出
外部实体为正方形,例如:
加工为圆角矩形,例如:
数据库为开口矩形,例如:
数据流为箭头。
DFD画法常见错误
画法原则
- 数据流必须连接加工
- 加工和存储必须有进有出
- 同一加工或存储进出数据流不同名
- 每个加工必须既有输入数据流,又有输出数据流
- 所有的数据流必须以一个外部实体开始,并以一个外部实体结束
- 外部实体之间不应该存在数据流
应用
答:
- E1与E2实体之间不能有数据流(外部实体之间不用存在数据流,违背了数据守恒原则)
- E2与DS1之间不能有数据流(外部实体与数据库之间不能直接存在数据流,违背了数据守恒原则)
- P1没有输入(一个加工必须同时有输入输出,违背了守恒加工原则)
- P3没有输出(一个加工必须同时有输入输出,违背了守恒加工原则)
- P4进出数据流同名(一个加工的输入输出不同名,违背了守恒加工原则)
- 不应有DF7数据流(数据库之间不存在数据流,违背了数据守恒原则)