DFD图

article/2025/8/21 7:47:13

最近备战软考,复习到数据流图,学习成果与大家分享。

 

数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。(百科)

 

谈谈我的一点理解

有时候我们要开发或者理解一个系统,总体的系统结构我们弄清楚了,但是细节上需要再深入,而数据流图“自顶向下,由外到内,逐步细化”的思想就凸显出很重要的作用,它可以作为我们系统分析的指导方法。

 

数据流图分析关注的重点是数据,将面向控制的信息作为数据进行处理,包括了系统的所有数据,能准确的抽象系统数据的流向和处理过程.概括的描述当数据在系统流程中流动和处理的移动变换过程;数据流图分层进行分析,对顶层图的分析可以发现是否有输入信息或需要输出的信息被遗漏,容易及早发现系统各部分的逻辑错误,也容易修正.每一层都明确强调“需要什么”,“干了什么”“给出什么”;

这样逐层分解下去,系统被严密的展开,系统的框架就展现出来了.采用数据流图进行分析,可以提高分析的可见性和可控性,更容易理解软件要完成什么功能,数据来源于哪里,结果要输出到哪里等等,清晰明了。

 

下面我们来看看数据流图的组成,设计原则和应用


基本图形符号


加工(数据处理):输入数据在此进行变换产生输出数据。加工对象为:数据结构或数据内容。

数据流:箭头表示数据流向,作为加工之间传输数据的命名通道(数据流有名字),或数据存储文件与加工之间的非命名通道(数据流没名字,但其连接的加工和文件的名字,和流向可以确定其含义)。

 

同一个数据流图上不能有同名的数据流,如果两个以上的数据流指向一个加工,或是从一个加工中输出两个以上的数据流,这些数据流往往存在一定关系,如图:


 

数据存储文件:流向数据存储的数据流可以理解为写入文件或查询文件,从数据存储流出的数据流可以理解为从文件读数据或得到查询结果。

 

数据源点或终点:是系统外部环境中的实体,也称外部实体。它们作为系统与系统外部环境的接口界面,在实际问题中可能是人员、组织、其他硬件系统等。一般出现在顶层数据流图中。

 

数据流图的设计原则



下面我们通过一些示例来说明这些设计原则

 

示例1


上图违反了父图与子图的平衡原则

因为父图中有提货单输出流,但子图中没有与这条输出流相关的输出流。

我们看两者的输入流,父图的输入流是订货单,而子图的输入流是数量,账号,客户,这是平衡的,因为子图的三条输入流是对父图输入流的分解,同样子图中的加工4.14.24.3也可以看成是对父图加工4的分解,这符合自顶向下,逐层细化原则

 

示例2

下面是一张有错的数据流图。


1)根据数据守恒原则,外部实体和外部实体,外部实体和数据存储之间不能存在数据流,,存储与存储之间也不应该有数据流,数据流必须跟加工有关,没有加工数据流不可能流来流去的。


2)对于加工,输入是A,输出还是A,也违反了数据守恒原则,输入与输出一样,加工没有作用。


3)对于加工,只有输入没有输出,违反了数据守恒原则。比如,人不可能只吃饭,不大小便。嘿嘿



4)对于加工,只有输出没有输入,违反了数据守恒原则。比如,人不可能一直大小便,但不吃饭。嘿嘿

 

 

示例3


加工细节隐蔽原则说的是:在画父图时,只需画出加工和加工之间的关系,而不必画出各个加工内部的细节,例如上面的父图中,并没有画出加工1的内部细节

再进行对加工1进行细化的时候,我们就应该画出它的内部细节,如第二个图。

 

简化加工之间的关系:加工间的数据流越少,各个加工就越相对独立,耦合越低,所以应尽量减少加工间输入/输出数据流的数目。

 

均匀分解:不要出现,一些加工分解了10层,而另一些加工分解了3层这样的情况

 

忽略枝节:暂时不要考虑一些例外情况,出错处理等枝节性问题。

 

表现的是输入流而不是控制流:不要和程序流程图混淆,数据流图,强调从数据加工的角度来描述系统,自然是数据流。


这些原则中,最重要的当属:保持父图与子图平衡,保持数据平衡,加工细节隐蔽

 一般从这三个原则来考查一张数据流图是否正确。

  

数据字典

 

