数据流图的画法

合集下载

教你怎么画数据流图包括数据流图实例PPT课件

教你怎么画数据流图包括数据流图实例PPT课件
画出图书预定系统的各层数据流图。
2021/3/9
管理信息系统》
第一步,画出关联数据流图。
S1顾客
F1订单
P 图书预订
F2汇总订单
S2 出 版 社
图书预订系统关联图
2021/3/9
管理信息系统》
第二步,逐层分解加工,画出下层DFD。注意到根据题意,当绘出系统 顶层图后并不能将所有加工分解成基本加工,还要进行二层图分解。 并在分解加工过程中逐步充实进数据存储。见图。
2021/3/9
管理信息系统》
(3)加工 加工又称处理亦称变换,它表示对数据流的操作。 加工的符号分成上、下两部分,从上到下分别是标识部分和功能描 述部分。 标识部分用于标注加工编号,加工编号应具有唯一性,以标识加工 ,以“P”开头。 功能描述部分用来写加工名。为使DFD清晰易读,加工名应简单,能 概括地说明对数据的加工行为,其详细描述在数据词典中定义。 加工要逐层分解,以求得分解后的加工功能简单、易于理解。
建立新系统的DFD是一项十分重要的工作。因为建立的DFD是系统 开发乃至系统维护的依据,是系统的重要文档之一。系统分析员要在 详细调查中,在与用户的反复交流中修改DFD,力求新建DFD是正确的 、准确的。
2021/3/9
管理信息系统》
放映结束 感谢各位的批评指导!
谢 谢!
让我们共同进步
2021/3/9
21
D5 订单数目
D6

P2.2


订单分类

D7
D4 出版社要求
P3 发送订单
F2汇总订单
S2 出 版社

P2.3


随时处理

D3
D8

如何画数据流程图

如何画数据流程图

存折
不合格存款单
储户
查对
存折、存款单
合格存款单 存折
现金单 存款
现金库
储户帐 EX3
EX4:某仓库管理系统按以下步骤进行信息处理,试画出数 据流程图。
(1) 保管员根据当日的出库单和入库单通过出、入库处 理去修改库存台帐。
(2) 根据库存台帐由统计、打印程序输出出库日报表。 (3) 需要查询时,可利用查询程序在输入查询条件后 ,
F7 采购 订货报表 员
产生报表
F6 订货汇总信息 D2 订货信息
图(d) 订货系统的1层数据流程图(图b的局部, 各数据成分加上编号)
应用举例二
教材购书单
缺书单 教材购销系统
进书单
书库保 管员
第一层DFD
教材购销系统
D1 教材存量表
学 购书单 生
领书单 、无效 购书单
P-处理, D-数据存储, F-数据流, .-流程图的层次 (3)图中只有数据流,无控制流
只考虑加工之间的数据流动
(4)数据流程图的核心是“处理功能”处理数据 流。
数据流
处理 数据流
3.2 开发E-R图 传统的系统开发方法都把重点集中在新系统的数据 存储需求上,而数据存储需求包括数据实体、数据 实体的属性以及它们之间的关系。我们采用E-R图来 定义数据存储需求的模型。
到库存台帐去查找,显示查询结果。
查询条件
查询
查询结果
入库单
保管员
出入库处理
出库单
EX4
库存台帐
统计 打印
库存日 报表
注意:
(1)数据流程分析采用自顶向下逐层分解的方法,通过 分析绘制分层的数据流程图(data flow diagram,DFD)来 进行系统分析。

数据流图画法

数据流图画法

数据流图(DFD)画法要求一、数据流图(DFD)1.数据流图的基本符号数据流图由基本符号组成,见图5-4-1所示。

图5-4-1 数据流图的基本符号例:图5-4-2是一个简单的数据流图,它表示数据X从源S流出,经P加工转换成Y,接着经P加工转换为Z,在加工过程中从F中读取数据。

图5-4-2数据流图举例下面来详细讨论各基本符号的使用方法。

