数据流图复习及解题技巧.docx

合集下载

软件工程复习(数据流图与ER图)

软件工程复习(数据流图与ER图)
➢ 首先从问题描述中提取数据流图的四种成分。 ➢ 数据的源点:储户、日历(隐含)。 ➢ 数据的终点:储户 ➢ 处理有:检验、登录、付款。 ➢ 数据存储:存折、帐卡 ➢ 数据流:储户提交的"存折和取款单"、帐卡提供的"帐卡信息",检验
通不过时出纳员告知的"检查出的问题"、通过检验后的"取款信息"、" 付款通知"、付给储户的"现款"以及日历提供的"提款时间信息"
2
例1:数据流E1 帐卡检验出的问题 Nhomakorabea1
检验
E2 存折
储户
存折 现款
存折 取款单
3
付款
取款信息
2
登录
付款通知
日历
3
例2:数据流
• (10)请根据下列需求,画出“教育基金会的捐助 资金管理系统”的最终数据流程图。
• 现需研制一个“教育基金会的捐助资金管理系统”。 请用数据流图的方法进行分析和建模,要求如下:
例5 E-R图
• 某公司拟开发一多用户电子邮件客户端系统,部分功能的初步需求分析结果 如下:
• (1)邮件客户端系统支持多个用户,用户信息主要包括用户名和用户密码, 且系统中的用户名不可重复。
• (2)邮件帐号信息包括邮件地址及其相应的密码,一个用户可以拥有多个 邮件地址 (如userl@)。
• ⑴由捐助者向基金会提出捐助请求,经身份确认后 被接受,对捐助人进行登记并授予捐助证书,捐款 存入银行。
• ⑵由教育单位提出用款申请,在进行相应的合法性 校验和核对相应的捐款储备后做出支出。
• ⑶每月给基金会的理事会一份财政状况报表,列出 本月的收入、支出情况和资金余额。

软件工程-数据流图(DFD)大题解析

软件工程-数据流图(DFD)大题解析

1某公司为了给员工分配住房,开发了员工住房分配系统,功能如下:➢计算原始分:根据员工信息(员工号、姓名、年龄、性别、学历、工龄、婚否、职务、职称、住房情况)计算原始分,并将员工信息存入员工信息文件中。

➢计算标准分:根据员工的原始分计算标准分,并将其存入员工分数文件(员工号、标准分)。

➢计算分房分:根据标准分、分房计划文件(员工号、住房请求)中的分房人数,计算分房分,并存入分房分数文件(员工号、分房分)中。

➢分房分查询:员工可以根据自己的员工号查询相应的分房分,若输入错误则返回出错信息。

试根据上面的系统功能描述:(1)画出该系统的分层数据流图。

(8分)(2)写出相应的数据字典(要求至少写出三项)。

(4分)(3)将数据流图转换为软件的结构图。

(8分)(1):1)2)第一层数据流图员工信息文件员工分数文件夹分房分数文件2.名称:员工信息别名:描述:员工的各种信息定义:员工号+姓名+年龄+性别+学历+工龄+婚否+职务+职称+住房情况位置:员工信息文件名称:分房计划文件别名:描述:准备分房的计划定义:员工号+住房请求位置:公司系统名称:分房分数文件别名:描述:计算出的每个员工分房分数的文件定义:员工号+分房分位置:公司系统2阅读以下说明和图,回答问题1至问题5,将解答填入答题纸的对应栏内。

(20分)【说明】某高校欲开发一个成绩管理系统,记录并管理所有选修课程的学生的平时成绩和考试成绩,其主要功能描述如下:1)每门课程都有3到6个单元构成,每个单元结束后会进行一次测试,其成绩作为这门课程的平时成绩。

课程结束后进行期末考试,其成绩作为这门课程的考试成绩。

2)学生的平时成绩和考试成绩均由每门课程的主讲教师上传给成绩管理系统。

3)在记录学生成绩之前,系统需要验证这些成绩是否有效。

