上半年软件设计师考试软件设计应用技术真题.docx
- 文档编号:28829326
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:18
- 大小:25.57KB
上半年软件设计师考试软件设计应用技术真题.docx
《上半年软件设计师考试软件设计应用技术真题.docx》由会员分享,可在线阅读,更多相关《上半年软件设计师考试软件设计应用技术真题.docx(18页珍藏版)》请在冰豆网上搜索。
上半年软件设计师考试软件设计应用技术真题
2018年上半年软件设计师考试软件设计应用技术真题
(总分:
90.00,做题时间:
150分钟)
一、案例分析题(总题数:
6,分数:
90.00)
阅读下列说明,回答下列问题,将解答填入答题纸的对应栏内。
【说明】
某医疗护理机构为老年人或有护理需求者提供专业护理,现欲开发一基于Web的医疗管理系统,以改善医疗护理效率。
该系统的主要功能如下:
(1)通用信息查询。
客户提交通用信息查询请求,查询通用信息表,返回查询结果。
(2)医生聘用。
医生提出应聘/辞职申请,交由主管进行聘用/解聘审批,更新医生表,并给医生反馈聘用/解聘结果;删除解聘医生的出诊安排。
(3)预约处理。
医生安排出诊时间,存入医生出诊时间表;根据客户提交的预约查询请求,查询在职医生及其出诊时间等预约所需数据并返回;创建预约,提交预约请求,在预约表中新增预约记录,更新所约医生出诊时间并给医生发送预约通知;给客户反馈预约结果。
(4)药品管理。
医生提交处方,根据药品名称从药品数据中查询相关药品库存信息,开出药品,更新对应药品的库存以及预约表中的治疗信息;给医生发送”药品已开出”反馈。
(5)报表创建。
根据主管提交的报表查询请求(报表类型和时间段),从预约数据、通用信息、药品库存数据、医生以及医生出诊时间中进行查询,生成报表返回给主管。
现采用结构化方法对医疗管理系统进行分析与设计,获得如图1-1所示的上下文数据流图和图1-2所示的0层数据流图。
(分数:
15)
(1).使用说明中的词语,给出图1-1中的实体E1~E3的名称。
(分数:
3)
__________________________________________________________________________________________
正确答案:
(
E1:
客户
E2:
医生
E3:
主管
)
解析:
需要填写外部实体,外部实体为不属于软件本身但是又与当前软件有交互关系的外部的人、软件、硬件、组织结构、数据库系统等,在作答时需要细心地对每一个阅读到的外部实体(一般为名词)高度重视;
(2).使用说明中的词语,给出图1-2中的数据存储D1~D5的名称。
(分数:
5)
__________________________________________________________________________________________
正确答案:
(
D1:
通用信息表
D2:
预约表
D3:
医生列表
D4:
出诊时间表
D5:
药品库
)
解析:
考察数据存储文件,这需要对阅读到的“...文件”或“...表”等能够存储数据的媒介词汇高度重视。
(3).使用说明和图中术语,补充图1-2中缺失的数据流及其起点和终点。
(分数:
4)
__________________________________________________________________________________________
正确答案:
(
起点 终点 名称
P2 D4 删除解聘医生的出诊时间
P2 D2 删除解聘医生的预约数据
D5 P4 查询相关药品库存信息
P4 D2 更新预约表
D3 P5 医生或医生信息
)
解析:
不仅仅通过阅读文字描述来作答,同时也要使用父图与子图的数据守恒原则进行作答。
本题的文字描述中,共阐述了
(1)~(5)共5个系统必须要实现的功能模块,这些功能(动词描述)对应数据流图中的加工P1~P5。
由于需要找出图1-2中缺少的数据流,故建议边阅读文字描述,边对照图1-2以便找出其中缺少的数据流。
从描述"
(1)通用信息查询(对应加工P1)。
客户提交通用信息查询请求(可知实体‘客户’有数据流‘通用信息查询请求’流向加工‘通用信息查询’),查询通用信息表(可知存储文件‘通用信息表’有数据流‘通用信息’流向加工‘通用信息查询’),返回查询结果(可知加工‘通用信息查询’有数据流‘查询结果’流向实体‘客户’)。
",并对照图1-2中P1加工和E1实体处可知E1为实体"客户",D1为“通用信息表”。
此处通过对比,未发现缺少的数据流!
从描述“
(2)医生聘用(对应加工P2)。
医生提出应聘/辞职申请(可知实体‘医生’有数据流‘应聘/辞职请求’流向加工P2),交由主管进行聘用/解聘审批(可知加工P2有数据流“聘用申请”和“解聘申请”流向实体‘主管’,以便主管审批),更新医生表(可知加工P2有数据流流向存储文件‘医生表’,即D3),并给医生反馈聘用/解聘结果(可知加工P2有对应的数据流‘聘用反馈’和‘解聘反馈’流向实体‘医生’);删除解聘医生的出诊安排(可知应该有一条数据流由P2流向类似‘出诊安排表’的存储文件,此处缺少此数据流,打个标记,待确定‘出诊安排表’类似的文件后再补上)”。
阅读到此,可确定E2为“医生”,E3为“主管”,D3为“医生列表”,且找到一条缺少的数据流。
阅读描述“(3)预约处理(对应加工P3)。
医生安排出诊时间(对应图中E2流向P3的数据流‘出诊时间’),存入医生出诊时间表(对应图中P3流向D4的数据流‘新增出诊时间’,即D4为‘出诊时间表’);根据客户提交的预约查询请求(对应E1至P3的数据流‘预约查询请求’),查询在职医生(对应D3至P3的数据流‘在职医生列表’)及其出诊时间(对应D4至P3的数据流‘所需出诊时间’)等预约所需数据并返回(对应P3至E1的数据流‘预约所需数据’);创建预约,提交预约请求(对应E1至P3的数据流‘预约请求’),在预约表中新增预约记录(对应P3至D2的数据流‘新预约’,即D2为‘预约表’),更新所约医生出诊时间(对应P3至D4的数据流‘新增出诊时间’)并给医生发送预约通知(对应P3至E2的数据流‘预约通知’);给客户反馈预约结果(对应P3至E1的数据流‘预约反馈’)。
”。
到此得出D2为预约表,D3为“医生表”,D4为“出诊时间表”。
根据本段的分析加上之前标记缺少的数据流,可分析出缺少的数据流有两条,一条由P2流向D4,名称为“删除解聘医生的出诊时间”,另外一条由P2流向D2,名称为“删除解聘医生的预约数据”。
阅读描述“(4)药品管理(对应加工P4)。
医生提交处方(对应E2至P4的数据流‘处方’),根据药品名称从药品数据中查询相关药品库存信息(可知存储文件‘药品库’应有数量流‘查询相关药品库存信息’流向P4,图中未发现),开出药品,更新对应药品的库存(对应P4至D5的数据流‘更新的药品库存信息’,知D5为‘药品库’)以及预约表中的治疗信息(可分析出P4应有数据流‘更新预约表’流向D2,图中未发现);给医生发送“药品已开出”反馈(对应P4至E2的数据流‘药品已开出反馈’数据流)。
”。
到此,可分析出D5为“药品库”,且缺少P4至D2的数据流“更新预约表”和D5流向P4的数据流“查询相关药品库存信息”。
阅读描述“(5)报表创建(对应加工P5)。
根据主管提交的报表查询请求(报表类型和时间段)(对应E3至P4的数据流‘报表查询请求’),从预约数据(对应D2至P5的数据流‘预约数据’)、通用信息(对应D1至P5的数据流‘通用’)、药品库存数据(对应D5至P5的数据流‘药品库存数据’)、医生(对应D3至P5的数据流‘医生信息’,缺少)以及医生出诊时间(对应D4至P5的数据流‘出诊时间’)中进行查询,生成报表返回给主管(对应P5至E3的数据流‘报表’)。
”。
通过本段分析,发现缺少D3至P5的一条数据流,名称为“医生信息”。
通过仔细阅读“(3)预约处理„„给客户反馈预约结果”段落,其中“医生安排出诊时间,存入医生出诊时间表;”完全属于医生使用的功能“安排出诊时间”,而“根据客户提交的预约查询请求,查询在职医生及其出诊时间等预约所需数据并返回;创建预约,提交预约请求,在预约表中新增预约记录,更新所约医生出诊时间并给医生发送预约通知;给客户反馈预约结果。
”属于客户的“就诊预约”功能,故“预约处理”可以分解为“安排出诊时间”和“就诊预约”两个子加工。
在本题的分层数据流图中,图1-1是父图,图1-2是子图,在建模数据流图时应保持父图与子图的平衡,即父图中某加工的输入输出数据流必须与它的子图的输入输出数据流在数量和名字上相同,但如果父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流,而子图中组成这些数据流的数据项全体正好是父图中的这一个数据流,那么它们仍然算是平衡的。
(4).使用说明中的词语,说明“预约处理”可以分解为哪些子加工,并说明建模图1-1和图1-2是如何保持数据流图平衡。
(分数:
3)
__________________________________________________________________________________________
正确答案:
(
“预约处理”可以分解为子加工:
安排出诊时间、就诊预约。
在建模数据流图时应保持父图(图1-1)与子图(图1-2)的平衡,即父图中某加工的输入输出数据流必须与它的子图的输入输出数据流在数量和名字上相同,但如果父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流,而子图中组成这些数据流的数据项全体正好是父图中的这一个数据流,那么它们仍然算是平衡的。
)
解析:
阅读下列说明,回答下列问题,将解答填入答题纸的对应栏内。
【说明】
某海外代购公司为扩展公司业务,需要开发一个信息化管理系统。
请根据公司现有业务及需求完成该系统的数据库设计。
【需求描述】
(1)记录公司员工信息。
员工信息包括工号、身份证号、姓名、性别和一个手机号,工号唯一标识每位员工,员工分为代购员和配送员。
(2)记录采购的商品信息。
商品信息包括商品名称、所在超市名称、采购价格、销售价格和商品介绍,系统内部用商品条码唯一标识每种商品。
一种商品只在一家超市代购。
(3)记录顾客信息。
顾客信息包括顾客真实姓名、身份证号(清关缴税用)、一个手机号和一个收货地址,系统自动生成唯一的顾客编号。
(4)记录托运公司信息。
托运公司信息包括托运公司名称、电话和地址,系统自动生成唯一的托运公司编号。
(5)顾客登录系统之后,可以下订单购买商品。
订单支付成功后,系统记录唯一的支付凭证编号,顾客需要在订单里指定运送方式:
空运或海运。
(6)代购员根据顾客的订单在超市采购对应商品,一份订单所含的多个商品可能由多名代购员从不同超市采购。
(7)采购完的商品交由配送员根据顾客订单组合装箱,然后交给托运公司运送。
托运公司按顾客订单核对商品名称和数量,然后按顾客的地址进行运送。
【概念模型设计】
根据需求阶段收集的信息,设计的实体联系图(不完整)如图2-1所示。
【逻辑结构设计】
根据概念模型设计阶段完成的实体联系图,得出如下关系模式(不完整):
员工(工号,身份证号,姓名,性别,手机号)
商品(条码,商品名称,所在超市名称,采购价格,销售价格,商品介绍)
顾客(编号,姓名,身份证号,手机号,收货地址)
托运公司(托运公司编号,托运公司名称,电话,地址)
订单(订单ID,(a),商品数量,运送方式,支付凭证编号)
代购(代购ID,代购员工号,(b))
运送(运送ID,配送员工号,托运公司编号,订单ID,发运时间)(分数:
15)
(1).根据问题描述,补充图2-1的实体联系图。
(分数:
3)
__________________________________________________________________________________________
正确答案:
(
)
解析:
(2).补充逻辑结构设计结果中的(a)、(b)两处空缺。
(分数:
6)
__________________________________________________________________________________________
正确答案:
(
(a)运送方式、顾客编号、商品条码(b)订单ID
)
解析:
(3).为方便顾客,允许顾客在系统中保存多组收货地址。
请根据此需求,增加“顾客地址”弱实体,对图2-1进行补充,并修改“运送”关系模式。
(分数:
6)
__________________________________________________________________________________________
正确答案:
(
修改“运送”模式:
运送(运送ID,配送员工号,托运公司编号,订单ID,地址ID,发运时间)。
)
解析:
根据文字描述“(5)顾客登录系统之后„顾客需要在订单里指定运送方式:
空运或海运„”知关系模式“订单”缺少一属性“运送方式”,又由于将E-R图转换为关系模式时,E-R图中多对多的联系“订单”转换的关系二维表中需要将两端的实体“商品”和“顾客”的主键字段加入对应的二维表,故关系模式“订单”中还缺少“顾客编号”和“商品条码”两个属性,以实现关系模式的参照完整性,故空(b)为“运送方式、顾客编号、商品条码”。
根据文字描述“(6)代购员根据顾客的订单在超市采购对应商品,一份订单所含的多个商品可能由多名代购员从不同超市采购。
”知E-R图中“订单”与“代购员”之间是多对多的联系,此联系即为“代购”,将联系“代购”转换为关系模式时,为了实现参照完整性,需要将两端的主键字段加入对应的关系模式,故关系模式“代购”中缺少订单的主键“订单ID”,空(a)为“订单ID”。
阅读文字描述“(7)采购完的商品交由配送员根据顾客订单组合装箱(说明一个订单的所有商品整体打包运送,一个订单一个包一个配送员足够),然后交给托运公司运送。
托运公司按顾客订单核对商品名称和数量(说明一个订单一个包对应一个托运公司),然后按顾客的地址进行运送。
”可知,运送与实体“托运公司”、子实体“配送员”、“订单”之间有关联关系,配送员、托运公司、订单三者之间的关系为“1:
1:
*”,补充后的图2-1请参加【问题1】的参考答案。
为方便顾客,允许顾客在系统中保存多组收货地址,即属性“收货地址”变成了实体“顾客”的多值属性,为了避免数据冗余而带来的数据表的存储异常问题,可新增一弱实体“顾客地址”,其对强实体“顾客”有存在依赖关系,弱实体用双边框矩形表示(在E-R中的属性为“地址编号,收货地址”),其与强实体之间的联系用双线菱形表示,同时为了保证每个商品订单运送地址的唯一性,需要在E-R图中补充联系“运送”与“收货地址”的连接关系。
阅读下列说明,回答下列问题,将解答填入答题纸的对应栏内。
【说明】
某ETC(ElectronicTollCollection,不停车收费)系统在高速公路沿线的特定位置上设置一个横跨道路上空的龙门架(Tollgantry),龙门架下包括6条车道(Trafficlanes),每条车道上安装有雷达传感器(Radarsensor)、无线传输器(Radiotransceiver)和数码相机(DigitalCamera)等用于不停车收费的设备,以完成正常行驶速度下的收费工作。
该系统的基本工作过程如下:
(1)每辆汽车上安装有车载器,驾驶员(Driver)将一张具有唯一识别码的磁卡插入车载器中。
磁卡中还包含有驾驶员账户的当前信用记录。
(2)当汽车通过某条车道时,不停车收费设备识别车载器内的特有编码,判断车型,将收集到的相关信息发送到该路段所属的区域系统(Regionalcenter)中,计算通行费用,创建收费交易(Transaction),从驾驶员的专用账户中扣除通行费用。
如果驾驶员账户透支,则记录透支账户交易信息。
区域系统再将交易后的账户信息发送到维护驾驶员账户信息的中心系统(Centralsystem)
(3)车载器中的磁卡可以使用邮局的付款机进行充值。
充值信息会传送至中心系统,以更新驾驶员账户的余额。
(4)当没有安装车载器或者车载器发生故障的车辆通过车道时,车道上的数码相机将对车辆进行拍照,并将车辆照片及拍摄时间发送到区域系统,记录失败的交易信息;并将该交易信息发送到中心系统。
(5)区域系统会获取不停车收费设备所记录的交通事件(Trafficevents);交通广播电台(Trafficadvicecenter)根据这些交通事件进行路况分析并播报路况。
现采用面向对象方法对上述系统进行分析与设计,得到如表3-1所示的用例列表以及如图3-1所示的用例图和图3-2所示的分析类图。
表3-1 用例例表
用例名称
说明
Createtransaction
记录收费交易
Chargecard
磁卡充值
Underpaidtransaction
记录透支账户交易信息
RecordIllegaiuse
记录失败交易信息
Recordtrafficevent
记录交通事件
(分数:
15)
(1).根据说明中的描述,给出图3-1中A1~A4所对应的参与者名称。
(分数:
4)
__________________________________________________________________________________________
正确答案:
(
A1:
Centralsystem
A2:
Driver
A3:
Trafficadvicecenter
A4:
Trafficadvicecenter
(其中A1与A2可交换,A3与A4可交换)
)
解析:
(2).根据说明中的描述及表3-1,给出图3-1中U1~U5所对应的用例名称。
(分数:
5)
__________________________________________________________________________________________
正确答案:
(
U1:
Underpaidtransaction
U2:
Record Illegaluse
U3:
Createtransaction
U4:
Recordtrafficevent
U5:
Chargecard
(其中U1与U2可交换)
)
解析:
(3).根据说明中的描述,给出图3-2中C1~C6所对应的类名。
(分数:
6)
__________________________________________________________________________________________
正确答案:
(
C1:
Centralsystem
C2:
Tollgantry
C3:
Trafficlanes
C4:
Radarsensor
C5:
Radiotransceiver
C6:
DigitalCamera
(注意:
C4,C5,C6可交换)
)
解析:
本题考查面向对象分析与设计方法,UML是面向对象分析与设计过程中最常用的建模语言,关于面向对象分析与设计、及UML相关知识请参见比特培训相关课程。
本题的作答方式与试题一、试题二类似,比特建议先阅读问题,带着问题去阅读文字描述,然后边阅读、边对照UML图、边思考、边作答的方式能精准地定位答案。
文字描述“„在高速公路沿线的特定位置上设置一个横跨道路上空的龙门架(Tollgantry),龙门架下包括6条车道(Trafficlanes)(可知龙门架是整体类,车道是局部类,它们之间是组合的关联关系),每条车道上安装有雷达传感器(Radarsensor)、无线传输器(Radiotransceiver)和数码相机(DigitalCamera)等用于不停车收费的设备(可知车道是整体类,雷达传感器、无限传输器、数码相机是局部类,它们之间是组合关系。
),以完成正常行驶速度下的收费工作。
”,在对比图3-2知C2为龙门架“Tollgantry”,C3为车道“Trafficlanes”,C4为雷达传感器“Radarsensor”,C5为无线传输器“Radiotransceiver”,C6为数码相机“DigitalCamera”,其中C4、C5、C6可交换。
对于【问题2】,虽然本题并未明确要求使用英文类名作答,但由于图3-2中已有的类名为英文,故本题的答案建议写英文类名,当然,中文类名也不错。
从文字描述“
(2)当汽车通过某条车道时,不停车收费设备识别车载器内的特有编码,判断车型,将收集到的相关信息发送到该路段所属的区域系统(Regionalcenter)中,计算通行费用,创建收费交易(Transaction)„”可看出,车道“Trafficlanes”类(C3)与交易“Transaction”类是有关联关系的,这与图3-2中C3与类Transaction的“1:
*”的关系相符;同时也能看出一个区域系统(Regionalcenter)覆盖多个路段,而一个路段有多条车道(Trafficlanes),一个车道上方又安装有对应的龙门架,这与图3-2中类“Regionalcenter”和类“Tollgantry”的“1:
*”的关联关系相符。
“„计算通行费用,创建收费交易(Transaction),从驾驶员的专用账户中扣除通行费用。
如果驾驶员账户透支,则记录透支账户交易信息。
„”中“如果”两字表明系统在执行用例“记录收费交易(Createtransaction)”时,用例“记录透支账户交易信息(Underpaidtransaction)”有可能执行,也可能不执行。
这说明用例“Createtransaction”是被扩展用例,而“Underpaidtransaction”是扩展用例,再对照图3-1可知U3为“Createtransaction”,U1为“Underpaidtransaction”,注意,在用例的扩展关系中,箭头指向“被扩展”的用例。
通过“„区域系统再将交易后的账户信息发送到维护驾驶员账户信息的中心系统(Centralsystem)„”可知区域系统(Regionalcenter)与中心系统(Centralsystem)是多对1的关联关系,这与图3-2中C1处对比知C1为类“Centralsystem”。
通过以上分析,用例“记录收费交易(Createtra
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上半年 软件 设计师 考试 软件设计 应用技术