2.数据流数据流由一组确定的数据组成。

例如“发票”为一个数据流,它由品名、规格、单位、单价、数量等数据组成。

数据流用带有名字的具有箭头的线段表示,名字称为数据流名,表示流经的数据,箭头表示流向。

数据流可以从加工流向加工,也可以从加工流进、流出文件,还可以从源点流向加工或从加工流向终点。

对数据流的表示有以下约定:对流进或流出文件的数据流不需标注名字,因为文件本身就足以说明数据流。

而别的数据流则必须标出名字,名字应能反映数据流的含义。

数据流不允许同名。

两个数据流在结构上相同是允许的,但必须体现人们对数据流的不同理解。

例如图5-4-3(a)中的合理领料单与领料单两个数据流,它们的结构相同,但前者增加了合理性这一信息。

两个加工之间可以有几股不同的数据流,这是由于它们的用途不同,或它们之间没有联系,或它们的流动时间不同,如图5-4-3(b)所示。

(a)(b)(c)图5-4-3 简单数据流图举例数据流图描述的是数据流而不是控制流。

如图5-4-3 (c)中,“月末”只是为了激发加工“计算工资”,是一个控制流而不是数据流,所以应从图中删去。

3.加工处理加工处理是对数据进行的操作,它把流入的数据流转换为流出的数据流。

每个加工处理都应取一个名字表示它的含义,并规定一个编号用来标识该加工在层次分解中的位置。

名字中必须包含一个动词,例如“计算”、“打印”等。

对数据加工转换的方式有两种:改变数据的结构,例如将数组中各数据重新排序;产生新的数据,例如对原来的数据总计、求平均等值。

4.文件文件是存贮数据的工具。

《数据流程图的画法》课件

《数据流程图的画法》课件

数据流程图的应用场景
数据流程图适用于各种领域,如软件开发、企业管理和工业流程等。它可以帮助人们更好地理解和改进 复杂的数据流程。
数据流程图与业务分析的关系
数据流程图是业务分析的重要工具之一,通过绘制数据流程图可以帮助分析人员深入了解业务流程和数 据处理要求。
数据流程图的未来发展趋势
随着数据处理和分析的不断发展,数据流程图将越来越重要,未来可能出现 更多的创新和改进。
数据流程图的规范化管理
规范化管理可以提升数据流程图的质量和可维护性,包括标准化的符号和线 条、统一的命名规则以及文件版本控制等。
数据流程图的评估和改进
通过对数据流程图的评估,可以发现潜在的问题和改进的空间,进一步提升系统的效率和可靠性。
总结和展望
数据流程图是一种强大的工具,能够帮助人们理解和分析数据流程。未来, 数据流程图将更广泛地应用于各个领域,并随着技术和方法的不断发展而不 断演进。
输入和输出
表示数据的输入和输出。
数据流程图的标准规定
数据流程图应符合一定的规范,例如使用标准的符号和线条表示数据流和处理,以及正确使用注释和说 明。
数据流程图的画法
1
确定范围
明确数据流程图的边界和涵盖的模块。
2
分析输入输出
确定每个模块的输入和输出数据。
3
绘制符号和线条
使用适当的符号和线条绘制数据流和处理。
《数据流程图的画法》 PPT课件
数据流程图的画法是一种用于可视化数据流程的工具,能帮助人们理解和分 析复杂的数据流。
什么是数据流程图?
数据流程图是一种图形化表示数据在系统中流动和处理过程的工具。它展示 了数据在不同模块之间的传递和转化。
数据流程图的作用

数据流图的画法