首先,根据学生信息文件来确认该学生是否选修这门课程,若没有,那么这些成绩是无效的;如果他的确选修了这门课程,再根据课程信息文件和课程单元信息文件来验证平时成绩是否与这门课程所包含的单元相对应,如果是,那么这些成绩是有效的,否则无效。

【软考】——数据流图

【软考】——数据流图

【软考】——数据流图
在软考学习中,下午题的前三道:数据流图,ER模型,UML图是基本上不能失分的,这⼏个题是最基本的题,出题的形式都是固定的,⽽数据流图这道题拿满分最重要的是耐⼼和细⼼的分析试题。

考点突破
①补充数据流图的缺失部分,包括补充数据流、补充外部实体及补充数据存储。

——实体出现的频率⽐较多
②数据流图的改错,包括改正数据流名称,数据流的起始点与终点及删除多余数据流——通过仔细分析题就可以找到错误。

③附加与数据流图相关的概念简答题。

——积累的过程
基础
数据流图(Data Flow Diagram):简称DFD,它从数据传递和加⼯⾓度,以图形⽅式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析⽅法的主要表达⼯具及⽤于表⽰软件模型的⼀种图⽰⽅法。

【基本图形符号】
【分层数据流图】
分层的数据流图主要分为:顶层图和0层图。

顶层图是确定与外部实体之间的输⼊和输出数据流。

0层图是将顶层图中的加⼯分解成若⼲个加⼯,并⽤数据流连接这些加⼯。

是顶层图的细化过程。

满⾜结构化⽅法原则中的⾃顶向下,逐层分局的原则。

【数据平衡原则】
1、分层数据流图中的数据平衡原则
⽗类和⼦类之间的数据流必须保持⼀致,包括数量和内容上⼀致,或者上(下)层输出等于上(下)层的输出。

2、每张数据流图的数据平衡原则
加⼯的输⼊数据流和输出数据流要平衡,保证加⼯的输出数据流都有对应的输⼊和输出数据流。

⿊洞:只进不出
奇迹:只出不进
灰洞:加⼯不出输出流
答题技巧总结
详细分析试题说明,充分利⽤数据平衡原则!。

第3章数据流图

第3章数据流图

第四步,进一步对功能级数据流图进行细化,当 进一步分解将涉及如何具体实现一个功能 时就不应该再分解了。
分层的数据流图
源点
软件系统
终点
源点
1
3
2
终点
源点
1.1
1.3
1.2 2.1
3.1 2.4
3.3
3.2
2.3
2.2
终点
注意事项
1.并不是所有数据存储和数据流都能直接从问题描述 中提取出来;
2.在对数据流图分层细化时,必须保持信息的连续性。 即,分解前、后的输入/输出数据流必须相同。
第四步: 进一步对功能级数据流图进行细化
• 定货信息:源于对事务的处理,当该物品库存数量少 于临界值时产生该信息。
• “事务处理”功能包括三个子功能:接受事务、更新 库存清单、处理定货
库存清单
库存清单
仓库 事务 接受 事务
管理员
事务
更新 库存 清单
库存信息 处理 定货
产生 定货报表 采购员 报表
定货信息
• 医院对患者监护系统的基本要求是随时 接受每个病人的生理信号(脉搏、体温、 血压、心电图等),定时记录病人情况 以形成患者日志,当某个病人的生理信 号超出医生规定的安全范围时向值班护 士发出警告信息,此外,护士在需要时 还可以要求系统打印出某个指定病人的 病情报告。
第二步: 根据分离的四种成分,画基本系统模型
第一步: 从问题描述中提取数据流图的四种成分
• 某工厂有一个库房,存放该厂生产需要的物品, 库房中的各种零件的数量及各种物品库存量临 界值等数据记录在库存文件中,当库房中零件 数量有变化时,应更新库存文件,若某种零件 的库存量少于库存临界值,则报告采购部门以 便订货,每天向采购部门送一份采购报告。

