2015 上半年软件设计师考试真题及答案-下午卷
第 1 题 阅读下列说明和图,回答问题 1 至问题 4,将解答填入答题纸的对应栏内。
【说明】
某大学为进一步推进无纸化考试,欲开发一考试系统。系统管理员能够创建包括专业方向、
课程编号、任课教师等相关考试基础信息,教师和学生进行考试相关的工作。系统与考试有
关的主要功能如下。
(1)考试设置。教师制定试题(题目和答案),制定考试说明、考试时间和提醒时间等考试信
息,录入参加考试的学生信息,并分别进行存储。
(2)显示并接收解答。根据教师设定的考试信息,在考试有效时间内向学生显示考试说明和
题目,根据设定的考试提醒时间进行提醒,并接收学生的解答。
(3)处理解答。根据答案对接收到的解答数据进行处理,然后将解答结果进行存储。
(4)生成成绩报告。根据解答结果生成学生个人成绩报告,供学生查看。
(5)生成成绩单。对解答结果进行核算后生成课程成绩单供教师查看。
(6)发送通知。根据成绩报告数据,创建通知数据并将通知发送给学生;根据成绩单数据,
创建通知数据并将通知发送给教师。
现采用结构化方法对考试系统进行分析与设计,获得如图 1-1 所示的上下文数据流图和图
1-2 所示的 0 层数据流图。
1
问题:1.1 (2 分)
使用说明中的词语,给出图 1-1 中的实体 E1~E2 的名称。
问题:1.2 (4 分)
使用说明中的词语,给出图 1-2 中的数据存储 D1~D4 的名称。
2
问题:1.3 (4 分)
根据说明和图中词语,补充图 1-2 中缺失的数据流及其起点和终点。
问题:1.4 (5 分)
图 1-2 所示的数据流图中,功能(6)发送通知包含创建通知并发送给学生或老师。请分解图
1-2 中加工(6),将分解出的加工和数据流填入答题纸的对应栏内。(注:数据流的起点和终
点须使用加工的名称描述)
答案:1.1
E1:教师;
E2:学生。
解析:本题考查采用结构化方法进行系统分析与设计,主要考查数据流图(DFD)的应用, 是
比较传统的题目,与往年考点类似,要求考生细心分析题目中所描述的内容。
DFD 是一种便于用户理解、分析系统数据流程的图形化建模工具,是系统逻辑模型的重要组
成部分\上下文 DFD (顶层 DFD)通常用来确定系统边界,将待开发系统本身看作一个大的加
工(处理),然后根据谁为系统提供数据流,谁使用系统提供的数据流, 来确定外部实体。
建模出的上下文 DFD 中只有唯一的一个加工和一些外部实体,以及这两者之间的输入输出数
据流,。在上下文确定的系统外部实体以及与外部实体的输入输出数据流的基础上,建模 0
层 DFD,将上下文 DFD 中的加工进一步分解成多个加工, 识别这些加工的输入输出数据流,
使得所有上下文 DFD 中的输入数据流,经过这些加工之后变换成上下文 DFD 的输出数据流。
根据 0 层 DFD 中加工的复杂程度进一步建模加工的内容。
在建模分层 DFD 时,根据需求情况可以将数据存储建模在不同层次的 DFD 中,注意要在绘制
下层数据流图时要保持父图与子图平衡。父图中某加工的输入输出数据流必须与它的子图的
输入输出数据流在数量和名字上相同,或者父图中的一个输入(或输出) 数据流对应于子
图中几个输入(或输出)数据流,而子图中组成这些数据流的数据项全体正好是父图中的这
一个数据流。
本问题考査上下文 DFD,要求确定外部实体。考察系统的主要功能,不难发现,针对系统与
3
考试有关的主要功能,涉及到教师和学生,系统管理员不在与考试有关的主要功能中涉及,
另外没有提到其他与系统交互的外部实体。根据描述(1)中“教师制定试 题等考试信息”
等信息,描述(2)中“根据教师设定的考试信息,在考试有效时间内向学生显示考试说明和
题目”,从而即可确定 E1 为“教师”实体,E2 为“学生”实体。
答案:1.2
D1:试题(表)或题目和答案(表)
D2:学生信息(表)
D3:考试信息(秦)
D4:解答结果(表)
解析:本问题要求确定 0 层数据流图中的数据存储。分析说明中和数据存储有关的描述, 说
明中(1)中“教师制定试题(题目和答案),制定考试说明、考试时间和提醒时间等考试信
息,录入参加考试的学生信息,并分别进行存储”,可知 D1、D2 和 D3 为试题、 学生信息和
考试信息,再从图 1-2 中流入 D2 的数据流名称“学生信息数据”,确定 D2 是学生信息,流
入 D1 的数据流名称为“试题”,确定 D1 为试题,流入 D3 的数据流名称为考试信息,确定
D3 为考试信息。说明中(3)根据答案对接收到的解答数据进行处理,然后将解答结果进行
存储,确定 D4 是解答结果。参考其他描述中对数据存储的使用更多说明,进一步确定 D1〜
D4 满足上述分析。
答案:1.3
解析:本问题要求补充缺失的数据流及其起点和终点。通过不同层的 DFD 以及说明中描述和
4
图之间的对应#系加以确定。首先对照图 1-1 和图 1-2 的输入、输出数据流,发现数据流的
数量和名称均相同,所以,需进一步考查说明中的功能描述和图 1-1 中的数据流的对应关系,
以确定缺失的是加工之间还是加工与数据存储之间的数据流。
说明(2)显示并接收解答,需要“根据教师设定的考试信息,在考试有效时间内向学生显示
考试说明和题目”,对照图 1-2 可以看出,加工 2 缺少所要显示的题目的输入源,即缺失输
入流“题目”,题目存储于数据存储“试题”中,因此,缺少的数据流为从题目(D1)到加工
2 显示并接收解答的题目。说明(3)处理解答,需要“根据答案对 接收到的解答数据进行
处理”,对照图 1-2 可以看出,加工 3“处理解答”缺少输入流“答案”,而从说明(1)中可
以看出“答案”存储在试题(题目和答案)数据存储中(D1), 因此确定缺失的一条数据流
“答案”,从 D1 或试题到加工 3 或处理解答。
答案:1.4
分解为加工:发送通知和加工:创建通知
解析:
本问题考查建模分层 DFD 时的分解粒度。在说明(6)发送通知中,“根据成绩报告数据,创
建通知数据并将通知发送给学生;根据成绩单数据,创建通知数据并将通知发送给教师。”说
明功能(6)发送通知包含创建通知并发送给学生或老师。在图 1-2 中建模为一个加工,完成
的功能是依据不同的输入数据流创建通知,然后发送给相应的外部实体老师或学生,因此为
了进一步清晰每个加工的职责,需对图 1-2 中原有加工 6 进 行分解,分解为“创建通知”
和“发送通知”。创建通知针对输入数据流“报告数据”和 “成绩单数据”,这两条数据流
保持原有的起点,终点即为创建通知。创建通知产生出“通知数据' “通知数据”作为加工
“发送通知”的输入流,进一步根据通知数据是针对哪个外部实体而发送“通知”给相应的
学生或者教师。至此,对图 1-2 中原有加工 6 的分解完成。
5
第 2 题 阅读下列说明,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。
【说明】
某省针对每年举行的足球联赛,拟开发一套信息管理系统,以方便管理球队、球员、主教练、
主裁判、比赛等信息。
【需求分析】
(1)系统需要维护球队、球员、主教练、主裁判、比赛等信息。
球队信息主要包括:球队编号、名称、成立时间、人数、主场地址、球队主教练。
球员信息主要包括:姓名、身份证号、出生日期、身高、家庭住址。
主教练信息主要包括:姓名、身份证号、出生日期、资格证书号、级别。
主裁判信息主要包括:姓名、身份证号、出生日期、资格证书号、获取证书时间、级别。
(2)每支球队有一名主教练和若干名球员。一名主教练只能受聘于一支球队,一名
球员只能效力于一支球队。每支球队都有自己的唯一主场场地,且场地不能共用。
(3)足球联赛采用主客场循环制,一周进行一轮比赛,一轮的所有比赛同时进行。
(4) 一场比赛有两支球队参加,一支球队作为主队身份、另一支作为客队身份参与
比赛。一场比赛只能有一名主裁判,每场比赛有唯一的比赛编码,每场比赛都记录比分和日
期。
【概念结构设计】
根据需求分析阶段的信息,设计的实体联系图(不完整)如图 2-1 所示。
【逻辑结构设计】
根据概念结构设计阶段完成的实体联系图,得出如下关系模式(不完整):
球队(球队编号,名称,成立时间,人数,主场地址)
球员(姓名,身份证号,出生日期,身高,家庭住址, (1) )
主教练(姓名,身份证号,出生日期,资格证书号,级别, (2) )
6
主裁判(姓名,身份证号,出生日期,资格证书号,获取证书时间,级别)
比赛(比赛编码,主队编号,客队编号,主裁判身份证号,比分,日期)
问题:2.1 (6 分)
补充图 2-1 中的联系和联系的类型。
图 2-1 中的联系“比赛”应具有的属性是哪些?
问题:2.2 (4 分)
根据图 2-1,将逻辑结构设计阶段生成的关系模式中的空(1)~(2)补充完整。
问题:2.3 (5 分)
现在系统要增加赞助商信息,赞助商信息主要包括赞助商名称和赞助商编号。
赞助商可以赞助某支球队,一支球队只能有一个赞助商,但赞助商可以赞助多支球队。赞助
商也可以单独赞助某些球员,一名球员可以为多个赞助商代言。请根据该要求,对图 2-1
进行修改,画出修改后的实体间联系和联系的类型。
答案 2.1
比赛联系应具有的属性包括:比赛编码,比分,日期。
解析:本题考查数据库概念结构设计及向逻辑结构转换的掌握。
7
此类题目要求考生认真阅读题目,根据题目的需求描述,给出实体间的联系。
根据题意由“一名球员只能效力于一支球队”可知球队和球员之间为 1:*联系。由“一场比
赛有两支球队参加,一支球队作为主队身份、另一支作为客队身份参与比赛”可知球队分别
按照“主队”和“客队”两种角色参与“比赛”的联系。“比赛”应具有的属性:比赛编码,
出分和日期。
答案 2.2
(1)球队编号;
(2)球队编号。
解析:根据问题 1 分析可知球队和球员之间为 1:*联系,所以在球员关系里应该包括球队的
主键,即“球队编号”。根据“每支球队有一名主教练,一名主教练只能受聘于一支球队”
可知球队和教练之间为 1:1 联系,而球队关系已经给定,所以需要在主教练关系中包含球队
的主键,即“球队编号”。
答案 2.3
解析:根据题意由“赞助商可以赞助某支球队,一支球队只能有一个赞助商,但赞助商可以
赞助多支球队”可知赞助商和球队之间为 1:*联系。由“赞助商也可以单独赞助某些球员,
一名球员可以为多个赞助商代言”可知赞助商和球员之间为联系。
8