数据流图的画法
Ssm
如何画数据流图
Ssm
注意事项
• 一般遵循“由外向里”的原则,即先确定系 统的边界或范围,再考虑系统的内部,先画 数据处理的输入和输出,再画数据处理的内 部。
1. 识别系统的输入和输出。 2. 从输入端至输出端画数据流和数据处理,并同时
加上数据存储。 3. 数据处理的分解“由外向里”进行分解 4. 数据流、数据存储、数据处理的命名和文字说明
4.1 优先级分配 2 优先订单
5 待发送订单
5 排版发送
Ssm
Ssm
¤由于父图中有的数据处理可能就是功能单元,不能 再分解,因此父图拥有的子图数少于或等于父图中 的数据处理个数。
¤数据流图中的数据处理编号规则
• 子图中的编号为父图号和子数据处理的编号组成 • 子图的父图号就是父图中相应数据处理的编号
Ssm
注意事项
• 数据处理转换的方式
¤改变数据的结构,例如将数组中各数据重新排序; ¤产生新的数据,例如对原来的数据总计、求平均等
有A就有B或C, 或者两者都有
有A就有B和C, 两者同时有
有A就有B或C,但 不会同时有B和C
当A和B由一个 存在就有C
当A与B都存在 就有C
Ssm
数据流图的四种组成成分
• 数据的源点或数据终点
¤ 数据源和终点表示数据的外部来源和去处。它通常是系统 之外的人员或组织,不受系统控制。
• 数据处理(加工)
Ssm
注意事项
• 父图与子图间平衡
¤这里的平衡指的是子图的输入、输出数据流必须与 父图中对应数据处理的输入、输出数据流相同。
¤两种情况是允许的
• 子图的输入/输出流比父图中相应数据处理的输入/输出 流表达得更细。

数据流图的画法

数据流图的画法
侧分别是数据源和终点,中间是一系列数据处理和文件 此外,数据流图中各种符号布置要合理,分布应均匀。 8. 是画数据流图而不是画程序框图!
• 程序框图是从对数据进行加工的角度描述系统的,其箭头是控制 流,表示的是对数据进行加工的次序
• 数据流图则是从数据的角度来描述系统的,其箭头是数据流,表 示的是数据的流动方向
如何画数据流图
• 一般情况下,应该遵守“由外向里”的原则。 即先确定系统的边界或范围,再考虑系统的 内部,先画数据处理的输入和输出,再画数 据处理内部。
1. 从问题描述中取出 4 种基本组成成分 2. 根据(1)的结果画出系统的基本系统流图(顶
层图) 3. 把由(2)得到的基本系统模型细化为系统的功
¤ 分解时应遵循原则
1. 分解应自然,概念上要合理、清晰。 2. 上层可分解的快些(即分解成的子数据处理个数多些),这是因
为上层是综合性描述,对可读性的影响小。而下层应分解得慢些。 3. 在不影响可读性的前提下,应适当地多分解成几部分,以减少分解层
数。 4. 一般说来,当数据处理可用一页纸明确地表述时,或数据处理只
有单一输入/输出数据流时(出错处理不包括在内),就应停止对 该数据处理的分解。另外,对数据流图中不再作分解的数据处理 (即功能单元),必须作出详细的数据处理说明,并且每个数据 处理说明的编号必须与功能单元的编号一致。
Ssm
注意事项
• 数据流中的编号
¤分层数据流图的顶层称为 0 层,称它是第 1 层的父 图,而第 1 层既是0 层图的子图,又是第 2 层图 的父图,依此类推。
Ssm
注意事项
• 父图与子图间平衡
¤这里的平衡指的是子图的输入、输出数据流必须与 父图中对应数据处理的输入、输出数据流相同。

数据流图的画法

数据流图的画法

最初的数据流图应是描述当前的实际情况,即当前存在的人工数据处理情况(尽管当前情况也许有许多不合理之处),为此分析员应将他在一个企业组织中看到听到的事实如实画出来。

用户目前使用的单据、表格、卡片、清单等资料就是“数据流”或“文件”。

用户目前在做的工作就是“加工”,它们的名字就是用户习惯使用的名字。

总之,在刚开始时只是将现实情况反映出来,而不是急于去想像未来的计算机系统是怎样的。