数据流图(DFD)专题讲解

数据流图(DFD)专题讲解

数据流图(DFD)专题讲解及例题分析——解题的方法与技巧1.首先要懂得数据流图设计要略有时为了增加数据流图的清晰性,防止数据流的箭头线太长,减少交叉绘制数据流条数,一般在一张图上可以重复同名的数据源点、终点与数据存储文件。

如某个外部实体既是数据源点又是数据汇点,可以在数据流图的不同的地方重复绘制。

在绘制时应该注意以下要点:(1)自外向内,自顶向下,逐层细化,完善求精。

(2)保持父图与子图的平衡。

为了表达较为复杂问题的数据处理过程,用一个数据流图往往不够。

一般按问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。

根据层次关系一般将数据流图分为顶层数据流图、中间数据流图和底层数据流图,除顶层图外,其余分层数据流图从0开始编号。

对任何一层数据流图来说,称它的上层数据流图为父图,在它的下一层的数据流图为子图。

顶层数据流图只含有一个加工,表示整个系统;输入数据流和输出数据流为系统的输入数据和输出数据,表明了系统的范围,以及与外部环境的数据交换关系。

底层数据流图是指其加工不能再分解的数据流图,其加工称为“原子加工”。

中间数据流图是对父层数据流图中某个加工进行细化,而它的某个加工也可以再次细化,形成子图。

中间层次的多少,一般视系统的复杂程度而定。

任何一个数据流子图必须与它上一层父图的某个加工对应,二者的输入数据流和输出数据流必须保持一致,此即父图与子图的平衡。

父图与子图的平衡是数据流图中的重要性质,保证了数据流图的一致性,便于分析人员阅读和理解。

在父图与子图平衡中,数据流的数目和名称可以完全相同;也可以在数目上不相等,但是可以借助数据字典中数据流描述,确定父图中的数据流是由子图中几个数据流合并而成的,也即子图是对父图中加工和数据流同时进行分解,因此也属于父图与子图的平衡,如图1所示。

图1 父图与子图的平衡(3)保持数据守恒。

也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。

第6讲数据流图(下)讲解

第6讲数据流图(下)讲解

(1)确定外部项,即系统的数据来源和去处。 (2)确定整个系统的输出数据流和输入数据流,把系统作为一个加工环节, 画出关联图。一般应把数据来源置于图的左侧,数据去处置于图的右侧
F1订单 S1顾客
P 图书预订 F2汇总订单
S2出 版社
图书预订系统关联图
规范地绘制数据流图
(3)确定系统的主要信息处理功能,按此将整个系统分解成几个加工环节 ,然后确定每个加工的输出与输入数据流以及与这些加工有关的数据存储。
a文件重复d1d1用户重复的符号表示8完整的系统数据流图不是一张图而是自顶向下逐层分解的一套f2汇总订单f1图书预订系统关联图f1合格订单f2汇总订单订单检查p1订单处理p2发送订单p3f3不合格订单f2汇总订f1订单订单检p1s1p24发送订p3d1图书目录d4出版社要求d2合格订单随时处p23订单分p22数目统d5订单数目图书预订系统顶层图图书预订系统二层图1
案例 • 图书预订系统:书店 向顾客发放订单,顾 客将所填订单交由系 统处理,系统首先依 据图书目录对订单进 行检查并对合格订单 进行处理,处理过程 中根据顾客情况和订 单数目将订单分为优 先订单与正常订单两 种,随时处理优先订 单,定期处理正常订 单。最后系统根据所 处理的订单汇总,并 按出版社要求发给出 版社。
S 2 出 版 社
D5 订单数目 D6 顾 客 情 况 P2.2 订单分 类 正 常 订 单
P2.4
定期处 理
待 发 出 订 单
D 合格订 2 单
D 出版社 4 要求
图书预订系统顶层图
图书预订系统二层图
作业练习
1.认真复习课上讲解的数据流图案
例。体会掌握数据流图的绘制要点; 2.独立完成教材课后数据流图绘制 习题。

