一篇文章彻底学会画数据流图

简介: 一篇文章彻底学会画数据流图

数据流图


数据流图(DFD) 是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。


在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。即用于建立功能模型的数据流图。


数据流图是系统逻辑功能的图形表示,即使不是专业的计算机技术人员也容易理解它,因此是分析员与用户之间极好的通信工具。此外,设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点。


数据流图基本符号


四种基本符号:


正方形表示数据的源点或终点

圆角矩形代表变换数据的处理

开口矩形代表数据存储

箭头表示数据流,即特定数据的流动方向


8bf25a3621497cfe2d4bba29da4fb251_fbba0b3960116f0fee609524234b7d88.png


数据流图层次结构


afb1047c9f14e9b481213325e991b1cd_c9c2b3aea53c6f7b9394b938ff1f8b60.png


顶层流图


在多层数据流图中,顶层数据流图仅包含一个加工,它代表被开发系统。

输入流是该系统的输入数据

输出流是系统的输出数据

数据存储是系统内部功能,所以在顶层流图中不会画出它


中间数据流图


中间层流图则表达对其上层父图的细化,它的每一层加工可能继续细化,形成子图。


底层流图


底层流图是指其加工不需要做分解的数据流图,它处在最底层。


数据流图设计原则


1、父图-子图平衡原则


即父图输入输出数据流等于子图输入输出数据流。


2、数据守恒原则


f4437c0095d591bf29e8d391586be93a_cc66fe84c6ee9608c148ecd61b72f6ea.png


3、守恒加工原则


每个加工至少有一个输入数据流和一个输出数据流


8aff6095c85e59298a0851e86bc897ce_7f38b5c1b50a67be1c26e3b25bb8a984.png


实战画图


1、家庭保安系统


第一步:从问题描述中提取数据流图的4种组成成分


数据源点和终点–》数据处理–》数据流和数据存储。


第二步:画顶层数据流图,即反映最主要业务处理流程


112ba4c411c1f883e9903c4f0453fae5_image-20220619223343995.png


第三步:基本系统模型细化,描绘系统的主要功能


26815a2b78fd928097a507f6db0a8d32_image-20220619223357485.png


第四步:对主要功能进一步细化


7e9818d356e2bacf13401214582569d8_image-20220619223441435.png


2、图书预定系统


书店向顾客发放订单,顾客将所填订单交由系统处理,系统首先依据图书目录对订单进行检查并对合格订单进行处理,处理过程中根据顾客情况和订单数目将订单分为优先订单与正常订单两种,随时处理优先订单,定期处理正常订单。最后系统将所处理的订单汇总,并按出版社要求发给出版社。


第一步:顶层数据流图


240404b45da6e83e3fefd3127add6cdc_20264851174085794eb97083334a6e14.png



第二步:细化


e0c1b74c96477e786416d6b80a56aa28_image-20220619224104880.png


第三步:逐步细化


34337824a21c35ca697d25b335e14c0d_e9d8b15c5962d86c45752020064cb0bb.png


相关文章
|
4月前
|
存储 开发者
数据流图-
数据流图-
57 0
|
9月前
|
存储 开发者
数据流图
在二十世纪七十年代,结构设计的原始开发者拉里-康斯坦丁(Larry Constantin)根据Martin和Estrin的”数据流图”(Data Flow Graph)计算模型提出了一种实用的数据流图。
93 1
|
算法 C语言
【数学模型】层次分析
【数学模型】层次分析
【数学模型】层次分析
|
8月前
|
数据采集 领域建模 数据库
如何画领域模型图(数据架构/ER图)
如何画领域模型图(数据架构/ER图)
1840 1
如何画领域模型图(数据架构/ER图)
|
9月前
|
数据采集 领域建模 数据库
领域模型图(数据架构/ER图)
数据架构重要的输出是数据-实体关系图,简称 ER 图。ER 图中包含了实体(数据对象)、关系和属性 3 种基本成分。ER 图可以用来建立数据模型。如何准确的建立产品的数据模型,需要分解出业务需要什么样的数据。数据域的分解过程是站在业务架构的基础上,对业务域进行模型分析的过程。
342 0
|
9月前
|
uml
UML 交互图(序列图 协同图)
UML 交互图(序列图 协同图)
50 0
|
11月前
|
存储
「数据架构」TOGAF建模:概念数据模型图
「数据架构」TOGAF建模:概念数据模型图
|
11月前
|
存储 数据可视化 数据库
使用Powerdesigner绘制数据流图
我们要学习怎么绘制数据流图,首先我们要知道数据流图是什么? 其次是怎么用Powerdesiner。 那么我们现在说说数据流图是什么? 数据流图是什么?
499 0
|
uml
UML面向对象分析与建模-【5】交互图
一、概述 交互图是用来表达系统的各个对象之间如何交互,如何合作完成某个行为的动态模型工具,它与用例图、状态图、活动图等共同构成了系统的行为视图。 交互图主要用于对用例图中的控制流进行建模,它包括序列图和协作图,其中,序列图按时间次序描述系统中各对象如何通过消息交互,协作图从空间上描述收发消息的对象的结构关系。
1065 0
|
存储 数据安全/隐私保护
【软件工程】数据流图 ( 数据流图简介 | 数据流图概念 | 数据流 | 加工 | 数据存储 | 外部实体 | 数据流图分层 | 顶层数据流图 | 中层数据流图 | 底层数据流图 )
【软件工程】数据流图 ( 数据流图简介 | 数据流图概念 | 数据流 | 加工 | 数据存储 | 外部实体 | 数据流图分层 | 顶层数据流图 | 中层数据流图 | 底层数据流图 )
615 0
【软件工程】数据流图 ( 数据流图简介 | 数据流图概念 | 数据流 | 加工 | 数据存储 | 外部实体 | 数据流图分层 | 顶层数据流图 | 中层数据流图 | 底层数据流图 )