软件设计师UML练习题和答案 下载本文

试题三(共15分)2007-11

阅读下列说明和图,回答问题1至问题4,将解答填入答题纸的对应栏内。 【说明】

已知某唱片播放器不仅可以播放唱片,而且可以连接电脑并把电脑中的歌曲刻录到唱片上(同步歌曲)。连接电脑的过程中还可自动完成充电。 关于唱片,还有以下描述信息:

1.每首歌曲的描述信息包括:歌曲的名字、谱写这首歌曲的艺术家以及演奏这首歌曲的艺术家。只有两首歌曲的这三部分信息完全相同时,才认为它们是同一首歌曲。艺术家可能是一名歌手或一支由2名或2名以上的歌手所组成的乐队。一名歌手可以不属于任何乐队,也可以属于一个或多个乐队。 2.每张唱片由多条音轨构成;一条音轨中只包含一首歌曲或为空,一首歌曲可分布在多条音轨上;同一首歌曲在一张唱片中最多只能出现一次。 3. 每条音轨都有一个开始位置和持续时间。一张唱片上音轨的次序是非常重要的,因此对于任意一条音轨,播放器需要准确地知道,它的下一条音轨和上一条音轨是什么(如果存在的话)。

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

表3-1 类列表

类 名 Artist Song Band Musician Track Album

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

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

【问题1】(3分)

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

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

图3-1中缺少了一条关联,请指出这条关联两端所对应的类以及每一端的多重度。

类 【问题4】(2分)

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

多重度 试题三 [问题1]

A:Artist B:Song C:Band D:Musician E:Track F:Album [问题2] (1) 0..* (2) 2..* (3)0..1 (4) 1..* (5) 1..* (6) 1 [问题3]

类 Track或E Track或E 【问题4】按任意键,选择歌曲

多重度 0..1 0..1