数据流图练习答案word版本

数据流图练习答案word版本

数据流图练习答案某时装邮购提供商拟开发订单处理系统,用于处理客户通过电话、传真、邮件或Web 站点所下订单。

其主要功能如下: (1) 增加客户记录。

将新客户信息添加到客户文件,并分配一个客户号以备后续使用。

(2) 查询商品信息。

接收客户提交商品信息请求,从商品文件中查询商品的价格和可订购数量等商品信息,返回给客户。

(3) 增加订单记录。

根据客户的订购请求及该客户记录的相关信息,产生订单并添加到订单文件中。

(4) 产生配货单。

根据订单记录产生配货单,并将配货单发送给仓库进行备货;备好货后,发送备货就绪通知。

如果现货不足,则需向供应商定货。

(5) 准备发货单。

从订单文件中获取订单记录,从客户文件中获取客户记录,并产生发货单。

(6) 发货。

当收到仓库发送的备货就绪通知后,根据发货单给客户发货;产生装运单并发送给客户。

(7) 创建客户帐单。

根据订单文件中的订单记录和客户文件中的客户记录,产生并发送客户帐单,同时更新商品文件中的商品数量和订单文件中的订单状态。

(8) 产生应收帐户。

根据客户记录和订单文件中的订单信息,产生并发送给财务部门应收帐户报表。

现采用结构化方法对订单处理系统进行分析与设计,获得如图1所示的顶层数据流图和图2所示的0层数据流图。

使用【说明】中的词语,给出图1中的实体E1~E3的名称。

使用【说明】中的词语,给出图2中的数据存储D1~D3的名称。

(1) 给出图2中处理(加工)P1和P2的名称及其相应的输入、输出流。

图1 顶层数据流图2 0层数据流P1: 产生配货单,P2: 准备发货单如下图所示(2)除加工P1和P2的输入输出流外,图2还缺失了1条数据流,请给出其起点和终点。

注:名称使用【说明】中的词汇,起点和终点均使用图2中的符号或词汇。

《管理系统中计算机应用》应用题—数据流程图汇总题及参考答案

《管理系统中计算机应用》应用题—数据流程图汇总题及参考答案

《管理系统中计算机应用》应用题及参考答案——数据流程图1、教学管理的主要工作过程是:系办(公室)输入班级和教学时间,查看教学计划表,确定本学期教学任务;根据本学期教学任务,查看教师表,制作开课任务书和班级教学计划表。

查询时,教师输入教师姓名和时间,查询本人的教学任务;学生输入班级和时间,查询班级教学计划。

画出教学管理的数据流程图。

2、某企业订货系统处理流程为:请画出该系统的数据流程图。

(1)接收仓库提供的货物出库入库清单,修改对应库存文件;(2)通过读取货物库存信息和订货标准文件进行订货处理,产生订货报告;(3)将订货报告报采购部门。

3、商场到货处理过程是:根据供应商送来的发货单及货物,对照订货合同文件审核发货单,如果与合同不符,则将发货单和货物退回供应商;对相符的发货单及货物,进行收货处理:首先,将发货单存档,然后开出入库单,并将入库单及货物送交仓库,再向财务科发出付款通知。

请画出处理过程的数据流程图4、教务处学生成绩管理的处理过程如下:教务处接收教师交来的班级学生成绩单,对照教学计划和学生名册进行核对。

核对正确后登录学生成绩表。

再根据学生成绩表对成绩进行分类,将补考和留级学生名单通知学生所在院系办公室,并将留级学生名单报学生处。

作出数据流程图。

