范文一:顶层数据流图
顶层数据流图
系统操作 数据库 管理系统 数据
统计结果
用户系统
信息
一层数据流图
员工表 账目明细表
储蓄员 员工登录 柜台系统
外部系统
转账转入 用户
接口
存款记录 取款记录
客户信息表 反馈 报表系统 管理人员 管理系统 查询
姓名 银行账号
用户资料表 打印输出
二层数据流图
相关信息
开户
丢弃
修改密码
记录操作结果
否
取款
分
用户 是 类 身份 存款 验证
登折并签字
转账 身份证
密码
查询
销户
用户 询问是否继续 否
三层数据流图
存款 存款信息 重填
填表 出错 存款 信息
存款单 储户 存款单 验收存款单 更新存款信息
(存折) 设置密码
存款信息 不需要密码
设置密码 密 密码 码
存单 存款信息 处理存款 储户 打印存单
取款
重填 重输
错误 错误
取款单 储户 密码 验收取款验证密 密码 输入密码 单 码
正确
取款单
计算利息
利息信息
取款清单 取款信息 余额信息 储户 处理余额 打印清单 更新余额
现金
取款信息 余额信息
转账
重填 重输
转账单 错误 错误
储户 本次需要转账金额
输入密码 验收转账单 验证密码
金额比较
转出金额大于
结余金额则丢弃
转款清单 余额信息 转款信息 显示余额 打印清单 转账 储户
输入转账信息
查询
重输 信息种类
错误
输入密码 验证密码 查询所需信息 储户
账户信息
信息清单 显示信息 打印清单 储户
E-R图
性别 年龄 姓名 密码
上岗时间 代码 姓名 账号 性别
管理员 身份证号
密码
储户 办理
家庭住址
管理
存取款 联系方式
银行
联系方式 地址
银行名称
范文二:顶层数据流图案例实例
网上作业提交与管理系统的顶层数据流图
其中:
数据流A :账号和密码 数据流B :作业申请
数据流C1:需要完成的作业 数据流C2:完成的作业 数据流D :作业成绩
存储E :作业成绩统计文件 决策表
行李
重量
头等舱
国内是否 国内 乘客
是否 舱 头等 舱
其他舱 头等舱
国外其他舱
(W-30) ×4 (W-30) ×6 (W-30) ×8 (W-30) ×12 免费
W >W ≤30
需求分析文档
超市进货管理系统的开发主要涉及到商品信息的管理、供应商信息的管理、订单信息的管理、库存信息的管理、商品分类信息的管理五大功能的数据管理。商品信息管理包括添加商品、删除商品、修改商品信息、浏览商品信息。供应商信息管理包括添加供应商、删除供应商、修改供应商信息、浏览供应商信息、浏览供应商与商品间关系。订单信息管理包括添加订单、删除订单、修改订单信息、浏览订单信息。库存信息管理包括添加商品库存、删除商品库存、修改商品库存信息、浏览商品库存信息。商品分类信息管理包括添加商品分类信息、删除商品分类信息、修改商品分类信息、浏览商品分类信息。 一、功能需求
(1) 商品管理---对所有商品信息进行管理。 (2) 供应商管理---对购物车和订单信息的维护。
(3) 订单管理---对订单和订单中书籍打印信息的更新与管理。 (4) 库存管理---对后台用户进行管理添加、删除以及修改信息。 (5) 商品分类管理---对数据库进行备份和恢复。 二、性能需求
(1) 系统中的软件不构成对人身健康的损害。 (2) 系统中的软件失效时不造成财产的损失。 (3) 系统中的软件失效时不造成环境的破坏。
(4) 系统中的软件可以每天使24小时,每年使用365天。 (5) 系统中的软件故障率小于等于5%。
(6) 用户输入错误信息时系统应提示不应崩溃。 (7) 软件适合12-70周岁的智力、视力、体力和肢体正常且具有图书借阅相关知识的人使用。 三、运行需求
(1) 系统在常温环境下使用。 (2) 系统在洁净的室内使用。
(3) 宽带网、1M 以上宽带互联网。
(4) 任何有浏览器的设备打印功能需IE 浏览器。 (5) 数据库管理系统SQL Server2008及以上。
范文三:数据流图和数据流程图有什么区别
数据流图和数据流程图有什么区别
数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。数据流图的基本符号的意思:1.矩形表示数据的外部实体;2.圆角的矩形表示变换数据的处理逻辑;3.少右面的边矩形表示数据的存储;4.箭头表示数据流。数据流程图中有以下几种主要元素:?:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。?:数据源(终点)。代表系统之外的实体,可以是人、物或其他软件系统。?:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。数据流程图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。为了描述复杂的软件系统的信息流向和加工,可采用分层的DFD来描述,分层DFD有顶层,中间层、底层之分。(1)顶层。决定系统的范围,决定输入输出数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层DFD只有一张。(2)中间层。顶层之下是若干中间层,某一中间层既是它上一层加工的分解结果,又是它下一层若干加工的抽象,即它又可进一步分解。(3)底层。若一张DFD的加工不能进一步分解,这张DFD就是底层的了。底层DFD的加工是由基本加工构成的,所谓基本加工是指不能再进行分解的加工。数据流程图的基本成分系统部件包括系统的外部实体、处理过程、数据存储和系统中的数据流四个组成部分1,外部实体外部实体指系统以外又和系统有联系的人或事物,它说明了数据的外部来源和去处,属于系统的外部和系统的界面。外部实体支持系统数据输入的实体称为源点,支持系统数据输出的实体称为终点。通常外部实体在数据流程图中用正方形框表示,框中写上外部实体名称,为了区分不同的外部实体,可以在正方形的左上角用一个字符表示,同一外部实体可在一张数据流程图中出现多次,这时在该外部实体符号的右下角画上小斜线表示重复.2,处理过程处理指对数据逻辑处理,也就是数据变换,它用来改变数据值。而每一种处理又包括
数据输入、数据处理和数据输出等部分。在数据流程图中处理过程用带圆角的长方形表示处理,长方形分三个部分,标识部分用来标识一个功能,功能描述部门是必不可少的,功能执行部门表示功能由谁来完成。3,数据流数据流是指处理功能的输入或输出。它用来表示一中间数据流值,但不能用来改变数据值。数据流是模拟系统数据在系统中传递过程的工具。在数据流程图中用一个水平箭头或垂直箭头表示,箭头指出数据的流动方向,箭线旁注明数据流名。4,数据存储数据存储表示数据保存的地方,它用来存储数据。系统处理从数据存储中提取数据,也将处理的数据返回数据存储。与数据流不同的是数据存储本身不产生任何操作,它仅仅响应存储和访问数据的要求。在数据流程图中数据存储用右边开口的长方条表示。在长方条内写上数据存储名字。为了区别和引用方便,左端加一小格,再标上一个标识,用字母D和数字组成.1,画数据流程图的基本原则:?数据流程图上所有图形符号必须是前面所述的四种基本元素。?数据流程图的主图必须含有前面所述的四种基本元素,缺一不可。?数据流程图上的数据流必须封闭在外部实体之间,外部实体可以是一个,也可以是多个。?处理过程至少有一个输入数据流和一个输出数据流。?任何一个数据流子图必须与它的父图上的一个处理过程对应,两者的输入数据流和输出数据流必须一致,即所谓"平衡"。?数据流程图上的每个元素都必须有名字。2,画数据流程图的基本步骤:?把一个系统看成一个整体功能,明确信息的输入和输出。?找到系统的外部实体。一旦找到外部实体,则系统与外部世界的界面就可以确定下来,系统的数据流的源点和终点也就找到了。?找出外部实体的输入数据流和输出数据流。?在图的边上画出系统的外部实体。?从外部实体的输入流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑处理过程,直至找到外部实体处理所需的输出流,形成数据流的封闭。?将系统内部数据处理又分别看做整体功能,其内部又有信息的处理、传递、存储过程。?如此一级一级地剖析,直到所有处理步骤都很具体为止。3,画数据流程图的注意事项:?关于层次的划分逐层扩展数据流程图,是对上一层图中某些处理框加以分解。随着处理的分解,功能越来越具体,数据存储、数据流越来越多。究竟怎样划分层次,划分到什么程度,没有绝对标准,一般认为展开的层次与管理层次一致,也可以划分得更细,处理块的分解要自然,注意功能完整性,一个处理框经过展开,一般以分解为4个至10个处理框为宜。?检查数据流程图对一个系统的理解,不可能一开始就完美无缺,开始分析一个系统时,尽管我们对问题的理解有不正确、不确切的地方,但还是应该根据我们的理解,用数据流程图
表达出来,进行核对,逐步修改,获得较为完美的图纸。?提高数据流程图的易理解性数据流程图是系统分析员调查业务过程,与用户交换思想的工具。因此,数据流程图应简明易懂。这也有利于后面的设计,有利于对系统说明书进
七"乐无穷,尽在新浪新版博客,快来体验啊~请点击进入~ 行维护。"
范文四:数据流图分析
数据流图分析
1) 数据流图
制造企业供应管理主要包括领料计划、 采购计划、 出入库管理和合同管理等四方 面的工作。领料计划负责接收领料员(领料部门)的领料申请,根据现有可用库 存等情况审批领料申请单、 制订物料发放计划; 采购计划负责接收采购申请等物 料需求,根据经验等制订采购计划;出入库管理负责接收领料单、入库申请单, 进行出库、入库登记等工作;合同管理负责接收、保存合同文档和合同执行、统 计分析等工作。这几项工作之间的数据处理关系如图 8.1所示。
图 8.1 供应管理问题第一层数据流图
在图 8.1所示的第一层数据流图的基础上, 可用利用分层数据流图对供应管理的 各项工作具体进行细化。 图 8.2~8.5分别是关于领料计划、 采购计划、 出入库管 理和合同管理的数据流图。
图 8.2 供应管理问题第二层数据流图-领料计划
图 8.3 供应管理问题第二层数据流图-采购计划
图 8.4 供应管理问题第二层数据流图-出入库管理
图 8.5 供应管理问题第二层数据流图-合同管理
2) 实体联系图
用实体联系图描述的图 8.1~8.5的中的各个数据存贮之间的关系如图 8.6所示。 其中各个实体的属性如图 8.7~8.20所示。
图 8.6 供应管理问题实体联系图
图 8.7 领料计划单-实体属性
图 8.8 物料主文件-实体属性
图 8.9 采购计划单-实体属性
图 8.10 入库单-实体属性
图 8.11 出库单-实体属性
图 8.12 采购申请单-实体属性
图 8.13 采购合同-实体属性
图 8.14 采购员档案-实体属性
图 8.15 领料员档案-实体属性
图 8.16 物料代用目录-实体属性
图 8.17 分供方档案-实体属性
图 8.18 采购费用单-实体属性 3) 数据流说明
(D01) 领料申请单=领料员+密码+物料代码+需求日期+数量
(d01.01) 领料员=编号
(d01.01.01) 编号=
(d01.02) 物料代码=1{
(d01.03) 需求日期=日期
(d01.03.01) 日期=
(d01.04) 数量=
(D02) 领料审批单=领料员+物料代码+申领日期+审批结果+(批准数量 ) + (代用物料代码+代用依据 ) +领料计划员+签发日期
(d02.04) 审批结果= [
(d02.07) 代用依据=审批人+审批日期
(d02.07.01) 审批人=领料员
(d02.08) 领料计划员=编号
(D03) 领料单=领料计划
(d03.01) 领料计划=领料员+申领物料代码+申领日期+签发日期
(D04) 缺货单=领料单+
(D05) 入库申请单=采购员+物料代码+采购计划员+计划日期+数量+(单价 +运杂费 )
+分供方
(d05.01) 采购员=编号
(d05.03) 采购计划员=编号
(d05.06) 单价=金额
(d05.06.01) 金额=
(d05.07) 运杂费=金额
(d05.08) 分供方=分供方编号
(d05.08.01) 分供方编号=
(D06) 退货单=采购员+物料代码+采购计划员+计划日期
+[
(D07) 采购命令单=采购员+物料代码+采购计划员+计划日期+需求日期+需求数量
+验收标准
(d07.07) 验收标准=1{
(D08) 合同文档=采购员+分供方+签订日期+{合同记录 }
(d08.04) 合同记录=物料代码+数量+单价+交货日期+验收标准+运输方式 +特殊要求+执行情况
(d08.06) 运输方式=1{
(d08.07) 特殊要求=1{
(d08.08) 执行情况=1{
(D09) 合同执行情况=合同编号+物料代码+交货日期+执行情况
(D10) 无效申请单=采购员+物料代码+采购计划员+计划日期+
(D11) 无效领料单=领料单+
(D12) 有效领料申请单=领料申请单+
(D13) 可用库存=数量
(D14) 代用报告=物料代码+代用物料代码+数量
(D15) 代用审批单=代用报告+批准人+批准日期
(D16) 物料出库流量=物料代码+起始日期+终止日期+数量
(D17) 物料入库流量=物料代码+起始日期+终止日期+数量
(D18) 物料 ABC 类型=物料代码+[
(D19) 报警物料={物料代码 }
(D20) 有效领料单=领料单+
(D21) 采购费用申请=采购员+物料代码+采购计划员+计划日期+数量+单 价
+运杂费
(D22) 物料入库申请=采购员+物料代码+采购计划员+计划日期+数量+分 供方
(D23) 物料检验单=采购员+物料代码+采购计划员+计划日期+数量+分供 方
+检验意见+检验员+检验日期
(d23.07) 检验意见=[
(d23.08) 检验员=1{
(D24) 采购合同=合同编号+合同文档
(d24.01) 合同编号=1{
(D25) 合同统计报表=[合同执行情况统计 |合同资源统计 |应付帐统计 ]
(d25.01) 合同执行情况统计={合同编号+物料代码+数量+交货日期+执行 情况 }
(d25.02) 合同资源统计={物料代码+数量+交货日期 }
(d25.03) 应付帐统计={合同编号+物料代码+数量+单价+交货日期+分供 方 }
4) 加工说明
加工编号:1.1
加工名称:领料申请单验收
加工逻辑:根据领料员档案审查领料申请单的有效性。
加工编号:1.2
加工名称:可用库存分析
加工逻辑:可用库存=实物库存数-(领料计划-出库数 ) +(采购合同订购数-入库数 )
加工编号:1.3
加工名称:物料发放计划
加工逻辑:领料计划员根据申请数和可用库存数交互式地制订物料发放计划。 加工编号:1.4
加工名称:代用申请审查
加工逻辑:领料员或领料部门根据领料计划员的申请审查是否使用代用物料。 加工编号:2.1
加工名称:出入库流量分析
加工逻辑:根据给定的起始时间和终止时间对出库单和入库单进行统计分析, 计 算出给定时间段内的物料出入量。
加工编号:2.2
加工名称:报警分析
加工逻辑:统计分析出那些可用库存低于最少库存的物料。
加工编号:2.3
加工名称:ABC 分析
加工逻辑:按 ABC 方法统计分析物料的 ABC 类型。
加工编号:2.4
加工名称:积压分析
加工逻辑:统计分析那些长期不用的物料。
加工编号:2.5
加工名称:制订采购计划
加工逻辑:根据各种统计报表和经验制订采购计划。
加工编号:3.1
加工名称:入库申请单验收
加工逻辑:根据采购计划和入库情况审查入库申请单的有效性, 并区分是物料入 库申请还是采购费用申请。
加工编号:3.2
加工名称:物料检验
加工逻辑:检验员填写物料检验单,如果物料或分供方不合格,则发出退货单。 加工编号:3.3
加工名称:物料接收
加工逻辑:根据物料检验结果办理入库登记手续。
加工编号:3.4
加工名称:采购费用接收
加工逻辑:接收登记采购费用。
加工编号:3.5
加工名称:领料单验收
加工逻辑:根据领料计划、出库和现有实际实物库存情况审查领料单的有效性。 加工编号:3.6
加工名称:物料发放
加工逻辑:办理出库登记手续。
加工编号:4.1
加工名称:合同审核
加工逻辑:根据采购计划、分供方档案和入库情况审查合同文档的有效性 加工编号:4.2
加工名称:合同存档
加工逻辑:对有效的合同文档登记存档。 加工编号:4.3
加工名称:合同统计分析
加工逻辑:根据要求进行合同统计分析。 加工编号:4.4
加工名称:合同执行跟踪
加工逻辑:登记录入合同执行情况。
5) 实体属性说明
E1:领料计划单
(E01.01) 领料员=d01.01
(E01.02) 申领日期=d01.03.01
(E01.03) 申领物料代码=d01.02 (E01.04) 签发日期=d01.03.01
(E01.05) 代用物料代码=d01.02 (E01.06) 代用依据=d02.07
(E01.07) 计划数量=d01.04
(E01.08) 计划员=d02.08
E2:物料主文件
(E02.01) 物料代码=d01.02
(E02.02) 名称=1{
(E02.06) 存放位置=仓库号+架号+位号
(e02.06.01) 仓库号=
(e02.06.02) 架号=
(e02.06.03) 位号=
(E02.07) 计划单价=
(E02.09) 库存数量=d01.04
E3:采购计划单
(E03.01) 采购计划员=d05.03
(E03.02) 计划日期=d01.03.01
(E03.03) 物料代码=d01.02
(E03.04) 需求日期=d01.03.01
(E03.05) 需求数量=d01.04
(E03.06) 采购员=d05.01
(E03.07) 验收标准=d07.07
(E03.08) 批准者=姓名
(e03.08.01) 姓名=1{
(E03.09) 批准日期=d01.03.01
E4:入库单
(E04.01) 采购员=d05.01
(E04.02) 物料代码=d01.02
(E04.03) 入库日期=d01.03.01
(E04.04) 采购计划=采购计划员+物料代码+计划日期 (E04.05) 入库数量=d01.04
(E04.06) 分供方=d05.08
(E04.07) 检验员=d23.08
(E04.08) 检验意见=d23.07 (E04.09) 检验日期=d01.03.01 (E04.10) 仓库保管员=d01.01.01 E5:出库单
(E05.01) 领料员=d01.01
(E05.02) 发放日期=d01.03.01 (E05.03) 物料代码=d01.02 (E05.04) 领料计划=d03.01 (E05.05) 发放数量=d01.04 (E05.06) 仓库保管员=d01.01.01 E6:采购申请单
(E06.01) 领料计划员=d02.08 (E06.02) 申请日期=d01.03.01 (E06.03) 物料代码=d01.02 (E06.04) 数量=d01.04
(E06.05) 要求入库日期=d01.03.01 E7:采购合同
(E07.01) 合同编号=d24.01 (E07.02) 签订日期=d01.03.01 (E07.03) 分供方=d05.08
(E07.04) 采购员=d05.01
(E07.05) 合同记录=d08.04
E8:采购员档案
(E08.01) 物料代码=d01.02
(E08.02) 采购员编号=d05.01
(E08.03) 采购员姓名=e03.08.01
E9:领料员档案
(E09.01) 领料员编号=d01.01
(E09.02) 领料员姓名=e03.08.01
(E09.03) 领料部门名称=1{
(E09.05) 类别=[
(E09.06) 密码=1{
E10:物料代用目录
(E10.01) 物料代码=d01.02
(E10.02) 代用物料代码=d01.02
E11:分供方档案
(E11.01) 编号=1{
(E11.02) 名称=1{
(E11.03) 通讯地址=邮政编码+1{
(E11.05) 电话=区号+号码
(e11.05.01) 区号=0+1{
(E11.06) 传真=区号+号码
(E11.07) 类别=[
E12:采购费用单
(E12.01) 采购员=d05.01 (E12.02) 申报日期=d01.03.01 (E12.03) 物料代码=d01.02 (E12.04) 申报费用=d05.06.01 (E12.05) 采购计划=E04.04
范文五:数据流图 DFD 详解
数据流图 DFD 详解
数据流图(DFD)详解
数据流图(date flow diagram,DFD),是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
数据流图是从数据的角度来描述一个系统的,而流程图则是从对数据加工的角度来描述系统的;数据流图中的箭头是数据流,而流程图中的箭头则是控制流,它表达的是程序执行的次序;数据流图适合于宏观地分析一个组织业务概
而程序流程图只适合于描述系统中某个加工的执行细节。 况,
一、数据流图的基本组成成分
数据流:是由一组固定成分的数据组成,表示数据的流向。值得注意的是,数据流图中描述的是数据流,而不是控制流。除了流向数据存储或从数据存储流出的数据不必命名外,每个数据流必须要有一个合适的名字,以反映该数据流的含义。
加工:加工描述了输入数据流到输出数据之间的变换,也就是输入数据流经过什么处理后变成了输出数据。每个加工都有一个名字和编号。编号能反映该加工位于分层的数据流图的哪个层次和哪张图中,能够看出它是由哪个加工分解出来的子加工。
数据存储:数据存储表示暂时存储的数据。每个数据存储都有一个名字。
外部实体:外部实体是存在于软件系统之外的人员或组织,他指出数据所需要的发源地或系统所产生的数据的归属地。
二、分层数据流图的设计方法
1、画子系统的输入输出
把整个系统视为一个大的加工,然后根据数据系统从哪些外部实体接收数据流,以及系统发送数据流到那些外部实体,就可以画出输入输出图。这张图称为顶层图。
2、画子系统的内部
把顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图的输入数据经过若干加工处理后,变成顶层图的输出数据流。这张图称为0层图。从一个加工画出一张数据流图的过程就是对加工的分解。
确定加工的方法:在数据流的组成或值发生变化的地方应该画出一个加工,这个加工的功能就是实现这一变化,也可以根据系统的功能决定加工。
确定数据流的方法:用户把若干数据当作一个单位来处理(这些数据一起到达、一起处理)时,可以把这些数据看成一个数据流。
关于数据存储:对于一些以后某个时间要使用的数据,可以组织成为一个数据存储来表示。
3、画加工的内部
把每个加工看作一个小系统,把加工的输入输出数据流看成小系统的输入输出流。于是可以象画0层图一样画出每个小系统的加工的DFD图。
4、画子加工的分解图
对第三步分解出来的DFD图中的每个加工,重复第三步的分解过程,直到图中尚未分解的加工都是足够简单的(即不可再分解)。至此,得到了一套分层数据流图。
5、对数据流图和加工编号
对于一个软件系统,其数据流图可能有许多层,每一层又有许多张图。为了区分不同的加工和不同的DFD子图,应该对每张图进行编号,以便于管理。
?顶层图只有一张,图中的加工也只有一个,所以不必为其编号。
?0层图只有一张,图中的加工号分别是0.1、0.2、…,或者1,2。
?子图就是父图中被分解的加工号。
?子图中的加工号是由图号、圆点和序号组成,如:1.12,1.3等等。
三、应该注意的问题:
1、命名。应适当的为数据流、加工、数据存储以及外部实体命名,名字应该反映该成分的实际含义,避免使用空洞的名字。
2、画数据流图,不是画控制流。数据流反映系统"做什么",不反映"如何
,因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的做"
执行顺序。
3、一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。
4、一个加工的输出数据流,不应与输入数据流同名,即使他们的组成完全相同。
5、允许一个加工有多条数据流流向另一个加工,也允许一个加工有两条相同的输出数据流流向不同的加工。
6、编号。如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图及其所有的加工都应编号。
7、保持父图与子图的平衡。也就是说,父图中的某加工的输入输出流必须与他的子图的输入输出数据流在数量上和名字上相同。值得注意的是,如果父图中的一个输入(输出)数据流对应于子图中的几个输入(输出)数据流,而子图中组成这些数据流的数据项的全体正好是父图中的这一个数据流,那么他们仍然算是平衡的。
8、在自顶向下的分解过程中,若一个数据存储首次出现时,只与一个加工有关系,那么这个数据存储应作为这个加工的内部文件而不必画出。
9、保持数据守恒,也就是,一个加工的所有输出数据流中的数据必须能从该加工的输出流中直接获得,或者通过该加工能产生的数据。
10、每个加工必须既有输入数据流,又有输出数据流。
11、在整套数据流图中,每个数据存储必须既有读的数据流,又有写的数据流。但是在某张子图中,可能只有读没有写,或者只有写没有读。
12、提高数据流图的易懂性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。
===
基本图形符号
数据流图有四种基本图形符号:
:箭头,表示数据流;
〇:圆或椭圆,表示加工;
=:双杠(带一边开口,一边闭合),表示数据存储;
?:方框,表示数据的源点或终点。
(1)数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
(2)加工(又称为数据处理)。对数据流进行某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。在分层的数据流图中,加工还应编号。
(3)数据存储(又称为文件),指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。
(4)数据源点或终点,是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图。
画数据流图的步骤
(1)首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。下图为飞机机票预订系统的顶层图。
(2)画系统内部,即画下层数据流图。不再分解的加工称为基本加工。一般将层号从0开始编号,采用自顶向下,由外向内的原则。画0层数据流图时,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。例如,在上面的机票预订系统按功能可分成两部分,一部分为旅行社预订机票,另一部分为旅客取票,两部分通过机票文件的数据存储联系起来,0层数据流图如图3-4。
(3)注意事项。
?命名。不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。
?画数据流而不是控制流。数据流反映系统"做什么",不反映"如何做",因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。
?一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。
?每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。
?编号。如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图及其所有的加工都应编号。
?父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。
?局部数据存储。当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。
?提高数据流图的易懂性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。
--
天行健专注的力量成就梦想
MSN空间完美搬家到新浪博客~