什么是数据流图 (DFD)?

2024 年 11 月 22 日

作者

Gregg Lindemulder

Senior Writer

Matthew Kosinski

Enterprise Technology Writer

什么是数据流图 (DFD)?

数据流图 (DFD) 是可视化表示的通过信息系统或业务流程的数据流。DFD 使复杂的系统更易于理解,是软件工程、系统分析、流程改进、业务管理和敏捷软件开发的常用资源。

数据流图使用图形符号来说明数据从进入系统到离开系统的路径、流程和存储库。这一可视化模型可帮助专业人员确定如何提高现有系统和流程的效率和有效性,并创建新的系统和流程。

例如,保险索赔流程的数据流图 (DFD) 将直观地展示索赔的流程:

  1. 由客户提交。
  2. 由保险公司处理和评估。
  3. 由理赔员审查或调查。
  4. 拒绝或支付给保单持有人。

分析师可以检查 DFD 来揭示流程中的瓶颈,检测可能发生欺诈的领域,帮助利益相关者了解流程并改进设计。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

数据流图的历史

20 世纪 70 年代,软件工程师 Larry Constantine 和 Ed Yourdon 在他们的著作《Structured Design》中引入了数据流图。他们没有关注软件过程,而是根据数据在软件系统内的移动方式来制定 DFD。

计算机科学家 Tom DeMarco、Chris Gane 和 Trish Sarson 开发了至今仍在使用的标准化数据流符号和符号,从而帮助普及了 DFD。

最初,数据流图主要用于软件工程。在发现它们在理解和改进业务流程工作流方面的价值后,业务专业人员开始使用它们。

自 20 世纪 90 年代统一建模语言 (UML) 推出以来,软件程序员不再仅仅依赖数据流图进行软件工程。UML 图提供了复杂的面向对象系统中精密、详细的结构和行为视图。

如今,DFD 主要用作 UML 图和流程图的补充工具,在软件开发期间提供高级系统概览。

为什么数据流图很重要?

数据流图很重要,因为借助它可以更轻松地理解经过复杂系统或流程的信息流。通过将整个系统的组件可视化,DFD 可以帮助用户:

  • 获得清晰理解:用简单的符号和标签直观地表示复杂的系统,比段落式的文字描述更容易理解。
  • 分析系统:DFD 可显示系统或流程组件之间的关系和交互,以便于分析。

  • 识别问题:DFD 可以更容易地区隔系统设计问题,例如瓶颈、不一致、冗余等。

  • 改进流程:DFD 可帮助分析师将优化数据流的新方法可视化,以加速和改进业务流程。

  • 促进协作:DFD 为整个组织的利益相关者提供共享的参考点,从而促进有效的沟通和协作。

  • 创建文档:DFD 可捕获数据流的顺序、要求和过程等基本信息,以便轻松进行记录。

  • 保护数据:DFD 指明敏感信息进出系统的位置,有助于化解潜在的数据安全风险。

数据流图的组件

DFD 有 4 个主要组件:

  • 外部实体
  • 流程
  • 数据存储
  • 数据流

外部实体

这些是 DFD 中数据流的起点和终点。外部实体放置在 DFD 的边缘,以表示整个系统或流程的信息输入和输出。

外部实体可以是个人、组织或系统。例如,在对购买和接收销售收据的流程进行建模时,客户可能是 DFD 中的外部实体。外部实体也被称为终止符、行动者、源和汇。

流程

流程是更改或转换数据的活动。这些活动可能包括计算、排序、验证、重定向或推进该数据流分段所需的任何其他转型。例如,信用卡付款验证是在客户的购买 DFD 中发生的一个过程。

数据存储

这些是 DFD 中存储数据以供日后使用的位置。数据存储可以代表数据库、文档、文件或任何用于数据存储的存储库。例如,产品配送 DFD 中的数据存储可能包括客户地址数据库、产品库存数据库和交付计划电子表格。

数据流

数据流是信息在外部实体、进程和数据存储之间移动时所采用的路线。例如,在电子商务 DFD 中,将输入登录凭据的用户与身份验证网关连接起来的路径将是数据流。

