山东科技大学软件工程试卷 下载本文

3、(20分)(共15分)

【说明】 已知某唱片播放器不仅可以播放唱片,而且可以连接电脑并把电脑中的歌曲刻录到唱片上(同步歌曲)。连接电脑的过程中还可自动完成充电。

关于唱片,还有以下描述信息:

1.每首歌曲的描述信息包括:歌曲的名字、谱写这首歌曲的艺术家以及演奏这首歌曲的艺术家。只有两首歌曲的这三部分信息完全相同时,才认为它们是同一首歌曲。艺术家可能是一名歌手或一支由2名或2名以上的歌手所组成的乐队。一名歌手可以不属于任何乐队,也可以属于一个或多个乐队。

2.每张唱片由多条音轨构成;一条音轨中只包含一首歌曲或为空,一首歌曲可分布在多条音轨上;同一首歌曲在一张唱片中最多只能出现一次。

3. 每条音轨都有一个开始位置和持续时间。一张唱片上音轨的次序是非常重要的,因此对于任意一条音轨,播放器需要准确地知道,它的下一条音轨和上一条音轨是什么(如果存在的话)。

根据上述描述,采用面向对象方法对其进行分析与设计,得到了如表3-1所示的类列表、如图3-1所示的初始类图以及如图3-2所示的描述播放器行为的UML状态图。

表3-1 类列表 类 名 Artist 第 9 页/ 共 50 页

说 明 艺术家 Song Band Musician Track Album

图3-1 初始类图 歌曲 乐队 歌手 音轨 唱片 编写 1 演奏 0..* 0..* B (3) (4) 1 A C (1) (2) D E (5) (6) F

图3-2 播放器行为UML状态图

[问题1](3分)根据说明中的描述,使用表3-1给出的类的名称,给出图3-1中的A~F所对应的类。

[问题2](6分) 根据说明中的描述,给出图3-1中(1)~(6)处的多重度。

[问题3](4分)图3-1中缺少了一条关联,请指出这条关联两端所对应的类以及每一端的多重度。

第 10 页/ 共 50 页

类 多重度 [问题4](2分)根据图3-2所示的播放器行为UML状态图,给出从“关闭”状态到“播放”状态所经过的最短事件序列(假设电池一开始就是有电的)。

山东科技大学2011 —2012学年第二学期 《软件工程》考试试卷(B卷)参考答案及评分标准

一、填空题(每空1分,共10分) 1. 软件过程

2. 可重复级 已定义级 优化级 3. 白盒

4. CORBA COM 5. 算法

6. 变换型 事务型

二、选择题(每题2分,共20分)

D D D B C C A C D D

三、简答题。(4题,共20分) 1、(6分) 计算机系统工程、需求分析、设计、编码、测试、运行和维护…(每个1分,共6分) 2、(4分)

(1)统一建模语言……………………………………………………………………(1分) (2)基于构件的软件工程……………………………………………………………(1分) (3)能力成熟度模型…………………………………………………………………(1分) (4)面向对象分析……………………………………………………………………(1分) 3、(4分)

控制耦合………………………………………………………………………………(2分) 原因:一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能就是控制耦合。……………………………………………………………………………(2分) 4、(6分)

数据为中心的体系结构、数据流风格的体系结构、调用和返回风格的体系结构、面向对象风格的体系结构、层次式风格的体系结构。……………(每个2分,答对任意3个给满分)

第 11 页/ 共 50 页

四、应用题。(4题,共50分) 1、(20分)

① 被测模块的程序流程图如图所示。

被测模块的程序流程图

② 按照路径覆盖法设计测试用例如下:

是会员,累计消费900元, 覆盖路径127 是会员,累计消费2000元, 覆盖路径128 不是会员,累计消费80元, 覆盖路径134 不是会员,累计消费300元, 覆盖路径135 说明:(1)若不画流程图直接给出正确答案的给满分;(2)测试用例数据不同若达到同样效果则给相应分数。 2、(10分)

瀑布模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主要问题在于:

(1) 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量; (2) 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;

(3) 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。 快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。

显然,快速原型方法可以克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,具有显著的效果。 3、(20分)

第 12 页/ 共 50 页