数据流图(DFD)

  • Post author:
  • Post category:其他




一、

数据流图

( DFD )

文章目录



一、

数据流图

( DFD ) 简介



数据流图 ( Data Flow Diagram ) :



需求分析

阶段 , 使用的工具 , 在

“结构化分析”

中 , 数据流图 ( DFD ) 使用频率很高 ;


数据流图涉及内容 :

基本概念符号 ,

数据字典 ,

数据平衡原则 ;



二、数据流图 ( DFD ) 概念符号




1、数据流


数据流 :

数据流由

一组固定成分的数据

组成 , 表示

数据的流向 ;


数据流命名 :

每个数据流都有一个

命名

, 该命名表达了

该数据流传输



数据的含义

; 如在箭头上标注 “账号信息” , 表示该数据流是传输账号信息 的 , 表示

数据的内容 ;


数据字典 :

数据流箭头上只标明了 “账号信息” ,

没有具体的格式内容

, 是只有账号 , 还是有账号/密码/验证码等信息 , 这些数据详细格式 , 都在

数据字典中定义 ;


符号表示 :

数据流 使用

箭头

表示 ,

箭头所指的方向 ,

代表了数据流向 ;

在这里插入图片描述



2、加工 ( 核心 )


加工 :

描述

“输入数据流”



“输出数据流”

之间的变换 , 即

对数据进行了什么样的处理

, 使得 “输入数据流” 变为 “输出数据流” ;


主要操作 :

在程序中的体现是

处理 数据的过程

, 向 “加工” 中输入数据流后 ,

将数据进行加工 , 处理 , 变换后

, 产生新的 “输出数据流” ;


符号表示 :

使用

圆形

/

圆角矩形

表示加工 ;

在这里插入图片描述



3、数据存储


数据存储 ( 文件 ) :

表示

暂时存储的数据

, 数据存储的粒度是以 表 为单位 ;


文件名称 :

每个 数据存储 ( 文件 ) 都有

名字 ;


方向 :


流向文件的数据流

表示

向文件内写入内容

,

从文件流出的数据流

表示

从文件读取内容

;


符号表示 :

使用

双横线

/

半框形矩形

表示

在这里插入图片描述



4、外部实体


外部实体 :


软件系统之外的

人员 / 组织 ;


符号表示 :


矩形 ;

在这里插入图片描述



三、数据流图 ( DFD ) 分层


在这里插入图片描述



1、分层说明

数据流图分层 , 最上层是

顶层数据流图

, 第二层是 层数据流图 , 最底层是

底层数据流图 ,


“顶层数据流图”



“底层数据流图”

之间是若干

中层数据流图 ,

中层数据流图 需要进行编号 ,

从 开始编号 ;



2、顶层数据流图


顶层数据流图 :


中间的椭圆

是需要开发的

系统

,

周边的矩形

表示的是

外部实体人或组织

, 外部实体 与 系统 之间 , 有数据传输关系 ;

一个形象的说明是

多个人吃火锅

,

外层周边是人 ,

中心位置火锅是系统 ;

顶层数据流图 能够表达的信息是非常有限的 , 其

将整个系统 , 使用一个节点表示

,

其可以体现出

系统与外界实体之间的交互 ,

但是

系统内部的情况

, 系统内部模块之间的数据交换 是没有体现的 ;



3、中层数据流图



“顶层数据流图” 进行细化

, 细化后的 class=”mord”>0 层数据流图 ,


与 顶层数据流图 比较没有变化的部分 :


外部实体

,

外部实体与系统之间的数据流

, 是没有变化的 ;


变化部分 :


有变化的部分是系统内部 , 系统内部进行了细化

, 原来系统是一个节点 , 在 中层数据流图 中 , 会将一个节点 拆分成 多个节点 , 这些节点就是系统中的数据处理部件 , 即 加工 ;


这些数据处理部件 ( 加工 ) 之间会有数据流的交互 ,



4、底层数据流图

针对每个加工 节点 , 将其拆分 ,

绘制其中的更详细的数据流转情况 ;

数据流图 ( DFD ) 分层 , 是从

顶层 -> 中层 -> 底层

, 逐层进行分解 , 这种分解思路 , 与结构化的开发方法 , 是完全匹配的 ;

因此 ,

数据流图 是 结构化 开发方法中 , 最常用的工具 ;

绘制数据流图时 , 要保证

上一层数据流图 与 下一层数据流图 保持平衡

, 这就是

数据流图平衡原则 ;