在画数据流图时,首先应画出系统的输入数据流和输出数据流,也就是先决定系统的范围,然后再考虑系统的内部,同样,对每一个加工来说也是先画出它们的输入输出,再考虑这个加工的内部。

✧画系统的输入输出刚开始分析时,系统究竟应包括哪些功能还不清楚,所以我们应该保险一些,使系统的范围稍大,把可能有关的内容都包括进去。

此时应该向用户了解,“系统从外界接受什么数据?”,“系统向外界送出什么数据?”等,然后根据他们的答复画出数据流图的外围。

如培训中心管理系统从外界接受的数据是“函电”,向外界送出的数据是“通知单”,则数据流图的外围如图3.l1所示。

这时,我们不必担心是否有输入输出数据流被遗漏了,因为遗漏的数据流以后能够发现的。

✧画系统的内部逐步将系统的输入和输出数据流用一连串加工连接起来,一般可以从输入端逐步画到输出端,也可以反过来从输出端追溯到输入端。

在数据流的组成或值发生变化的地方应画上一个“加工”,它的作用就是实现这一变化。

如果系统中有一组数据,用户把它们作为一个单位来处理(如,一起到达,一起被加工)则应将这组数据看成是一个数据流。

反之,不要把一些相互无关的,用户也并不将它们看成为一个整体来处理的若干数据画成一个数据流。

对每一个数据流应该了解它的组成是什么,这些组成项来自何处,这些组成项如何组合成这一数据流,为实现这一组合还需要什么有关的加工和数据等等。

数据流图中还要画出有关的文件,即各种存贮的数据,此时也应了解文件的组成情况。

✧画加工的内部用“由外向里”的方式,可以继续分析每个加工的内部,如果加工的内部还有一些数据流,则可将这个加工用几个子加工代替,并在子加工之间画出这些数据流。

如何画数据流图

如何画数据流图

如何画数据流图数据流图是一种信息系统建模工具,用于描述系统中数据的流动和处理过程。

它通过标识数据流、处理模块、数据存储以及外部实体之间的关系来展现系统内部的结构和功能。

数据流图可以帮助人们更好地理解系统的各个组成部分以及它们之间的交互方式。

在数据流图中,数据流通过箭头表示,并附带标签描述数据的内容。

处理模块用矩形框表示,其中包含处理的功能描述。

数据存储通常用平行四边形表示,代表数据的存储和检索操作。

而外部实体则用双框表示,代表与系统进行交互的外部元素。

绘制数据流图的步骤如下:1. 确定系统范围:首先要明确需要绘制数据流图的系统的范围。

确定系统的输入、输出以及系统边界,确保数据流图能够囊括系统的主要功能。

2. 识别外部实体:根据系统的输入和输出,识别系统与外部实体之间的交互方式。

将这些外部实体标识为数据流图中的双框。

3. 标识数据流:分析系统中数据的流动路径,将数据流标识为数据流图中的箭头,并附带描述数据内容的标签。

4. 划分处理模块:确定系统中的处理功能,并将其划分为不同的处理模块。

每个处理模块用矩形框表示,并附带描述处理过程的标签。

5. 确定数据存储:分析系统中的数据存储和检索操作,并将其标识为数据流图中的平行四边形。

6. 连接各个组件:根据系统中各个组成部分的关系,使用箭头将外部实体、数据流、处理模块和数据存储连接起来。

7. 完善数据流图:检查数据流图的准确性和完整性,确保图中的每一个组件都能正确描述系统的功能和结构。

在绘制数据流图的过程中,需要注意以下几点:1. 粒度控制:数据流图应该尽量保持一定的层次结构,避免将系统的细节描述得过于复杂。

2. 清晰明了:数据流图上的标签应该简明扼要,能够准确描述数据流的内容和处理模块的功能。

3. 一致性:数据流图的符号、标签和命名应该保持一致,方便读者的理解和识别。

4. 反复迭代:数据流图是一个动态的工具,随着对系统的了解加深,可能需要不断地进行修改和调整。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

