数据流图

* 本页面的内容总结和归纳了数据流图相关的知识点。

数据流图在我们的开发工作中还是比较常见的一种图表形式,今天就总结下数据流图相关的知识点。

一、 什么是数据流图

数据流图(Data Flow Diagram),简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

下面是一个一图书借阅这个场景设计的数据流图示例,大家可以感受下,数据流图是如何从数据的角度来描述一个系统的。

数据流图示例
数据流图示例
二、 数据流图解决了什么问题

数据流图将用以寻找、编辑、存储和分发数据的功能或过程图像化,方便用户和系统设计人员沟通。数据流图的结构也容让开发人员从高点分析系统,继而生成一系列用以深入分析的图表。数据流图被广泛应用,原因如下:

  • 用于表达系统的逻辑信息流
  • 用于寻找系统需求
  • 简单、易理解的图形符号
  • 建立手动和自动系统需求
三、 数据流图的常用符号

数据流图有4中常用的基本符号:

  • 数据流:是数据在系统传播的路径,是有一些固定的数据组合而成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成
  • 数据源:代表系统之外的实体,可以是人、物或其他软件系统
  • 加工:是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出
  • 数据存储:表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等
数据流图的常用符号
数据流图的常用符号
四、 绘制数据流图的原则

画数据流图需要注意以下几点:

  • 守恒加工原则:一个加工的数据不应与输入数据流同名,即使他们的组成成分相同
  • 保持数据守恒。简单点说,加工处理后的输出数据必须是从加工的输入数据流获得,或者是其产生的数据
  • 加工加工必须有输入输出数据流,因为系统不会凭空出现不明数据
  • 所有数据必须由一个外部实体开始,也要从一个外部实体结束
  • 外部实体之间不允许存在数据流
  • 提高数据流图的易懂性:合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性
五、 实力操练:图书预订系统

需求描述:书店向顾客发放订单,顾客将所填订单交由系统处理,系统首先依据图书目录对订单进行检查并对合格订单进行处理,处理过程中根据顾客情况和订单数目将订单分为优先订单与正常订单两种,随时处理优先订单,定期处理正常订单。最后系统将所处理的订单汇总,并按出版社要求发给出版社。

1、构建顶层数据流图
构建顶层数据流图
构建顶层数据流图
2、构建0层数据流图(细化顶层数据流图)
构建0层数据流图
构建0层数据流图
3、逐层细化数据流图
逐层细化数据流图
逐层细化数据流图

关于数据流图,你都GET到了吗?


* 本页内容参考以下数据源:

  • https://www.visual-paradigm.com/cn/guide/data-flow-diagram/what-is-data-flow-diagram/
  • https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E6%B5%81%E5%9B%BE/4136477
  • https://zhuanlan.zhihu.com/p/83780872
  • https://www.jianshu.com/p/2bf96cb928b3

凯冰科技 · 代码改变世界,技术改变生活
下一篇:ER图 →