数据流图练习.docx
- 文档编号:9518631
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:16
- 大小:170.07KB
数据流图练习.docx
《数据流图练习.docx》由会员分享,可在线阅读,更多相关《数据流图练习.docx(16页珍藏版)》请在冰豆网上搜索。
数据流图练习
一、阅读以下说明和图,回答问题1至问题3。
【说明】
某高校欲开发一个成绩管理系统,记录并管理所有选修课程的学生的平时成绩和考试成绩,其主要功能描述如下:
1.每门课程都有3到6个单元构成,每个单元结束后会进行一次测试,其成绩作为这门课程的平时成绩。
课程结束后进行期末考试,其成绩作为这门课程的考试成绩。
2.学生的平时成绩和考试成绩均由每门课程的主讲教师上传给成绩管理系统。
3.在记录学生成绩之前,系统需要验证这些成绩是否有效。
首先,根据学生信息文件来确认该学生是否选修这门课程,若没有,那么这些成绩是无效的;如果他的确选修了这门课程,再根据课程信息文件和课程单元信息文件来验证平时成绩是否与这门课程所包含的单元相对应,如果是,那么这些成绩是有效的,否则无效。
4.对于有效成绩,系统将其保存在课程成绩文件中。
对于无效成绩,系统会单独将其保存在无效成绩文件中,并将详细情况提交给教务处。
在教务处没有给出具体处理意见之前,系统不会处理这些成绩。
5.若一门课程的所有有效的平时成绩和考试成绩都已经被系统记录,系统会发送课程完成通知给教务处,告知该门课程的成绩已经齐全。
教务处根据需要,请求系统生成相应的成绩列表,用来提交考试委员会审查。
6.在生成成绩列表之前,系统会生成一份成绩报告给主讲教师,以便核对是否存在错误。
主讲教师须将核对之后的成绩报告返还系统。
7.根据主讲教师核对后的成绩报告,系统生成相应的成绩列表,递交考试委员会进行审查。
考试委员会在审查之后,上交一份成绩审查结果给系统。
对于所有通过审查的成绩,系统将会生成最终的成绩单,并通知每个选课学生。
现采用结构化方法对这个系统进行分析与设计,得到如图1-1所示的顶层数据流图和图1-2所示的0层数据流图。
图1-1顶层数据流图
图1-20层数据流图
【问题1】(4分)
使用说明中的词语,给出图1-1中的外部实体E1~E4的名称。
【问题2】(3分)
使用说明中的词语,给出图1-2中的数据存储D1~D5的名称。
【问题3】(6分)
数据流图1-2缺少了三条数据流,根据说明及数据流图1-1提供的信息,分别指出这三条数据流的起点和终点。
起点
终点
试题分析:
本题考查的是DFD的应用,属于比较传统的题目,考查点也与往年类似。
问题1考查的是顶层DFD。
顶层DFD通常用来确定系统边界,其中只包含一个唯一的加工(即待开发的系统)、外部实体及外部实体与系统之间的输入输出数据流。
题目要求填充的正是外部实体。
从顶层DFD可以看出,数据流是完整的。
所以只要根据数据流从题目说明的上下文中,找出E1~E4所对应的外部实体,分别为考试委员会、主讲教师、学生和教务处。
0层DFD中缺少的东西比较多,要求填写数据存储及缺失的数据流。
先来确定数据存储。
首先,从说明中找出可能是数据存储的元素来。
很明显,学生信息文件、课程信息文件、课程单元信息文件、课程成绩文件和无效成绩文件应该是数据存储。
下面的工作就是对号入座。
从0层DFD上可以看到,加工3到D5有一条数据流;而加工3所完成的操作是“记录无效成绩”。
从说明中可知,“对于无效成绩,系统会单独将其保存在无效成绩文件中”,所以D5应该是数据存储“无效成绩文件”;类似地,从加工2气己录有效成绩”到D4有一条数据流,这说明D4就是数据存储“课程成绩文件”。
D1输出两条数据流,分别流向加工1“验证学生信息”和加工4“生成成绩列表”。
由说明“根据学生信息文件来确认该学生是否选修这门课程”可知,验证学生信息时,需要根据学生信息文件来进行;而生成成绩列表及成绩单时,学生信息都是必要的。
所以D1应该是“学生信息文件”。
这样的话,D2和D3就应该分别与“课程单元信息文件”和“课程信息文件”对应。
由于D2和D3都只与加工1有关,所以它们的对应关系就是随意的了。
这样5个数据存储就填充完整了。
下面要丰L充缺失的数据流。
首先,从说明的第5条可知,生成成绩列表时,是需要从课程成绩文件中获取信息的,“课程成绩文件”实际上就是图中的D4。
而D4和加工4之间并没有数据流,因此这就是一条缺失的数据流。
另外,前面在确定D1所对应的数据存储时提到过,生成成绩单时是需要学生信息的。
所以,加工5应该从D1中获取相应的信息,这样就找到了第二条数据流。
第三条数据流也比较容易找。
说明的第7条告诉我们,只有“对于所有通过审查的成绩,系统将会生成最终的成绩单,并通知每个选课学生”。
也就是说,从成绩列表到成绩单的生成是有条件的。
这意味着,在加工4和加工5之间应该存在一条数据流,这就是第3条数据流。
问题4实际上是为了考查大家对DFD的进一步理解,明确DFD在软件开发中用于描述功能需求。
二、阅读下列说明以及数据流图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某学校建立了一个网上作业提交与管理系统,基本功能描述如下:
(1)账号和密码。
任课老师用账号和密码登录系统后,提交所有选课学生的名单。
系统自动为每个选课学生创建登录系统的账号和密码。
(2)作业提交。
学生使用账号和密码登录系统后,可以向系统申请所选课程的作业。
系统首先检查学生的当前状态,如果该学生还没有做过作业,则从数据库服务器申请一份作业。
若申请成功,则显示需要完成的作业。
学生需在线完成作业,单击"提交"按钮上交作业。
(3)在线批阅。
系统自动在线批改作业,显示作业成绩,并将该成绩记录在作业成绩统计文件中。
【问题1】
如果将数据库服务器(记为DB)作为一个外部实体,那么在绘制该系统的数据流图时,还应有哪些外部实体和数据存储?
【问题2】
根据说明结合问题1的解答,指出在该系统的顶层数据流图中应有哪些数据流。
请采用说明中的词汇给出这些数据流的起点、终点以及数据流名称,下表给出了数据流的部分信息,请填充空缺处。
序号
起点
终点
数据流名称
1
(1)
网上作业提交与管理系统
作业申请
2
(2)
网上作业提交与管理系统
提交的作业
3
网上作业提交与管理系统
(3)
需完成的作业
4
网上作业提交与管理系统
(4)
(5)
5
网上作业提交与管理系统
(6)
作业申请
6
网上作业提交与管理系统
(7)
(8)
7
(9)
网上作业提交与管理系统
选课学生名单
8
(10)
网上作业提交与管理系统
(11)
9
(12)
网上作业提交与管理系统
账号和密码
10
(13)
网上作业提交与管理系统
账号和密码
【问题3】
根据数据流图的设计原则,阅读下图所示的数据流图,找出其中的错误之处。
试题分析
本题考查的是DFD(数据流图)的绘制,主要包括:
外部实体的识别、数据流的识别以及对绘制DFD图时常见错误的修正。
【问题1】
DFD图中包含4种元素:
加工、数据流、外部实体和数据存储。
外部实体是指存在于软件系统之外的人员或组织。
它指出系统所需数据的发源地和系统所产生的数据的归宿地。
根据说明中提供的信息,可以发现"学生"和"任课老师"向"网上作业提交与管理系统"提供最原始的输入数据,并从系统中获取相应的输出数据。
因此可以确定这两个为外部实体。
数据存储用来表示暂时存储的数据,每个数据存储都有一个名字。
从说明中可以很明显地看出,"作业成绩统计文件"是一个数据存储。
【问题2】
在绘制DFD时,遵循分层绘制的原则。
首先绘制系统的输入输出,即把整个软件系统看作一个大的加工。
然后根据系统从哪些外部实体接收数据流,以及系统发送数据流到哪些外部实体,就可以画出系统的输入和输出图,这张图称为顶层图。
实际上根据题目的描述,确定外部实体与"网上作业提交与管理系统"之间存在的输入、输出数据,填写空
(1)~(13)。
【问题3】
在单张DFD时,必须注意以下原则:
1)一个加工的输出数据流不应与输入数据流同名,即使它们的组成成分相同。
2)保持数据守恒。
也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。
3)每个加工必须既有输入数据流,又有输出数据流。
4)所有的数据流都必须以一个加工开始,或以一个加工结束。
根据上述原则,可以很明显地看出图中存在的错误:
①图中的数据流X和H的开始和结束都不是加工;②加工2的输入、输出数据流是同名的;③加工4只有输入数据流,没有输出数据流;而加工5只有输出数据流,没有输入数据流。
参考答案
【问题1】
外部实体:
(选课)学生、(任课)老师
数据存储:
作业成绩统计文件
【问题2】
(1)(选课)学生
(2)(选课)学生(3)(选课)学生(4)(选课)学生
(5)作业成绩(6)DB(7)作业成绩统计文件
(8)作业成绩(9)(任课)老师(10)DB(11)作业
(12)(选课)学生(13)(任课)老师
注:
(4)、(6)的答案可互换;(12)、(13)的答案可互换。
【问题3】
错误1:
外部实体A和B之间不能存在数据流。
错误2:
外部实体A和数据存储H之间不能存在数据流。
错误3:
加工2的输入/输出数据流名字相同。
错误4:
加工4只有输入,没有输出。
错误5:
加工5只有输出,没有输入。
注:
以上5条错误信息可以打乱次序。
三、阅读下列说明和数据流图,回答问题1至问题3,将解答填入答题纸的对应栏内。
[说明]
某图书馆管理系统的主要功能是图书管理和信息查询。
对于初次借书的读者,系统自动生成读者号,并与读者基本信息(姓名、单位、地址等)一起写入读者文件。
系统的图书管理功能分为四个方面:
购入新书、读者借书、读者还书以及图书注销。
1.购入新书时需要为该书编制入库单。
入库单内容包括图书分类目录号、书名、作者、价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到目前为止,购入此种图书的数量)。
2.读者借书时需填写借书单。
借书单内容包括读者号和所借图书分类目录号。
系统首先检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该读者已借图书是否超过最大限制数(假设每位读者能同时借阅的书不超过5本),若已达到最大限制数,则拒绝借书;否则允许借书,同时将图书分类目录号、读者号和借阅日期等信息写入借书文件中。
3.读者还书时需填写还书单。
系统根据读者号和图书分类目录号,从借书文件中读出与该图书相关的借阅记录,标明还书日期,再写回到借书文件中,若图书逾期,则处以相应的罚款。
4.注销图书时,需填写注销单并修改图书目录文件中的库存总量。
系统的信息查询功能主要包括读者信息查询和图书信息查询。
其中读者信息查询可得到读者的基本信息以及读者借阅图书的情况;图书信息查询可得到图书基本信息和图书的借出情况。
图书管理系统的顶层图如图1-1所示;图书管理系统的第0层DFD图如图1-2所示,其中加工2的细图如图1-3所示。
【数据流图1-1】
[问题1](2分)
数据流图1-2中有两条数据流是错误的,请指出这两条数据流的起点和终点。
[问题2](6分)
数据流图1-3中缺少三条数据流,请指出这三条数据流的起点和终点。
[问题3](7分)
根据系统功能和数据流图填充下列数据字典条目中的
(1)和
(2):
查询请求信息=[查询读者请求信息|查询图书请求信息]
读者情况=读者号+姓名+所在单位+{借书情况}
管理工作请求单=
(1)
入库单=
(2)
试题分析:
本题是一道分层数据流图的题目。
解答此类问题最关键的一点就是要细心,把题目看清,不要丢掉任何一个条件。
另外解题有一定的技巧’,从一些常规的人口作为突破口,会事半功倍。
现在就利用分层数据流图的数据流的平衡原则(即父图和子图(加工图)的一致性)来解题。
子图是其父图中某一部分内部的细节图(加工图)。
它们的输入输出数据流应该保持一致。
如同看到地上有只蚂蚁有6条细细的腿,中间是一个小黑点,要看得更清楚一些就拿放大镜看。
这时能看到它的头、触角、身体和比较粗的腿,但是看到的一定还是6条腿,不是?
条,也不是3条。
子图也是如此,在上一级中有几个数据流,它的子图也一定有同样的数据流,而且它们的输送方向是一致的(也就是说原图有3条进的数据流,2条出的数据流,子图同样也是)。
用这条原则可以轻松地解决问题3。
在。
层图中,“4监控传感器”模块有1条输人数据流——“传感器状态”和3条输出数据流——“电话拨号”、“传感器数据”和“告警类型”。
在加工4的细化图中,仅看到了输出数据流“告警类型”,所以知道此加工图少了“传感器状态”、“电话拨号”、“传感器数据’’这3条数据流。
加工4的结构非常清晰,所以只需把这3条数据流对号入座即可,“电话拨号”应是“4.5拨号”的输出数据流;“传感器状态”应是作为“4.4读传感器”处理的输入数据流;“传感器数据”应该是经“4.1显示格式”处理过的数据流,所以作为“4.1显示格式”的输出数据流。
[问题1]
此题和以往试题有所不同。
以往都给定了完整正确的顶层图。
现在顶层图不完整,可以通过题目说明信息以及顶层图来分析顶层图并解答问题。
题目中提到了“房主可以在安装该系统时配置安全监控设备(如传感器,显示器,报警器等)”在顶层图中这3个名词都没有出现,但仔细观察,可以看出“电视机”实际上就是“显示器”。
因为它接收TV信号并输出。
再看其他的几个实体都和“传感器,,(‘报警器”没有关联。
又因为A中输出“传感器状态”到“住宅安全系统”所以A应填“传感器”。
B接收“告警类型”,所以应填:
“报警器”。
[问题2]
首先,毫无疑问“4监控传感器”用到了配置信息文件,这点可以在加工4的细化图中看出。
接着,观察0层图,“3密码处理”这个处理是用于检验密码的,且它只有1个输出数据流“检验ID信息’’到“显示信息和状态”,没有反馈回来的数据流,所以“检验ID信息”是已经验证通过的用户的信息,用户输入密码应是在“3密码处理”这个环节中进行验证的(因为如果密码验证是在“5显示信息和状态”中进行的,那么从“5显示信息和状态”应有1条不合法用户的数据流反馈到“密码处理”)。
所以“密码处理”一定要用到配置信息文件中的用户名和密码。
同时由于输出到“5显示信息和状态”的数据流是“检验ID信息”,所以“5显示信息和状态”也用到了配置信息文件。
参考答案
【问题1】
起点:
读者文件终点:
登记读者信息或3
起点:
处理查询请求或2终点:
读者文件
【问题2】
起点:
图书目录文件终点:
图书信息查询或2.2
起点:
借书文件终点:
读者信息查询或2.1
起点:
借书文件终点:
图书信息查询或2.2
【问题3】
(1)【入库单|借书单|还书单|注销单】
(2)分类目录号+书名+作者+价格+数量+购书日期
4、阅读以下说明和图,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】
某音像制品出租商店欲开发一个音像管理信息系统,管理音像制品的租借业务。
需求如下:
1.系统中的客户信息文件保存了该商店的所有客户的用户名、密码等信息。
对于首次来租借的客户,系统会为其生成用户名和初始密码。
2.系统中音像制品信息文件记录了商店中所有音像制品的详细信息及其库存数量。
3.根据客户所租借的音像制品的品种,会按天收取相应的费用。
音像制品的最长租借周期为1周,每位客户每次最多只能租借6件音像制品。
4.客户租借某种音像制品的具体流程如下。
(1)根据客户提供的用户名和密码,验证客户身份。
(2)若该客户是合法客户,查询音像制品信息文件,查看商店中是否还有这种音像制品。
(3)若还有该音像制品,且客户所要租借的音像制品数小于等于6个,就可以将该音像制品租借给客户。
这时,系统给出相应的租借确认信息,生成一条新的租借记录并将其保存在租借记录文件中。
(4)系统计算租借费用,将费用信息保存在租借记录文件中并告知客户。
(5)客户付清租借费用之后,系统接收客户付款信息,将音像制品租借给该客户。
5.当库存中某音像制品数量不能满足客户的租借请求数量时,系统可以接受客户网上预约租借某种音像制品。
系统接收到预约请求后,检查库存信息,验证用户身份,创建相应的预约记录,生成预约流水号给该客户,并将信息保存在预约记录文件中。
6.客户归还到期的音像制品,系统修改租借记录文件,并查询预约记录文件和客户信息文件,判定是否有客户预约了这些音像制品。
若有,则生成预约提示信息,通知系统履行预约服务,系统查询客户信息文件和预约记录文件,通知相关客户前来租借音像制品。
(a)
(点击查看大图)(b)
【问题1】
图(a)中只有一个外部实体E1。
使用【说明】中的词语,给出E1的名称。
【问题2】
使用【说明】中的词语,给出图(b)中的数据存储D1~D4的名称。
【问题3】
数据流图(b)缺少了3条数据流,根据说明及数据流图(a)提供的信息,分别指出这3条数据流的起点和终点。
起点
终点
试题分析
本题考查数据流图的设计和应用。
根据题目说明,本系统的外部实体仅仅涉及到客户,因此系统的顶层数据流图中E1应该对应为客户。
题目的第二个问题在于识别系统中的数据文件D1~D4,根据0层数据流图中的数据文件与处理之间的关系分析可以得知:
D1为创建新客户加工的输出,并且为加工1、6和7的输入,再根据题目中的描述,客户信息文件与创建客户信息、预约、归还和履行预约都相关,因此D1便是客户信息文件。
同理可分析出D2为音像制品信息文件、D3为租借记录文件、D4为预约记录文件。
图(b)中缺少了3条数据流,我们先检查顶层数据流图和0层数据流是否一致。
首先,从顶层数据流图中可以看出,与E1直接相关的数据流共有9条,而在0层数据流图中与E1直接关联的只有7条,因此可以直接断定,图(b)中至少缺少直接与E1相关的两条数据流:
新客户创建请求和预约流水号。
新客户创建请求通过创建新客户加工将客户的信息写入客户信息文件中,因此其起点和终点分别为:
E1和4。
同理,预约流水号的起点和终点为5和E1。
在说明中,客户归还到期的音像制品,系统修改租借记录文件,并查询预约记录文件和客户信息文件,判定是否有客户预约了这些音像制品。
若有,则生成预约提示信息,通知系统履行预约服务,系统查询客户信息文件和预约记录文件,通知相关客户前来租借音像制品。
因此,在客户归还和履行预约服务之间存在着数据上的联系。
面向数据结构的设计方法以数据结构作为设计的基础,它根据输入/输出数据结构导出程序的结构。
面向数据结构的设计方法用于规模不大的数据处理系统。
参考答案
【问题1】
E1:
客户
【问题2】
D1:
客户信息文件D2:
音像制品信息文件
D3:
租借记录文件D4:
预约记录文件
【问题3】
起点
终点
E1或客户
4或创建新客户
5或创建预约记录
E1或客户
6或归还音像制品
7或履行预约服务
注意:
3条数据流无前后顺序区分。
【问题4】
面向数据结构的设计方法以数据结构作为设计的基础,它根据输入/输出数据结构导出程序的结构。
面向数据结构的设计方法用于规模不大的数据处理系统。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据流 练习