软考-数据流图Data Flow Diagram 总结
发布网友
发布时间:2024-10-22 12:50
我来回答
共1个回答
热心网友
时间:2024-10-24 03:17
数据流图(Data Flow Diagram,简称DFD)是结构化系统分析方法中的重要工具,用于描绘系统的逻辑功能、数据在系统中的逻辑流向和逻辑变换过程,形成系统的功能模型。DFD采用图形方式表示,主要由实体、过程、数据存储和数据流四个基本组件构成。
实体(Entity)是数据的来源或目标,可为数据提供方(称为源)或数据接收方(称为汇)。实体通常以矩形表示,其右下角的斜线表明实体在DFD中的位置。实体亦可称为代理、终止者或源/汇。
过程(Process)涉及数据的转换、计算、逻辑决策或根据业务规则指导数据流。过程接收输入并生成输出,通常以简单动词和数据流名称命名,如“提交付款”或“获取*”。过程在DFD中用圆圈或分段矩形表示,并包含过程名称和编号。
数据存储(Data Store)是过程之间存储数据的地方,供同一过程或另一过程后续检索。文件和表格被视为数据存储。数据存储名称简单且具有意义,如“客户”、“订单”、“产品”。数据存储在DFD中通常以矩形表示,右侧缺失并标注为存储区域的名称。
数据流(Data Flow)是数据在实体、过程和数据存储之间的流动。它代表了DFD组件之间的接口。数据流名称反映数据的性质,且在特定DFD中应具有唯一性。数据流通过箭头表示,箭头注释为数据名称。
DFD分为顶层、中间层和底层数据流图。顶层数据流图包含一个加工表示整个系统,输出数据流和输入数据流为系统的输入数据和输出数据,显示系统范围及其与外部环境的数据交换关系。中间层数据流图细化父层数据流图中的某个加工,可再次细化形成子图,层次取决于系统复杂度。底层数据流图表示无法进一步分解的加工,称为“原子加工”。
DFD与流程图的主要区别在于:流程图展示完成过程的步骤,而DFD展示数据流。流程图不涉及外部源的输入或输出,DFD描述数据从外部源到内部存储或反之的路径。流程图显示流程的时序和顺序,DFD则不描述流程的并行执行或按顺序执行。DFD定义系统功能,而流程图展示如何使系统运行。流程图用于设计过程,而DFD用于描述完成过程的数据路径。
DFD在系统分析的初步阶段用于理解现有系统并表示所需系统。它们在对象导向设计和分析中特别有用,有助于结构化步骤,并且DFD和对象技术共享相同的语法结构,因此适用于对象领域。DFD作为信息开发形式,提供关键信息转换的洞察,作为系统流程的依据。从功能规格开发DFD并能够解释它们是技术通信领域内增加价值的技能。