数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。
数据流图或数据流程图(Data Flow Diagram),缩写为DFD。数据流图DFD是描述系统中数据流程的一种图形工具,它标志了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换逻辑输出所需的加工处理。
值得注意的是,数据流图不是传统的流程图或框图,数据流也不是控制流。数据流图是从数据的角度来描述一个系统,而框图是从对数据进行加工的工作人员的角度来描述系统。
DFD显示系统将输入和输出什么样的信息,数据如何通过系统前进以及数据将被存储在何处。它不显示关于进程计时的信息,也不显示关于进程将按顺序还是并行运行的信息,而不像传统的关注控制流的结构化流程图,或者UML活动工作流程图,它将控制流和数据流作为一个统一的模型。
数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
数据流程图包括:
a.指明数据存在的数据符号,这些数据符号也可指明该数据所使用的媒体;
b.指明对数据执行的处理的处理符号,这些符号也可指明该处理所用到的机器功能;
c.指明几个处理和(或)数据媒体之间的数据流的流线符号;
d.便于读、写数据流程图的特殊符号。
在处理符号的前后都应是数据符号。数据流程图以数据符号开始和结束,数据流图有两种典型结构,一是变换型结构,它所描述的工作可表示为输入、主处理和输出,呈线性状态。另一种是事务型结构,这种数据流图呈束状,即一束数据流平行流入或流出,可能同时有几个事务要求处理。