最初的数据流图应是描述当前的实际情况,即当前存在的人工数据处理情况(尽管当前情况也许有许多不合理之处),为此分析员应将他在一个企业组织中看到听到的事实如实画出来。

用户目前使用的单据、表格、卡片、清单等资料就是“数据流”或“文件”。

用户目前在做的工作就是“加工”,它们的名字就是用户习惯使用的名字。

总之,在刚开始时只是将现实情况反映出来,而不是急于去想像未来的计算机系统是怎样的。

在画数据流图时,首先应画出系统的输入数据流和输出数据流,也就是先决定系统的范围,然后再考虑系统的内部,同样,对每一个加工来说也是先画出它们的输入输出,再考虑这个加工的内部。

✧画系统的输入输出刚开始分析时,系统究竟应包括哪些功能还不清楚,所以我们应该保险一些,使系统的范围稍大,把可能有关的内容都包括进去。

此时应该向用户了解,“系统从外界接受什么数据?”,“系统向外界送出什么数据?”等,然后根据他们的答复画出数据流图的外围。

如培训中心管理系统从外界接受的数据是“函电”,向外界送出的数据是“通知单”,则数据流图的外围如图3.l1所示。

这时,我们不必担心是否有输入输出数据流被遗漏了,因为遗漏的数据流以后能够发现的。

✧画系统的内部逐步将系统的输入和输出数据流用一连串加工连接起来,一般可以从输入端逐步画到输出端,也可以反过来从输出端追溯到输入端。

在数据流的组成或值发生变化的地方应画上一个“加工”,它的作用就是实现这一变化。

如果系统中有一组数据,用户把它们作为一个单位来处理(如,一起到达,一起被加工)则应将这组数据看成是一个数据流。

反之,不要把一些相互无关的,用户也并不将它们看成为一个整体来处理的若干数据画成一个数据流。

对每一个数据流应该了解它的组成是什么,这些组成项来自何处,这些组成项如何组合成这一数据流,为实现这一组合还需要什么有关的加工和数据等等。

数据流图中还要画出有关的文件,即各种存贮的数据,此时也应了解文件的组成情况。

✧画加工的内部用“由外向里”的方式,可以继续分析每个加工的内部,如果加工的内部还有一些数据流,则可将这个加工用几个子加工代替,并在子加工之间画出这些数据流。

应注意的问题:✧适当地命名数据流图中每一成分的命名是否恰当与数据流图的易理解性有直接的关系,所以命名时应该仔细推敲。

为数据流命名时应注意以下几点:1) 为避免引起错觉,名字要适合于整个数据流,而不是仅仅反映它的某些成分。

2) 避免用空洞的名字,如“数据”、“信息”、“输入”、“输出”之类,因为这种名字缺乏具体的含义。

3) 如果发现难以为某个数据流命名,这往往是数据流图分解不当的征兆,此时可以试试重新分解是否能解决这个难题。

通常应先为数据流命名再为加工命名,这也反映了“由外向里”的思考过程。

图3.12中,如果加工的输入输出已命名为“取款单”和“合理取款单”,则加工的名字显然应是“检查合理性”,反之,先为加工命名再考虑其输入输出,则不会这样容易。

为加工命名,应注意以下几点:1)为避免错觉,名字应反映整个加工,而不是它的一部分工作。

2)如果加工的名字能由一个具体的及物动词加上一个具体的宾语构成,则是最理想的。

如“计算工资”、“收集函电”、“开发票”等都是较好的名字。

“加工”、“处理”等空洞的动词应尽量避免。

另外,名字中只要一个动词就够了,如果必须用两个动词,则把这个加工再分解成两个可能更合适些。

在实际问题中,上述理想的名字不一定能得到,在上层的数据流图尤为困难。

3)如碰到难以适当命名的加工,这往往是分解不当的迹象,此时应考虑重新分解。