数据字典的就是对数据流图中出现的所有被命名的图形元素在数据字典中作为一个词条加以定义,使每个图形元素的名称都有一个确切的解释。

 

在对数据流和数据文件词条进行描述时可能包含一定的数据结构,对于数据结构的描述常用的是定义是。如下表

 

在数据字典中有4种类型的条目:

1、数据项条目:通常为数据项的值类型,允许的取值范围等

2、数据流条目:给出某个数据流的定义,列出该数据流的各组成数据项。

3、文件条目:对文件的定义,列出期组成的数据项

4、加工条目:对每个不能再分解的加工做说明,包括加工的激发条件,加工的逻辑,优先级等等。

 

示例:

图书管理系统中

查询请求信息=[查询读者请求信息|查询图书请求信息]

读者情况=读者号+姓名+所在单位+{借书情况}

 

根据上面的定义表,我们很容易看出这些条目的意思。

 

 

下面我们来看一个数据流图的综合应用问题,这样有助于我们理解数据流图。

 

需求:






根据以上信息提出的几个问题!希望对这几个问题的解析,能加深大家对数据流图的理解。




对于问题1:

我们前面提到过,

可以通过数据流图那三个重要设计原则(保持父图与子图平衡,保持数据平衡,加工细节隐蔽)来考查一张数据流图是否正确。

1查看是否平衡,即子图中的输入流合输出流和父图是否对应;

2、查看数据守恒,处理查询请求没有输入,登记读者信息没有输出.

正确应该如红色箭头画法。



对于问题2

1、首先我们看到对于加工2父图和子图是平衡的,所以,本题只能是2.12.2或者他们和文件之间缺少数据流。

只得根据需求描述去分析到底缺失哪些数据流。

 

根据在原需求中的


我们可以很轻松的判断出缺少哪些数据流,如下图红色箭头



对于问题3:这是一个数据字典的应用问题。



根据以上我们截取需求中的信息,,注意红色部分,再结合我们开始介绍的数据字典定义符号的使用,即可很轻松解决这个问题。

管理工作请求单=[购入新书|读者借书|读者还书|图书注销]

入库单=分类目录号+书名+作者+价格+数量+购书日期。

 


http://chatgpt.dhexx.cn/article/iRr36mhN.shtml

相关文章

甘特图、IPO图、DFD图

甘特图、IPO图、DFD图 一、甘特图 甘特图(Gantt chart)又称为横道图、条状图(Bar chart)。其通过条状图来显示项目、进度和其他时间相关的系统进展的内在关系随着时间进展的情况。以提出者亨利劳伦斯甘特(Henry Laurence Gantt)…

数据流图(DFD)概念及画法

转载自:https://blog.csdn.net/xiaoxiang2017/article/details/81456317 数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、以图形的方式描绘数据在系统中流动…

DFD数据流图的基本要素及易错点详细介绍

定义 简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。 基本符号概念 数据流 数据流是由一组固定成分的…

学校教材购销系统DFD

题目:从用户调查得出,在计划经济时期,某高校向学生销售教材的手续是:先有系办公室的张秘书开一购书证明,学生凭此证明找教材科的王会计开购书发票,向李出纳员交付书款,然后到书库找赵保管员领书…

使用逐步细化开发 DFD

数据流图(DFDS) 表示通过系统的信息流。DFD 迅速成为可视化软件系统流程中涉及的主要步骤和数据的流行方式。 数据流图 (DFD) 是表示流程或系统(通常是信息系统)的数据流的一种方式,例如: 数据来自哪里它去哪里如何存储 换句话…

【图形设计】数据流图(DFD)简介

数据流图(DFD)简介 软件需求分析的基础:机构化分析方法。 结构化分析方法适用于数据处理类型软件的需求分析。它提供的主要建模工具包括 数据流图、数据字典、机构化英语、判定表、和判定树等。 在这里主要说明DFD图的使用和画法。 数据流图&…

对数据流图DFD的总结

什么是DFD? (1)先来个感官认识: (2)具体定义: DFD是Dateflow diagram(图表)的缩写,中文名字是数据流图。数据流图是以图形的方式描述数据在系统中流动和处理的过程。一…

软件工程——数据流图(DFD)

