Tong's Digital Garden

Logo

welcome to Tong's Digital Garden

 bigguaiwutong@qq.com

View My GitHub Profile

数据流图怎么画

by tong

什么是数据流图

定义

Data Flow Diagram,缩写为DFD。中文名数据流图数据流程图。数据流图 DFD 是描述系统中数据流程的一种图形工具,它标志了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换逻辑输出所需的加工处理。

目的

帮助我们知道系统的输入和输出,数据从哪里来到哪里去,数据存储在哪里

怎么画数据流图

数据流图例

截屏2024-07-12 11.28.21.png

如果系统的规模较大,仅用一个 DFD 难以描述,会使得系统变得复杂、庞大而又难以理解。为了降低系统的复杂性,一般采取逐层分解的方法,绘制分层的 DFD。

指导原则

  1. 父子平衡 —— 父图输入输出数据流等于子图输入输出数据流
  2. 数据流应该流入某个转换或者由某个转换流出,而不能直接从外部实体直接流入数据存储,也不能从数据存储直接流入外部实体
  3. 守恒加工原则:每个加工至少有一个输入数据流和一个输出数据流

可参考内容

  1. 第 0 层的数据流图应将软件或系统描述为一个圆圈(也叫泡泡,代表着转换)
  2. 应仔细标记主要的输入和输出
  3. 通过把选定的处理、外部实体和数据存储分离为下一层而开始精化过程
  4. 一次精化一个泡泡
  5. 应使用有意义的名称标记所有的箭头泡泡
  6. 当从一个层转到另一个层时要保持信息流连续性

画图过程

1. 识别

从需求中分析出数据流图的四种内容

2. 画第 0 层数据流图

画第 0 层数据流图,即反映最主要业务处理流程 第 0 层示例 截屏2024-07-12 11.04.17.png

3. 画第 1 层数据流图

此处需要基于需求分析阶段的动名词抽象

根据动名词抽象,如果一个动词是由 safeHome 处理那么就用一个泡泡进行展示,名词是外部实体、数据流、数据存储 通过动名词配合可以画出第 1 层 DFS

截屏2024-07-12 11.12.44.png

4. 画第 2 层数据流图

在第 1 层中表示的转换过程可以被精化到更低的层次。例:精化 监测传感器 处理至第 2 层 DFS。注意:在这两层之间保持了信息流的连续性

第2层.png

5. 不断分解

最终目标:不断分解每个泡泡直到每个泡泡都执行了单一的功能


back

home

tags: 技术方案