数据流图(Data Flow Diagram,简称DFD)是一种用于系统分析和设计的图形表示方法,它描绘了系统中数据的流动路径以及数据如何被不同处理(加工)改变。DFD通常用于信息系统开发的早期阶段,帮助理解系统的逻辑功能,而不涉及具体的实现细节。这种图形化工具因其简洁明了,使得非IT背景的用户也能轻松理解。
DFD由四个基本符号构成:
1. 数据流(Data Flow):表示数据在系统中传递的过程,由一个或一组数据组成。数据流的命名应该直观反映其含义,可以有相同的名字,但必须有不同数据或含义。流的方向是从源点到终点,多个数据流可以在两个符号间存在,但不表明它们之间的关系。
2. 加工(Processing):表示对数据进行的操作或转换,通常用P表示。加工分为标识和功能描述两部分,编号唯一且简明的加工名称用于概括加工行为,详细描述则在数据词典中给出。复杂的加工可通过分解使其功能更简单易懂。
3. 数据存储(Data Store):用于存储数据,也称为局部文件。数据存储应有明确的名称,并与数据流相连。可以有编号以“D”开头,同一数据存储可在图中多处表示,以避免交叉线。
4. 外部项(External Entity):代表系统外的实体,如人或其他系统,提供输入或接收输出。它们在环境中与系统交互,有编号以“S”开头,不需要详细描述。
绘制数据流图的步骤如下:
1. 确定外部项:识别系统的输入和输出源头。
2. 确定系统的主要输出和输入数据流,初步构建关联图。
3. 分解系统成多个加工,每个加工有其输入和输出数据流,以及可能涉及的数据存储。
4. 采用自顶向下,逐层分解的方法,对上层图的加工进行细化。
5. 不断重复步骤4,直至所有加工都得到充分分解。
6. 检查和调整图的布局,确保分解合理,无歧义。
通过DFD,系统分析人员可以与用户进行有效的沟通,同时为系统设计提供基础。DFD的层次结构有助于逐步深入理解系统需求,为后续的系统建模和实现提供清晰的逻辑框架。在实际应用中,数据流图常常配合数据字典一起使用,以提供更加完整和精确的系统描述。