画数据流而不是控制流数据流图与传统的框图是不同的,数据流图是从数据的角度来描述一个系统,而框图则是从对数据进行加工的工作人员的角度来描述系统。

数据流图中的箭头是数据流,而框图中的箭头则是控制流,它表达的是程序执行的次序。

在宏观地分析一个组织的业务概况时从数据流的角度来理解问题比较合适,所以采用数据流图,而框图只适用于描述系统中某个加工的执行细节。

数据流图中强调数据流而不强调控制流,所以从图中一般是看不出执行次序的,例如图3.2中,我们看不出“产生发票”这个加工是每接收到一张“报名单”就进行工作,还是每天工作一次,这个问题可推迟至建立“小说明”时才加以考虑。

为了区别数据流和控制流,我们只需问一个问题:“这条线上有什么数据流过?”,如果没有,它就是控制流,在数据流图中就不应将它画出。

✧先考虑稳定状态画数据流图时,暂不必考虑系统是如何开始工作的、如何结束的,只假定它能开始运行就是了,这是为了集中精力先考虑稳定状态下的种种问题,所以将系统的“开始”和“结束”等问题推迟到适当的时候才予以考虑。

✧忽略琐碎的枝节画数据流图时,应集中精力于主要的数据流,而暂不考虑一些例外情况、出错处理等枝节性问题。

我们只需在图中画出这些枝节性数据流就可以了〔如图3.2中的数据流“不合理),而不必沿着它们再进一步分析下去。

虽然大多数系统都要花较多的精力来考虑例外情况、出错处理等,但这些问题对理解整个系统并没有很大的影响,因此可以放心地推迟考虑。

✧随时准备重画理解一个问题总要经过从不正确到正确,从不恰当到恰当的过程,一次就成功的可能性是很小的,对复杂的问题尤其如此,分析员应随时准备抛弃旧的数据流图而用更好的版本来代替它,在分析阶段重画几张图是很小的代价,只要能获得更正确清晰的需求说明书,使得设计、编程等阶段节省大量的劳动力,这样做是完全值得的。

反之,在分析阶段草草了事,使一些隐患潜伏下来,到开发后期再来纠正,代价就太大了。

对一个大型的系统,如用一张数据流图画出所有的数据流和加工,则图纸将极其庞大复杂,因而难以理解。

为了控制复杂性,SA方法采用“分层”的技术。

培训中心管理系统的数据流图只有一层,但是如果编号为3的加工“付款”和编号为7的加工“复审”仍很复杂,一时难以理解,则可以将它们进一步分解成加工3.1、3.2、……,以及加工7.1、7.2、7.3、……。

”等,如此继续下去,直到每个加工都足够简单易于理解为止。

逐层分解的方式不是一下子引进太多的细节,而是有控制地逐步增加细节,实现从抽象到具体的逐步过渡,这是有助于理解一个复杂的问题的。

用数据流图来描述“逐层分解”,就得到了一套分层的数据流图。

图3.13(a)是某系统的数据流图。

这个系统修改放在磁带中的一个主文件上,对文件作修改的信息放在卡片上。

该系统读入一叠卡片,按卡片上的修改信息对磁带中的记录作相应修改,然后产生新的主文件。

图3.13(a)画出了这个系统的所有加工和数据流,它是比较复杂的,不很容易理解。

但是如果用一套分层的数据流图来描述就清楚多了(见图3.13(b))。

图3.13(b)对系统的描述是容易使人理解的。

顶层图说明了系统的输入数据是“旧主文件”和“修改卡片”,系统的输出数据是“新主文件”。

下一层的图0是中间层,它说明系统分成三部分,并描述了各部分之间的联系。

由于每一部分还较复杂,所以它们又分别分解成图1、图2和图3。

图l说明“产生修改信息”这一部分又分成三部分,它们分别是检查卡片的顺序、对卡片进行编辑以及构成一定格式的修改信息。

图2说明“产生记录”这一部分分成核对检查和、构成一定格式的主记录两部分。