数据流图中使用的符号

圆形、椭圆、箭头和矩形等标准化符号和记号用于直观地表示 DFD 组件。如今,数据流图模板中使用了两种常见的记号集:Yourdon 和 Coad 方法以及 Gane 和 Sarson 方法。这两个系统都以创造它们的计算机科学家的名字命名。

这些方法在表示流程和数据存储时使用的符号不同,但其他方面是相同的。

  • 外部实体:矩形
  • 流程:圆形(Yourdon 和 Coad)或带圆角的矩形(Gane 和 Sarson)
  • 数据存储:平行线(Yourdon 和 Coad)或开放式矩形(Gane 和 Sarson)
  • 数据流:水平线

数据流图的类型

DFD 有可以为系统或流程提供不同视角的两种类型:逻辑 DFD 和物理 DFD。

逻辑 DFD

逻辑 DFD 提供执行业务或系统流程所需的数据流的高级视图,而不考虑技术或实施细节。其关注点是所需的数据以及这些数据如何在流程中移动以完成业务目标。

逻辑 DFD 可以代表业务活动,例如仓库的订单履行、客户在线购买或医疗设施的患者接收。

物理 DFD

物理 DFD 可以可视化系统或流程的实施,包括所需的软件、硬件和文件。物理 DFD 侧重于系统或流程的底层技术、程序和运营。

物理 DFD 通常用于表示复杂的系统和工作流程,例如供应链软件如何维护仓库库存,或者电子健康记录如何在医院系统中安全移动。

数据流图的层次

有时使用多个 DFD 级别创建数据流图,以渐进显示有关系统或流程的更多详细信息。这种分层方法从简单的高级视图开始,随着较低级别的 DFD 深入流程和子流程,开始变得更加复杂。

0 级

0 级 DFD 也称为“上下文图”,是一种将整个系统作为单个过程可视化的高级视图。这是最简单、最基本的级别。它应该对任何查看它的人来说都是容易理解的,无论技术技能或工作角色如何。

1 级

1 级 DFD 更详细地探索高级流程的组件。上下文级 DFD 中的单一过程被分解为子过程,从而提供有关功能和数据流路径的更多信息。

2 级

第 2 级通过添加新的子流程及其与数据流和数据存储的交互和关系提供了更精细的细节。这一级别提供了系统或流程内部运营的高度复杂的视图。

3 级

由于 DFD 的设计目标是易于获取和理解,因此超出第 2 级的复杂性是不寻常的。但是,高度复杂的系统可能需要 3 级 DFD 的详细细节,它映射了数据过程或系统的各个方面。

AI Academy

数据管理是生成式 AI 的秘诀吗?

深入了解为什么高质量数据对于成功使用生成式 AI 至关重要。

数据流图规则

大多数数据流图都遵循相同的基本规则:

  • 每个数据流都标有简短的描述性文本标记,用于标识正在移动的数据的类型。

  • 每个流程都标有一个简短的动词短语,描述正在执行的数据转换。

  • 每个数据存储都标有一个名词或名词短语,用于描述数据和存储类型。

  • 每个流程和数据存储至少都有一个输入和一个输出。

  • 数据存储无法直接连接到外部实体。

  • 外部实体可以将数据传输到流程,但不能将数据直接传输到数据存储。

  • 为清晰起见,数据流不会相互交叉。
相关解决方案
数据管理软件和解决方案

设计一项数据战略,消除数据孤岛,降低复杂性并提高数据质量,以实现卓越的客户和员工体验。

深入了解数据管理解决方案
IBM watsonx.data™

watsonx.data 支持您通过开放、混合和已治理数据,利用您的所有数据(无论位于何处)扩展分析和 AI。

了解 watsonx.data
数据和分析咨询服务

借助 IBM Consulting 释放企业数据的价值,构建一个可带来业务优势的洞察驱动型组织。

了解分析服务
采取后续步骤

设计一项数据战略,消除数据孤岛,降低复杂性并提高数据质量,以实现卓越的客户和员工体验。

深入了解数据管理解决方案 了解 watsonx.data