数据流图是什么
数据流图(Data Flow Diagram),简称DFD,是结构化分析方法的工具,需求分析阶段产出的结果。以图形的方式描述数据在系统中的流动和处理的过程,它反映了系统必须完成的逻辑功能。
如下是一个数据流图的示例:
数据流图-示例
该数据流图描述了信息系统的主要需求
数据流动
数据存储
处理数据的逻辑关系
数据流图有两种类型,分为:
业务数据流图:描述了完成业务层面的数据流动,
系统数据流图:描述则描述系统层面的数据流动。
为什么画数据流图
无论是在业务场景还是系统的流程描述中,数据流都是读者非常关注的内容,数据流图可以突出的展示数据流,让读者了解业务或者系统中的数据的流动,进而理解业务流程或者系统流程。
数据流图被广泛应用,原因如下:
图形符号简单统一理解
可以清晰地表达数据流及其相关的数据处理、数据存储和外部用户。
可以自顶向下逐级分析数据流,这样能够对复杂系统进行逐层分析。
数据流图常用的符号
如下是对数据流图中的元素的说明:
元素 |
说明 |
数据的源点/终点 |
指数据流的起点和结束点,可以代表外部实体 |
外部实体 |
指系统以外又与系统有交互关系的人或事物 |
数据处理
|
也称为数据加工,表示接收一定的数据输入,对其进行处理,并产生输出。处理的对象为:数据结构或数据内容。 |
数据流 |
指处理功能输入或输出的数据,箭头表示数据流向。 |
数据存储
|
可以表示暂时存储或者持久存储的数据,可以代表文件,数据库等系统元素。 |
如何EA中创建数据流图
如何在EA中创建数据流图呢?如下是创建数据流图的具体操作过程:
1. 在模型向导中选择 Data flows 图建模类型
2. EA会创建一个数据流图,并打开对应的工具箱,里面列有数据流图的元素和关系,
3. 可以使用工具箱中的模型元素和关系在途上创建数据流图
数据流图创建示例
接着我们来看一下,一个完整的数据流图在EA中是如何显示的?
如下是EA中数据流图的一个建模示例:
数据流图建模示例
数据流图在EA中的应用
在需求阶段,需求分析师人员可以使用数据流图描述功能需求和数据需求及之间的关系。系统架构师、数据分析师以及开发人员也可以使用数据流图进行分析设计,这些数流图可以作为整个IT项目建设交流的工具。
数据流图可以用于如下场景:
需求分析师进行需求分析时的需求建模,
业务人员进行业务分析时候的业务流程建模,
系统架构师可以用来分析整个系统的信息流程,
数据分析人员可以根据数据存储,进行数据分析,向数据库设计过渡
开发人员可以通过数据流图显示程序和外部实体之间如何交互。 |
数据流图分为:顶层数据流图,中层数据流图以及底层数据流图。它采用自顶向下,逐步细化的设计原则。
如下是以商品订购系统为例的顶层数据流图,如图所示
顶层数据流图
如下是顶层数据流图上的元素说明:
外部实体:订购人,快递员
数据流:订购信息,订单,送货单
数据处理:订购处理,支付,配送
数据存储:商品目录,付款记录,商品库存
|
接下来我们对其中的订购处理的环节进行细化,画出订购处理的子图,也就是中层数据流图,如图所示:
中层数据流图
如下是中层数据流图上的元素说明:
源点和终点:订购处理的两端为数据流起始点和终点,映射到上层数据图对应的数据流,
数据流:商品名称,订购信息,购买商品以及订单,
数据处理:查询商品信息,加入购物车,指定送货方式,
数据存储:商品信息,购物信息,联系人信息。 |
以上是在EA中建立数据流图的方法介绍,希望此文对大家了解和使用数据流图起到帮助作用。
如果您希望了解更多信息:
下载 pdf版: 《数据流建模(EA指南)》
本文使用的建模工具为EA,可以下载试用版http://tool.uml.com.cn/ToolsEA/download.asp
后记
希望您读了此文后有所受益。
如果您有经验乐于分享,欢迎投稿给我们。
如果您对我们的培训、咨询和工具感兴趣:
|