图3说明“产生新文件”这一部分分成四部分,分别是检查记录和修改信息是否匹配、修改、产生新记录、配上检查和等。

显然,上述“由顶向下逐层分解”的理解和表达过程,比一下子抛出系统的所有细节(一次性分解)是优越多了。

一套分层的数据流图由顶层、底层和中间层组成。

顶层图说明了系统的边界,即系统的输入和输出数据流,顶层图只有一张。

底层图由一些不必再分解的加工组成,这些加工都已足够简单,称为基本加工。

在顶层和底层之间的是中间层。

中间层的数据流图描述了某个加工的分解,而它的组成部分又要进一步被分解。

较小的系统可能没有中间层,而大的系统中间层可达8、9层之多。

图3.13(b)中,顶层图被称为是图0的“父图”, 图0称为是顶层图的“子图”;同样,图0是图l、图2和图3的“父图”,图l、图2和图3是图0的“子图”。

父图中有几个加工,它就可以有几张子图,本例中图0有三个加工,所以它可以有三张子图,但也可能少于三张,因为父图中可能有些加工已足够简单,因而可以作为基本加工不再分解了。

分层数据流图只是表达了系统的“分解”,为了完整地描述这个系统,还需借助“数据词典”和“小说明”对图中的每个数据和加工给出解释。

描绘分层数据流图按“由顶向下”的原则进行,描绘中应注意的问题:编号为了便于管理,需按以下规则为数据流图和其中的加工编号:1)子图的编号就是父图中相应加工的编号。

2) 子图中加工的编号由子图号、小数点、局部号连接而成。

顶层图只有一张,故不必编号,下一层的图可以编号为0,图中加工的编号就是0.1、0.2、0.3,通常我们删去小数点前面的0,所以这些加工的编号就是1、2、3。

有了这样的规则,只要数一下子图编号的小数点数,就可知道这张于图位于哪一层,另外,根据编号就可知道某一张图的父图是哪一张。

为简单起见,在一张图的内部,每个加工往往只用它们在这张图中的局部号表示,而不必再重复写出子图的编号(图3.14),但是在小说明中,仍需使用加工的完整编号,如图3.14中最左边一个加工在小说明中应注明编号是4.1(说明它是子图4中的第一个加工)。

一套分层的数据流图可按编号次序用活页形式装订起来,形成一本便于查阅的资料。

父图和子图的平衡图3.15是父图(图0)和它的一张子图(图4)。

父图中的加工4被分解成子图中的五个加工。

子图也是描述父图中的加工4,差别仅在于子图是详细的描述而父图是抽象的描述而已,所以子图的输入、输出数据流应该同父图中加工4的输入输出完全一致。

父图应与子图“平衡”。

所谓“平衡”是指子图的所有输入数据流必须是父图中相应加工的输入,子图的所有输出数据流必须是父图中相应加工的输出。

图3.l5是平衡的,因为父图中加工4的输入、输出与子图中的输入、输出完全相同。

图3.16的父图和子图是不平衡的,因为子图中没有输入数据流与父图中加工2的输入流M 相对应。

另外,子图的输出数据流S在父图中也没有出现。

图3.17的父图和子图平衡吗?从图上看,子图与父图中相应加工并不具有相同的输入和输出,但是如果从词典中查出:父图只称为“订货单”的数据流是由“客户”、“帐号”和“数量”三部分数据组成的,那么就可得出结论:这两张图是平衡的。

如果子图的输入输出数据流比父图中相应加工的输入输出表达得更详细,实际上就是在对“加工”和“数据”同时进行分解,由顶向下同时对加工和数据流作逐层分解是很自然的方式,所以是经常使用的,在这种情况下,检查“平衡”就必须借助词典来进行。

考虑“平衡”时,可以忽略枝节性的数据流,如果图3.18中子图的加工4.3有一个表示出错的数据流,这两张图仍然是平衡的。

相关文档
最新文档