第二章习题与解答
1.情景与描述了所有可能的动作序列的状态图之间有什么关系?
答:情景仅仅是通过部分或全部状态图的一条路径。也就是说,情景仅仅描述了系统的某个典型行为,而状态图则描述了系统所有行为。
2.在程序流程图中的每个结点都必须有一条从开始结点到该结点本身的路径,以及一条从该结点到结束结点的路径。为什么数据流图没有关于结点之间可达性的类似规则?
答:数据流图不描述控制,因此,在一个数据流图中两个“处理”之间可能没有通路。如果每个处理都使用不同的输入数据,并生成不同的输出数据,而且一个处理的输出不用做另一个处理的输入,那么,在它们之间就没有弧。
3.请为某仓库的管理设计一个ER模型。该仓库主要管理零件的订购和供应等事项。仓库向工程项目供应零件,并且根据需要向供应商订购零件。
答:建立ER图的大致过程如下所述:
(1)确定实体类型
本问题有三类实体,分别是“零件”、“工程项目”和“供应商”。
(2)确定联系类型
一种零件可供应多个工程项目,一个工程项目需要使用多种零件,因此,零件与工程
项目之间的联系“供应”,是多对多(M∶N)联系;类似地,零件与供应商之间的联系“订购”,也是多对多(M∶N)联系。
(3)确定实体类型和联系类型的属性
实体类型“零件”的主要属性是:零件编号,零件名称,颜色,重量。实体类型“工程项目”的属性主要是:项目编号,项目名称,开工日期。实体类型“供应商”的属性主要有:供应商编号,供应商名称,地址。联系类型“供应”的属性是,向某工程项目供应的某种零件的数量。联系类型“订购”的属性是,向某供应商订购的某种零件的数量。
(4)把实体类型、联系类型及属性组合成ER图。仓库管理的ER图如图2.1所示。
图2.1仓库管理的ER图
4.银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键
入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
请用数据流图描绘本系统的功能,并用实体-联系图描绘系统中的数据对象。
答:(1)描绘本系统功能的数据流图如图2.2所示。
图2.2 计算机储蓄系统数据流图
(2)本问题有两类实体,分别是“储户”和“储蓄所”,在它们之间存在“存取款”
关系。因为一位储户可以在多家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取
款”是多对多(M∶N)关系。
储户的属性主要有姓名、住址、电话号码和身份证号码,储蓄所的属性主要是名称、地
址和电话号码,而数额、类型、到期日期、利率和密码则是联系类型存取款的属性。
图2.3
5.目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。某医院打算开发一个以计算机为中心的患者监
护系统,请分层次地画出描述本系统功能的数据流图。
医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统输出某个指定病人的病情报告。
答:从问题陈述可知,本系统的数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。
从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。
为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。
本系统的基本系统模型如图2.4所示,图2.5是本系统的功能级数据流图。
图2.4患者监护系统的基本模型
图2.5患者监护系统的功能及数据流图
6.考虑一个修改磁带上主文件的系统。文件管理员把修改信息穿孔在卡片上,系统读入穿孔卡片上的信息并按照记录号把修改信息顺序排列好。然后系统逐个读入主文件上的
记录,根据记录上的校验码校核每个读入的记录,丢掉出错的记录,按照修改信息修改余下的记录,产生的新文件存储在磁盘上。最后,系统输出一份修改报告供文件管理员参阅。
请分层次地画出上述主文件修改系统的数据流图。
答:本系统的数据源点和终点都是文件管理员,他既向系统提供修改信息,又接收系统生成的修改报告。系统功能主要有:接收修改信息,读主文件,校核记录,修改原始记录和产生报告。
注意,问题陈述中所描述的“系统按照记录号把修改信息顺序排列好”,是具体的实现方法。在数据流图中无须描绘具体实现方法,因此,在本系统的数据流图中不需要包含“排序”功能。类似地,“文件管理员把修改信息穿孔在卡片上,系统读入穿孔卡片上的信息”,是系统接收修改信息的具体方法。在数据流图中无须描绘这个具体的实现方案,因此,在本系统的数据流图中不需要包含“穿卡片”和“读卡片”功能。
本系统包含的数据存储是:修改信息,主文件和修改后的主文件。
图2.6是本系统的基本系统模型,图2.7是功能级数据流图。
7.某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,如果是本地电话再接着拨8位电话号码(第1位不是0),如果是外地电话则先拨3位区码,再拨8位电话号码(第1位不是0)。
请用规定的符号,定义上述的电话号码。
请用2.8节讲述的符号,定义上述的电话号码。
答:电话号码=[校内电话号码|校外电话号码]
校内电话号码=非零数字+3位数字
校外电话号码=[本市号码|外地号码]
本市号码=数字零+8位数字
外地号码=数字零+3位数字+8位数字
非零数字=[1|2|3|4|5|6|7|8|9]
数字零=0
3位数字=3{数字}3
8位数字=非零数字+7位数字
7位数字=7{数字}7
数字=[0|1|2|3|4|5|6|7|8|9]
8.办公室复印机的工作过程大致如下:未接收到复印命令时处于闲置状态,一旦接收到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
答:从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”。引起状态转换的事件主要是“复印命令”、“完成复印命令”、“发现缺纸”、“装满纸”、“发生卡纸故障”和“排除了卡纸故障”。
图2.8所示状态转换图描绘了复印机的行为。
图2.8复印机的状态图
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务