数据流程图(DFD):概念、创建与应用
1. 数据流程图概述
数据流程图(DFD)源于 20 世纪 70 年代和 80 年代定义的结构化分析技术。在结构化分析中,软件开发人员从上下文图创建 DFD,然后分解 DFD 以创建解决方案的功能模块。不过,我们使用 DFD 主要是为了收集需求,而非设计技术架构。
DFD 以数据为导向,能让我们了解数据在解决方案中的流动全貌。在很多情况下,流程流会与其他流程流共享数据,但这些流程不一定由同一组人员执行。每个组会解释他们如何使用数据,但没有一个单一的流程流能涵盖使用共享数据的每个流程,并展示这些流程如何通过所使用的数据相互关联。
如今,分析师采用更平衡的方法,既关注用户如何从解决方案中获取价值,也关注数据如何在系统中流动。而 DFD 有助于我们对系统的这种视图进行建模。
2. DFD 模板
DFD 是一种可视化图表,使用四种类型的元素,具体如下表所示:
| 元素 | 含义 |
| ---- | ---- |
| 数据存储 | 临时或永久保存数据的地方 |
| 外部实体 | 向系统提供数据或从系统获取数据的人员或其他系统。如果外部实体是系统,则从框中移除人员 |
| 处理 A | 操纵数据的过程 |
| 数据 | 数据存储、外部实体和处理之间的数据流动 |
数据流线必须从数据存储或实体经过处理,因为外部实体和数据存储不能直接相互传递数据。以下是一个 DFD 模板:
graph LR classDef process fill:#E5