5、某企业供应部门采购计划系统处理流程为: 请画出该系统的数据流程图(1)根据计划部提供的生产计划计算生产原材料用量;(2)根据生产原材料用量,并读取库存文件和材料价格文件,制定材料采购计划;(3)将材料采购计划报财务部门和上级部门.6、房屋贷款处理过程是:接收贷款人的贷款账号后,先查询贷款人资料库进行信息核对,再查询房屋贷款资料库确定贷款类型;然后查看贷款利息文件、贷款人存款文件和还贷款记录文件,完成房屋贷款扣款。

最后修改贷款人存款文件和还贷款记录文件,并将扣款数额通知贷款人。

试绘制数据流程图。

7、奖券兑奖过程是:接收持券人的奖券,首先核对日期,再根据奖券种类库鉴别奖券类型,然后参照中奖号码库的内容确定中奖信息,最后将中奖结果交持券人。

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

软件设计师考试的下午题的笫一道题,数据库系统工程师考试的下午题的笫一道题都是数据流图题,而能够将这道题全部做对的考生是非常少的。

根据本人儿年的辅导和阅卷经验, 发现很多考生不是因为这方面的解题能力不够,而是缺乏解这种题的方法与技巧。

本章介绍一些解这种类型题的方法和技巧,希望起来抛砖引玉的效果。

一•解题当中考生表现岀的特点
由于这是下午考试的第一道题,所以很多考生从考前的紧张氛围当中逐渐平静下来开始答题,头脑还比较清醒,阅读起来比较流畅,速度还可以,自我感觉不错。

可偏偏这道题有很多人不能全取15分,纠其原因有以下一些特点:
1.拿卷就做,不全面了解试卷,做到心中有数。

这样会导致在解题过程当中缺少一种整体概念,不能明确自己在哪些题上必需拿分(多花时间),哪些题上自己拿不了分(少花时间)。

这样,在解题时目标就会明确很多。

2.速度快,读一遍题就开始动手做。

3.速度慢,用手指逐个字的去看,心想看一遍就能做出题来。

4.在阅读题目时,不打记,不前后联系起來思考。

5.边做边怀疑边修改,浪费时间。

6.缺少的数据流找不准,可去掉的文件找不出来。

7.由于缺少项目开发经验,对一些事务分析不知如何去思考。

8.盲目乐观,却忽略了答题格式,丢了不应该丢的分。

二•解题的方法与技巧
1•首先要懂得数据流图设计要略。

有时为了增加数据流图的清晰性,防止数据流的箭头线太长,减少交叉绘制数据流条数, 一般在一张图上可以重复同名的数据源点、终点与数据存储文件。

如某个外部实体既是数据源点又是数据汇点,可以在数据流图的不同的地方重复绘制。

在绘制时应该注意以下要点: (1)自外向内,自顶向下,逐层细化,完善求精。

⑵保持父图与子图的平衡。

为了表达较为复杂问题的数据处理过程,用一个数据流图往往不够。

一般按问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。

根据层次关系一般将数据流图分为顶层数据流图、中间数据流图和底层数据流图,除顶层图外,其余分层数据流图从0 开始编号。

对任何一层数据流图来说,称它的上层数据流图为父图,在它的下一层的数据流图为子图。

顶层数据流图只含有一个加工,表示整个系统;输入数据流和输出数据流为系统的输入数据和输出数据,表明了系统的范围,以及与外部环境的数据交换关系。

底层数据流图是指其加工不能再分解的数据流图,其加工称为“原子加工S
中间数据流图是对父层数据流图中某个加工进行细化,而它的某个加工也可以再次细化,形成子图。

中间层次的多少,一般视系统的复杂程度而定。

任何一个数据流子图必须与它上一层父图的某个加工对应,二者的输入数据流和输出数据流必须保持一致,此即父图与子图的平衡。

父图与子图的平衡是数据流图屮的重要性质,保证了数据流图的一•致性,便于分析人员阅读和理解。

在父图与子图平衡中,数据流的数目和名称可以完全相同;也可以在数目上不相等,但是可以借助数据字典中数据流描述,确定父图中的数据流是由子图中儿个数据流合并而成的,也即子图是对父图中加工和数据流同时进行分解,因此也属于父图与子图的平衡,如图1所示。

