2023年中级软件设计师上半年下午试题.doc
《2023年中级软件设计师上半年下午试题.doc》由会员分享,可在线阅读,更多相关《2023年中级软件设计师上半年下午试题.doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、中级软件设计师2023上半年下午试题试题一阅读以下说明和图,回答问题1至问题3。【说明】某房屋租赁公司欲建立一个房屋租赁服务系统,统一管理房主和租赁者的信息,从而快速地提供租赁服务。该系统具有以下功能:1登记房主信息。对于每名房主,系统需登记其姓名、住址和联系电话,并将这些信息写入房主信息文献。2登记房屋信息。所有在系统中登记的房屋都有一个唯一的辨认号(对于新增长的房屋,系统会自动为其分派一个辨认号)。除此之外,还需登记该房屋的地址、房型(如平房、带阳台的楼房、独立式住宅等)、最多可以容纳的房客数、租金及房屋状态(待租赁、已出租)。这些信息都保存在房屋信息文献中。一名房主可以在系统中登记多个待
2、租赁的房屋。3登记租赁者信息。所有想通过该系统租赁房屋的租赁者,必须一方面在系统中登记个人信息,涉及:姓名、住址、电话号码、出生年月和性别。这些信息都保存在租赁者信息文献中。4租赁房屋。已经登记在系统中的租赁者,可以得到一份系统提供的待租赁房屋列表。一旦租赁者从中找到合适的房屋,就可以提出看房请求。系统会安排租赁者与房主见面。对于每次看房,系统会生成一条看房记录并将其写入看房记录文献中。5收取手续费。房主登记完房屋后,系统会生成一份费用单,房主根据费用单交纳相应的费用。6变更房屋状态。当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态的请求。系统将根据房主的请求,修改房屋信息文献。
3、数据流图10-1和图10-2分别给出了该系统的顶层数据流图和0层数据流图。1. 【问题1】使用说明中给出的词汇,将数据流图10-1中(1)(4)处的数据流补充完整。这道题您没有回答答案:(1)费用单 (2)待租赁房屋列表 (3)看房请求 (4)变更房屋状态请求2. 【问题2】使用说明中给出的词汇,将数据流图10-2中的(5)(8)补充完整。这道题您没有回答答案:(5)房主信息文献 (6)租赁者信息文献 (7)房屋信息文献(8)看房记录文献3. 【问题3】数据流程图10-2中缺失了三条数据流,请指出这三条数据流的起点、终点和数据流名称。这道题您没有回答答案:(1)起点:房主 终点:变更房屋状态
4、数据流名称:变更房屋状态请求(2)起点:租赁者终点:登记租赁者信息数据流名称:租赁者信息(3)起点:租赁者终点:安排租赁者看房数据流名称:看房请求分析 本题考察的是DFD的应用,属于比较传统的题目,考察点也与往年类似。问题1 考察的是顶层DFD。顶层DFD通常用来拟定系统边界,其中只包含一个唯一的加工(即待开发的系统)、外部实体以及外部实体与系统之间的输入输出数据流。题目规定填充的正是数据流。细心的考生也许会发现,在0层DFD中,与“房主”相关的数据流有5条。其中的“费用单”是顶层DFD中没有出现过的,并且是系统输出给“房主”的。这条数据流恰好可以与第(1)空相应,因此(1)处缺失的数据流就是
5、“费用单”。假如拟定了(4)处的数据流,事实上问题3规定的一条数据流也就找到了。由于(4)处缺失的数据流是一条输入数据流,从说明中可以看出,只有功能6“当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态的请求”所描述的数据流没有在“房主”与系统之间体现出来。因此可以拟定,(4)处缺失的数据流就是“变更房屋状态请求”。相应地,可以拟定,在0层图中缺失的其中一条数据流也是它,其起点是“房主”,终点是“变更房屋状态”这个加工。类似地,通过比较两张DFD中与外部实体“租赁者”相关的数据流,可以发现:出现在0层图上的数据流“带租赁房屋列表”是顶层图上没有的,且与(2)处的数据流的方向一致。由
6、此可以断定,(2)处的数据流就是“带租赁房屋列表”。而顶层图中的数据流“租赁者信息”却是0层图上没有的。这样就找到了0层图上缺失的第2条数据流:租赁者信息,它的起点是“租赁者”,终点是加工“登记租赁者信息”。再回到说明l,其中与“租赁者”相关的功能“一旦租赁者从中找到合适的房屋,就可以提出看房请求”并没有在图中体现出来。这样就能拟定(3)处的数据流应当是“看房请求”。而0层图中也没有出现这条数据流。所以,0层图中缺失的第3条数据流就是“看房请求”,它的起点是“租赁者”,终点是加工“安排租赁者看房”。到此为止所有缺失的数据流都补齐了,0层图中的(5)(8)需要填的是数据存储。由说明可以拟定,这个
7、系统中的数据存储有房主信息文献(功能1)、房屋信息文献(功能2)、租赁者信息文献(功能3)、看房记录文献(功能4)。下面就可以根据相应的加工对号入座了。显然,(5)处的是房主信息文献:(6)处的是租赁者信息文献; (7)处的是房屋信息文献;(8)处的是看房记录文献。试题二阅读下列说明,回答问题1至问题3。【说明】某医院的门诊管理系统实现了为患者提供挂号、处方药品收费的功能。具体的需求及设计如下:1医院医师具有编号,姓名,科室,职称,出诊类型和出诊费用,其中出诊类型分为专家门诊和普通门诊,与医师职称无关;各个医师可以具有不同的出诊费用,与职称和出诊类型无关。2患者一方面在门诊挂号处挂号,选择科室
8、和医师,根据选择的医师缴纳挂号费(医师出诊费)。收银员为患者生成挂号单,如表10-1所示,其中,就诊类型为医师的出诊类型。表10-1医院门诊挂号单收银员:13011时间:2023年2月1日 08:58 就诊号姓名科室医师就诊类型挂号费叶萌内科杨玉明专家门诊5元3患者在医师处就诊后,凭借挂号单和医师手写处方到门诊药房交费买药。收银员根据就诊号和医师处方中开列的药品信息,查询药品库(如表10-2所示)并生成门诊处方单(如表10-3所示)。表10-2药品库药品编码药品名称类型库存货架编号单位规格单价12023牛蒡子中药51590B1401G炒0.034011090百部中药36950B1523G片0.
9、0313表10-3医院门诊处方单时间:2023年2月1日 10:31就诊号病人姓名叶萌医师姓名杨玉明金额总计0.65项目总计2收银员21081药品编码药品名称数量单位单价金额(元)12023牛蒡子10G0.03400.3411090百部10G0.03130.314由于药品价格会发生变化,因此,门诊管理系统必须记录处方单上药品的单价。根据需求阶段收集的信息,设计的实体联系图和关系模式(不完整)如下所示:1实体联系图2关系模式挂号单(就诊号,病患姓名,医师编号,时间, (5)收银员(编号,姓名,级别)医师(编号,姓名,科室,职称,出诊类型,出诊费用)门诊处方( (6),收银员,时间)处方明细(就诊
10、号, (7)药品库(药品编码,药品名称, (8)4. 【问题1】根据问题描述,填写图10-3实体联系图中(1)(4)处联系的类型。这道题您没有回答答案:(1)1(2)* ,或n,或m(3)* ,或n,或m(4)* ,或n,或m5. 【问题2】图10-3中还缺少几个联系?请指出每个联系两端的实体名,格式如下。实体1:实体2例如,收银员与门诊处方之间存在联系,表达为:收银员:门诊处方 或 门诊处方:收银员这道题您没有回答答案:缺少的联系数:3挂号单:收银员挂号单:医师挂号单:门诊处方6. 【问题3】根据实体联系图10-3,填写挂号单、门诊处方、处方明细和药品库关系模式中的空 (5)(8)处,并指出
11、挂号单、门诊处方和处方明细关系模式的主键。这道题您没有回答答案:(5)收银员,或收银员编号(6)就诊号(7)药品编码,数量,单价(8)类型,库存,货架编号,单位,规格,单价挂号单主键:就诊号 门诊处方主键:就诊号处方明细主键:就诊号、药品编码分析问题1分析本题重要是考数据库的概念结构设计。根据题目的需求描述和表10-3中的数据可知,一名医生可以开多张门诊处方,一张门诊处方由一名医生开出。所以对于医生实体与门诊处方实体之间的联系“开处方”,其联系的类型为一对多(1:n)。(1)空的答案为1,(2)空的答案为n。根据题目的需求描述和表10-3中的数据可知,一张门诊处方包含多种库存中的药品,一种库存
12、中的药品也可以在多张门诊处方中。所以对于门诊处方实体与药品库存实体之间的联系“明细”,其联系的类型为多对多(m:n)。(3)空的答案为m,(4)空的答案为n。问题2分析根据题目的需求描述和表10-1中的数据可知,挂号单由收银员进行收费,因此挂号单实体与收银员实体之间存在联系。挂号单:收银员病人挂某个医师的号,将挂号信息记录在挂号单实体中,因此挂号单实体与医师实体之间存在联系。挂号单:医师根据题目的需求描述和表10-3中的数据可知,收银员根据挂号单和医师的手写处方生成门诊处方,所以挂号单实体与门诊处方实体之间存在联系。挂号单:门诊处方因此,缺少的联系数:3问题3分析本题重要考察数据库的逻辑结构设
13、计。 根据实体联系图和表10-1的数据,对于“挂号单”关系模式,由于挂号单与收银员实体有联系,需记录相应的收银员,因此,“挂号单”关系模式需补充属性(5):收银员。根据实体联系图和表10-3的数据,由于门诊处方实体与挂号单实体有联系,因此,“门诊处方”关系模式需记录(6):就诊号。并且,根据题旨在门诊处方和挂号单之间存在的是1对1的联系,因此挂号单的主键可以作为门诊处方的主键。根据实体联系图和表10-2、表10-3的数据,由于广张门诊处方中包含多项药品信息,而一种药品也可以属于多张门诊处方,所以通过“处方明细”关系模式来表达这种多对多的联系。并且由于每种药品的具体信息已经在“药品库存”关系模式
14、中记录,所以,“处方明细”关系模式重要记录的是门诊处方与药品的相应关系和处方所需药品的具体数量。并且,根据题目描述,由于药品价格会发生变化,门诊管理系统必须记录处方单上药品的当前单价。因此,“药品库存”关系模式补充属性(7):堑显缠昱,数量,单价。其中就诊号和药品编号一起作为主键。“药品库存”关系模式重要记录药品的具体信息和库存信息,根据实体联系图和表 10-2的数据,“药品库存”关系模式需补充属性(8):类型,库存,货架编号,单位,规格,单价。挂号单主键:就诊号门诊处方主键:就诊号处方明细主键:就诊号、药品编码试题三阅读下列说明和图,回答问题1至问题3。【说明】某图书管理系统的重要功能如下:
15、1图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。2资源可以分为两类:图书和唱片。对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者和介质类型(CD或者磁带)。3读者信息保存在图书管理系统的读者信息数据库中,记录的信息涉及:读者的辨认码和读者姓名。系统为每个读者创建了一个借书记录文献,用来保存读者所借资源的相关信息。现采用面向对象方法开发该图书管理系统。辨认类是面向对象分析的第一步。比较常用的辨认类的方法是寻找问题描述中的名词,再根据相关规则从这些名词中删除不也许成为类的名词,最终得到构
16、成该系统的类。表10-4给出了说明中出现的所有名词。表10-4图书管理系统资源目录读者资源索引号系统名称出版时间资源状态图书唱片作者页数演唱者介质类型CD磁带读者信息读者信息数据库辨认码姓名借书记录文献信息通过对表10-4中的名词进行分析,最终得到了图10-4所示的UML类图(类的说明如表10-5所示)。表10-5类名说明LibrarySystem图书管理系统BorrowerDB保存读者信息的数据库CatalogItem资源目录中保存的每项资源Borrower读者BorrowerItems为每个读者创建的借书记录文献7. 【问题1】表10-5所给出的类并不完整,根据说明和表10-4,将图10-
17、4中的(a)(c)处补充完整。这道题您没有回答答案:(a)资源目录 (b)图书 (c)唱片注:(b)和(c)的答案可以互换8. 【问题2】根据【说明】中的描述,给出图10-4中的类CatalogItem以及(b)、(c)处所相应的类的关键属性(使用表10-4中给出的词汇),其中,CamlogItem有4个关键属性;(b)、 (c)处相应的类各有两个关键属性。这道题您没有回答答案:CatalogItem的属性:索引号、名称、出版时间、资源状态图书的属性:作者、页数唱片的属性:演唱者、介质类型9. 【问题3】辨认关联的多重度是面向对象建模过程中的一个重要环节。根据说明中给出的描述,完毕图10-4中
18、的(1)(6)。这道题您没有回答答案:(1)1 (2)0.* (3)1 (4)0.* (5)1 (6)1或者0.1分析本题重要考察面向对象分析中类图的设计,涉及到类的辨认、属性的辨认以及多重度的计算。问题1规定的是将所有的类找出来。由于说明中给出了辨认类的规则,并给出了所有的候选类和一张不完整的类图,从而为我们提供了大量的提醒信息。从类图可以看出,这里有一个继承结构,的确这两个类恰好是这个继承结构的子类。根据说明中提供信息,我们发现只有“资源”、“图书”和“唱片”这三者之间存在着继承结构所描述的“一般特殊”关系。由于“图书”和“唱片”都是图书管理系统中的资源,因此具有共性 (索引号、名称、出版
19、时间、资源状态);而这两者又是两种完全不同的事物,所以有着各自特有的性质。同时,这三者又都在候选类集合中。所以可以断定(b)、(c)处要填的类就是“唱片”和“图书”。这里连这三个类的属性也可以完全拟定了。类CatalogItem描述的是共性,所以它的属性是索引号、名称、出版时间、资源状态。由说明中第2条可以拟定,“图书”的属性是作者和页数;“唱片”的属性是演唱者和介质类型。下面需要拟定(a)处的类到底是什么?从说明中的第1条和表10-5可以看出, CatalogItem表达的是“资源目录保存的每项资源”,这是集合(资源目录)与其中的元素的概念。所以(a)处的类应当是“资源目录”一既然明确这里是
20、集合的概念,(1)和 (2)处的多重度也可以拟定了。CatalogItem表达的是部分,所以(1)处应填1,(2)处应填1.*(0.*也可以)。类似的,BorrowerDB与Borrower之间也具有相似的关系。由于数据库中可以保存多个读者的信息。因此(3)处填1,(4)处填1.*(0.*也可以)。系统为每个读者都创建了借书记录文献,所以(5)处填1,(6)填1(0.1也可以)。试题四阅读以下说明和图,填补流程图中的空缺。10. 【说明】在一条农村公路的一边稀疏地分布着房子,其分布如图10-5所示。某电信公司需要在某些位置放置蜂窝电话基站,由于基站的覆盖范围是6公里,因此必须使得每栋房子到某个
21、基站的直线距离不超过6公里。为简化问题,假设所有房子在同一直线上,并且基站沿该直线放置。现采用贪心策略实现用尽也许少的基站覆盖所有的房子。实现贪心算法的流程如图10-6所示,请填充其中空白并计算该算法的时间复杂度,其中:1di(1iN)表达第i个房子到公路A端的距离,N表达房子的总数,房子的编号按照房子到公路A端的距离从小到大进行编号。2sk表达第k(k1)个基站到公路A端的距离,算法结束后k的值为基站的总数。该算法的时间复杂度为 (5)。这道题您没有回答答案:(1)k=0(2)jN,或其等价形式(3)k=k+1,或其等价形式(4)di+6,或其等价形式(5)O(N),或O(n)分析该问题可以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 年中 软件 设计师 上半年 下午 试题
限制150内