问答题
阅读下列说明和数据流图,回答问题1至问题3。
【说明】
图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还及注销。管理人员可以查询某位读者、某种图书的借阅情况,还可以对当前图书借阅情况进行一些统计,给出统计表格,以便掌握图书的流通情况。
系统要实现以下4方面的功能:购入新书、读者借书、读者还书及图书注销。
(1)购入新书:需要为该书编制图书卡片,包括分类目录号、图书流水号(要保证每本书都有唯一的流水号,即使同类图书也是如此)、书名、作者、内容摘要、价格和购书日期等信息,写入图书目录文件中。
(2)读者借书:填写借书单,包括读者号、欲借图书分类目录号,系统首先检查该读者号是否有效,若无效,则拒绝借书,否则进一步检查该读者所借图书是否超过最大限制数,若已达到最大借阅数,则拒绝借书,否则读者可以借出该书,登记图书分类目录号、图书流水号、读者号和借阅日期等,写回到借书文件中去。
(3)读者还书:根据图书流水号,从借书文件中读出和该图书相关的借阅记录,表明还书日期,再写回借书文件中;如果图书逾期未还,则处以相应罚款。
(4)图书注销:将一些过时或无保留价值的图书注销,从图书文件中删除相关记录。
(5)流通查询:管理员可以对图书流通情况进行查询,包括某位读者、某种图书和全部图书,给出流通情况统计表。
以下是经分析得到的数据流图及部分数据字典,有些地方有待填充,假定顶层数据流图是正确的。如图9-1所示是顶层数据流图,如图9-2所示是第0层数据流图,如图9-3所示是第1层数据流图。



【数据字典】
(1)数据流条目
图书管理要求=[入库单|借书单|还书单|注销单]
入库单=分类目录号+数量+书名+作者+内容摘要+价格+购书日期
借书单=读者号+{{U}} (d) {{/U}}+借阅日期
还书单={{U}} (e) {{/U}}+还书日期
(2)文件说明
文件名:目录文件
组成:{分类目录号+书名+作者+内容摘要+价格+入库日期+总数+库存数+{{U}} (f) {{/U}}}
问答题
【问题1】
根据题意,指出数据流图中缺失的数据流(a)的名称,并指出该数据流的起点。
【正确答案】
【答案解析】名称:当前日期,起点:系统时钟。 [分析] 加工2的输入数据流有“当前日期”和“有效的图书管理要求”。根据平衡原则,加工2.1的输入数据流(a)应为“当前日期”,其起点自然是“系统时钟”。
问答题
【问题2】
将下述文件正确填充在数据流图(b)、(c)处:读者文件、借书文件。
【正确答案】
【答案解析】(b)读者文件 (c)借书文件 [分析] 加工3.2“读者查询”需要“借书文件”及“读者文件”,而加工3.3“图书查询”与“读者文件”不相关,因此b处应填“读者文件”,c处应填“借书文件”。
问答题
【问题3】
根据题意,补充数据字典中(d)、(e)、(f)处的空缺。
【正确答案】
【答案解析】(d)分类目录号 (e)图书流水号 (f){图书流水号} [分析] 根据说明“填写借书单,包括读者号、欲借图书分类目录号”可得,借书单应包括“读者号”和“图书分类号”。故d应填“分类目录号”。 还书时是根据“图书流水号”的,因此还书单应包括“图书流水号”。故e应填图书流水号。 “目录文件”存储图书的情况,包括分类目录号、图书流水号、书名、作者、内容摘要、价格,可见“目录文件”需要存储图书流水号,而且“一种”书有多个副本,因此f应填{图书流水号}。注意,大括号{}表示多个数据项。