提货单
手图
(3)保持数据守恒。

也就是说,一个加工所有输出数据流屮的数据必须能从该加工的输入数
据流屮直接获得,或者是通过该加工能产生的数据。

每个加工必须有输入数据流和输出数据流,反映此加工的数据来源和加工变换结果。

一个加工的输出数据流只由它的输入数据流确定。

数据流必须经过加工,即必须进入加工或从加工中流出。

(4)加工细节隐蔽。

根据抽象原则,在画父图时,只需画出加工和加工之间的关系,而不必画出各个加工内部的细节。

当某层数据流图中的数据存储不是父图中相应加工的外部接口,而
只是木图屮某些加工Z间的数据接口时,那么这些数据存储为局部数据存储。

为了强调局部数据存储的隐蔽性,一般情况下,局部数据存储只有作为某些加工的数据接口或某个特定加工的输入和输出吋,才画出来。

即按照自顶向下的分析方法,某数据存储首次出现时只与一个加工有关,那么这个数据存储应该作为与之关联加工的局部数据存储, 在该层数据流子图中不必画出,而在该加工的子图中画出,除非该加工为原子加工。

(5)简化加工间的关系。

在数据流图中,加工间的数据流越少,各个加工就越相对独立, 所以应尽暈减少加工间输入输出数据流的数目。

(6)均匀分解。

应该使一个数据流中的各个加工分解层次大致相同。

(7)适当地为数据流、加工、文件、源/宿命名,名字应反映该成分的实际意义,避免空洞的名字。

(8)忽略枝节。

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

(9)表现的是数据流而不是控制流。

数据流图与传统的程序流程图不同,数据流图是从数据的角度来描述一个系统的,而流程图则是从对数据加工的角度来描述系统的。

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

数据流图适合于宏观地分析一个组织的业务概况,而程序流程图只适合于描述系统屮某个加工的执行细节。

每个加工必须既有输入数据流,又有输出数据流;在整套数据流图中,每个文件必须既有读文件的数据流又有写文件的数据流,但在某一张子图屮可能只有读、没有写,或者只有写、没有读。

2•解题的方法。

(1)数据平衡原则。

数据平衡原则分为两个方面:
①在分层数据流图中,父图和子图耍平衡,也就是说,父图中某加工的输入输出数据流
必须与它的子图的输入输出数据流在数呈和名字上相同。

②数据平衡的另一个方面是说:每个加工必须即有输入数据流又有输出数据流,而且一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。

(2)要特别注意的几个细节问题。

①除了流向数据存储(文件)或从数据存储流出的数据流不必命名外,其它每个数据流都必须有一个合适的名字。

②流向文件的数据流,表示写入数据,流出文件的数据流表示读文件。

在整套数据流图中,每个文件必须既有读的数据流又有写的数据流,但在某一张子图中可能只有读没有写, 或者只有写没有读。

③在逐步精化的过程中,若一个文件首次出现时只与一个加工有关,既该文件是个加工的内部文件,那么该文件在当层图中不必画出,可在该加工的细化图中画出。

3•解题的技巧。

(1)阅读题干的技巧。

快速的阅读第一遍,基本了解题目所涉及到的知识点或者事务,打记实体对象和存储文件,甚至可以将数据流也标记一下;这一步重点落在问题上,一般问题不难,但一定要看清问题。

带着问题来看笫二遍,边看边解决。

(2)要有整体的概念,不能因一个点符合就断定是它,尤其是数据对象。

(3)注意解题的速度,一般在20分钟以内为最好。

(4)解题的过程屮,侮一条数据流都能够在『说明]屮找到相应的语句。

(5)数据流名称要写对,每错一个字扣0.5分;流向也要写对。

(6)做好以后,复查一遍;不要边做边怀疑、边修改,那样会担误时间,且错误更多。

相关文档
最新文档