在《软件工程——系统流程图符号及案例》中我们知道了系统流程图描述的是物理系统,那么数据流图则是用来描述系统的逻辑模型,在数据流图中没有任何具体的物理元素,只是描绘信息在系统中的流动和处理情况。并且因为数据流图是逻辑系统的图形表…

kappa系数简介---一致性与分类准确度指标

kappa系数简介 kappa系数是什么 Kappa系数是一个用于一致性检验的指标,也可以用于衡量分类的效果。因为对于分类问题,所谓一致性就是模型预测结果和实际分类结果是否一致。kappa系数的计算是基于混淆矩阵的,取值为-1到1之间,通常大于0。 为…

(笔记)Kappa系数 混淆矩阵

遥感图像的分类解译结果往往需要一定的精度评价指标进行精度验证,只有进行精度验证,我们才能知道分类解译的结果是否准确可靠。 Kappa系数就经常被用于影像分类的空间一致性检验,是一种衡量分类精度的指标。 Section 1:Kappa系数…

利用混淆矩阵及Kappa系数评价土地利用分类精度

文章目录 一、准备工作二、处理步骤2.1 Arcmap:栅格转点多值提取到点栅格转点多值提取至点 2.2 Excel:计算混淆矩阵 三、Excel计算模板下载地址 一、准备工作 土地利用类型参考栅格和预测栅格(.tif) 需要保证两者的投影坐标系和像元大小一致 用户精度&…

Kappa(cappa)系数只需要看这一篇就够了,算法到python实现

站主近期建立了一个自己的网站来发博文,文章已经搬运到了下面的地址: 【一致性检验指标】Kappa(cappa)系数 1 定义 百度百科的定义: 它是通过把所有地表真实分类中的像元总数(N)乘以混淆矩阵对角线(Xkk&…

FLeiss Kappa系数和Kappa系数的Python实现

Kappa系数和Fleiss Kappa系数是检验实验标注结果数据一致性比较重要的两个参数,其中Kappa系数一般用于两份标注结果之间的比较,Fleiss Kappa则可以用于多份标注结果的一致性检测,我在百度上面基本上没有找到关于Fleiss Kappa系数的介绍,于是自己参照维基百科写了一个模板出…

什么是Kappa架构?

写在前面 本文隶属于专栏《100个问题搞定大数据理论体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见100个问题搞定大数据理论体系 解答 Kappa架构和L…

机器学习中多分类模型的评估方法之--kappa系数

引言 分类是机器学习中监督学习的一种重要应用,基于统计的机器学习方法可以使用SVM进行二分类,可以使用决策书,梯度提升树等进行多分类。 对于二分类模型,我们通常可以使用ROC曲线来评估模型的预测效果。这里,我们介…

评分员间可信度与Kappa统计量 Inter-rater reliability Kappa statistics

评分员间可信度inter-rater reliability 在统计学中,评分员间可信度inter-rater reliability,评分员间吻合性inter-rater agreement,或一致性concordance 都是描述评分员之间的吻合程度。它对评判者们给出的评级有多少同质性homogeneity或共…

用混淆矩阵计算kappa系数

从一篇论文——融合注意力机制和高效网络的糖尿病视网膜病变识别与分类,看到人家除了特异性、敏感性、准确率、混淆矩阵以外,还用了加权kappa系数,所以了解一下kapp系数的知识,加权kappa还没找到更好的资料。。。 资料来源于百度百…

kappa 一致性系数计算实例

本文转载自新浪博客,网址:http://blog.sina.com.cn/s/blog_4aa4593d0100rwjd.html kappa系数在遥感分类图像的精度评估方面有重要的应用,因此学会计算kappa系数是必要的,但是从最近搜索的国内外网页和文献中都对kappa系数描述的不…

混淆矩阵(交叉表)及Kappa系数的计算

交叉分类表,是以两个不同时期的地理实体类型为横纵坐标的表格。 ①用于参照的时期的类型位于表格的上方,按照横方向排列 ②用以比较的时期的类型位于表格的左方,垂直排列 ③在横纵坐标上类型的排列顺序一致 ④位于对角线上的方格中记录…

【卡帕一致性检验(Kappa)】基于SPSS软件实现

利用WB和ELASA方法分别检测,利用Kappa系数分析2种方法的一致性。 1.SPSS操作 (1)在“数据视图”中输入数据,其中WB结果包括两类:positive和negative,即可以分别用1和2表示 (2)在“变…