UML试题及答案 下载本文

一、选择题

1.类的结构是( )。(E) A.由代码来表示

B.由属性和关系来表示

E.选项B和C

C.由操作来表示

D.由对象的交互来表示

2.类的行为是( )。(A) A.由一组操作决定 D.由父类决定

3.顺序图反映对象之间发送消息的时间顺序,它与( )是同构的。(C) A.用例图

4.( )定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。(A) A.用例图

5.状态图包括( )。(E) A.类的状态

B.状态之间的转换

C.类执行的动作

B.类图

C.活动图

D.状态图

B.类图

C.协作图

D.状态图

B.由类的属性决定 E.选项A和B

C.对类的每一个对象唯一的

D.触发类的动作的事件

E.所有以上选项

6.下列属于状态的组成部分的有( AB )。 A.名称

7.下列各种图可用于静态建模的有( )。(B)

B.转移

C.条件

D.事件

A.状态图

B.类图 C.序列图 D.活动图

8.下列不属于属性的可见性的是( )。(C) A.公有的

9.下面不属于用况之间关系的是( )。(A) A.友元

10.通常对象有很多属性,下面仅能在对象内部访问的属性可见性限制是( )。(D)

A.公有的(public) B.受保护的(protected) D.私有的(private)

11.在用况之间,会有三种不同的关系,下列不是用况之间关系的是( )。(D)

A.包含(include) B.扩展(extend) D.关联(connect)

12.在ATM自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面不是“Actor”的是( )。(D) A.用户

13.下面不是活动图中的基本元素的是( )。(D) A.状态、分支

14.在下面的图例中,哪个用来描述活动(activity)( )。(A)

B.分叉、汇合

C.泳道、对象流

D.用况、状态

B.ATM取款机

C.ATM取款机管理员

D.取款

C.泛化(generalization)

C.友员(friendly)

B.扩展

C.包含

D.泛化

B.私有的

C.私有保护的 D.保护的

A B C D

15.UML中类的有三种,下面哪个不是其中之一() A.实体类

16.顺序图是强调消息随时间顺序变化的交互图,下面不是用来描述顺序图的组成部分的是( )。(E) A.类角色

17.关于协作图的描述,下列不正确的是( )。(D) A.协作图作为一种交互图,强调的是参加交互的对象的组织; B.在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成; C.协作图中有消息流的顺序号; D.协作图是顺序图的一种

18.关于包的描述,哪个不正确( E )

A.和其他建模元素一样,每个包必须有一个区别于其他包的名字; B.包中可以包含其他元素,比如类、接口、组件、用况等等; C.包的可见性分为:public、protected、private;

D.引入(import)使得一个包中的元素可以单向访问另一个包中的元素; E.导出(export)使的一个包中的元素可以单向访问另一个包中的元素;

B.生命线

C.激活期

D.消息

E.转换

B.边界类

C.控制类

D.主类

二、名词解释

(1)对象:对象是对象类的实例,用于模型化特定的实体。 (2)类: 是面向对象模型的最基本的模型元素; (3)属性:类的命名性质;

(4)操作:是对象类的行为特征或动态特征,用于对服务或实体相关的操作建模;

(5)关联:是模型元素间的一种语义联系,它是对具有共同的结构特征、行为特性、关系和语义的链接的描述

(6)泛化:是现实世界中一般性实体与特殊性实体之间的关系; (7)聚合:表示事物的部分/整体关系较弱的情况;

(8)依赖:是两个(或两组)模型元素间的语义联系,依赖是指一个模型元素的变化必影响到另一个模型元素;

(9)对象的激活期:表示对象执行一个动作的期间,也即对象激活的时间段; (10)组合状态:如果一个状态内嵌套了若干个状态,则称该状态为超状态或组合状态;

(11)历史状态:代表上次离开组合状态时的最后一个活动子状态;

(12)组件:是系统的物理的可替换的单位,它把系统的实现打包,并提供一组接口的实现。 三、简答题

1、简要回答UML提供了那些系统模型化功能

答:1、Use Case建模2、对象类和对象建模3、组件建模4、配置建模 2、什么是Use Case间的扩展关联关系?请举例说明。

答 :扩展关联的基本含义与泛化关联类似,但是对于扩展Use Case有更多的规则限制,即基本的Use Case必须声明若干个“扩展点”,而扩展Use Case只能在这些扩展点上增加新的行为。

3、什么是Use Case间的包含关联关系?请举例说明。

答:是指一个基本Use Case的行为包含了另一个Use Case的行为。 4、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请指出下面关系的类型,并采用UML符号表示这些关系。

(1) 在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是什么关系?

(2) 类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是什么关系?

(3) 接口及其实现类或构件之间是什么关系?

(4) 一个汽车有四个轮子,那么类“汽车”和“轮子”之间是什么关系? (5) 学生与研究生之间是什么关系?

5.在UML中的状态图、协作图、活动图、序列图在系统分析中各起到了什么作用?

6、用UML表示下列两种说法“人有头、手、脚和躯干”四个部分,“人有性别、出生日期、肤色、身高、体重”五种属性。 7活动图与交互图有什么区别和联系。 8、什么是包?那些模型元素可以组成包?

四、图解问答题

1、请参考下图,回答问题:

在上图中有几个参与者(或称活动者)?他们分别执行系统的那些功能?

2.、请参考下图,回答问题:

请仔细阅读上图,描述该图的基本含义。

3、请参考下图,回答问题:

在上图中“订货”和“顾客”是什么关系?“顾客”和“个人顾客”是什么关系?“VIP顾客”包含那些属性、那些操作?

4、请参考下图,回答问题:

图A.2 (1)图中的实体类为_____________________ (2)图中的控制类为______________________ (3)图中的边界类为_____________________

(4)“借书界面”类中的成员属性有____________________

5、请参考下图,回答问题:

该图中包含的状态分别那几个,请描述线程的基本运行过程。 6、请参考下图,回答问题:

请简述上图的含义,并说明“资源管理窗口”和“资源-技能”类至少应包含哪些操作。

7、请参考下图,回答问题:

请叙述上图所描述的消息交换过程,其中“电话交换中心”对象应具有的操作有哪些?

8、请参考下图,回答问题:

在该图中,有几种不同的责任?请指出顾客服务参与的活动,以及“填写订单”、“寄送发票”和“接收付款”三个活动间的关系。

10 选择 10 填空 5 多选 3简答

一.选择题

1、 下列描述中,哪个不是建模的基本原则() A.要仔细的选择模型

B.每一种模型可以在不同的精度级别上表示所要开发的系统 C.模型要与现实相联系

D.对一个重要的系统用一个模型就可以充分描述

2、 UML体系包括三个部分:UML基本构造块,()和UML公共机制 A、UML规则 B、UML命名

C、UML模型 D、UML约束

3、 UML中的事物包括:结构事物,分组事物,注释事物和() A、实体事物 B、边界事物 C、控制事物 D、动作事物

4、 ()模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题

A、瀑布模型 B、原型模型 C、增量模型 D、螺旋模型

5 下面哪个不是UML中的静态视图() A.状态图 B.用例图 C.对象图 D.类图

6()技术是将一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动。

A、泳道 B、分叉汇合 C、分支 D、转移

7下列关于状态图的说法中,正确的是( )

A. 状态图是UML中对系统的静态方面进行建模的五种图之一。 B. 状态图是活动图的一个特例,状态图中的多数状态是活动状态

C. 活动图和状态图是对一个对象的生命周期进行建模,描述对象随时间变化的行为。

D. 状态图强调对有几个对象参与的活动过程建模,而活动图更强调对单个反应型对象建模

8对反应型对象建模一般使用()图

A、状态图 B、顺序图 C、活动图 D、类图 9类图应该画在Rose的哪种()视图中

A、Use Case View B、Logic View C、Component View D、Deployment View 10类通常可以分为实体类,()和边界类 A、父类 B、子类 C、控制类 D、祖先类 11顺序图由类角色,生命线,激活期和()组成 A、关系 B、消息 C、用例 D、实体

12()是系统中遵从一组接口且提供实现的一个物理部件,通常指开发和运行时类的物理实现

A、部署图 B、类

C、接口 D、组件(接口实现类)

13关于协作图的描述,下列哪个不正确( )

A.协作图作为一种交互图,强调的是参加交互的对象的组织; B.协作图是顺序图的一种特例

C.协作图中有消息流的顺序号;

D.在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成;

14组件图用于对系统的静态实现视图建模,这种视图主要支持系统部件的配置管理,通常可以分为四种方式来完成,下面哪种不是其中之一( ) A.对源代码建模 B.对事物建模 C.对物理数据库建模 D.对可适应的系统建模

15一个对象和另一个对象之间,通过消息来进行通信。消息通信在面向对象的语言中即()

A、方法实现 B、方法嵌套 C、方法调用 D、方法定义

16()是可复用的,提供明确接口完成特定功能的程序代码块。 A、模块 B、函数 C、用例 D、软件构件

17若将活动状态比作方法,那么动作状态即()

A、方法名 B、方法返回值 C、方法体中的每一条语句 D、方法的可见性

18事件可以分为内部事件和外部事件。按下按钮和打印机的中断是()事件

A、内部事件 B、外部事件

19()是用于把元素组织成组的通用机制 A、包 B、类 C、接口 D、组件

20()是一组用于描述类或组件的一个服务的操作 A、包 B、节点 C、接口 D、组件

二.多择题

1.一个软件产品是否成功,因素有( )。 A 需求收集是否正确 B 体系结构的构建是否合理 C 测试是否完全 D 软件的管理

2.开发过程中最困难的一个环节是( )。 A .语言的学习 B. 技术难度

C . 人与人之间的交流 D.编程工具的掌握

3.当代软件工程的特点是( )。

A 允许各个阶段进行迭代 B 各个阶段没有明显的分界线

C 允许后期得到的信息返回,使得早期的能够被修改。 D 所有软件都能一次性开发完成

4.设计模式的基本要素有( )。 A 名称 B 目的(意图) C 解决方案

D 实施后达到的效果

5.面向对象系统中功能复用的两种最常用技术是( )。 A 对象组合(优先使用)

B 类继承(限制使用类继承)->产生类爆炸

C 过程化编程

D 方法的调用

三.填空题:

1.软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述 活动 ,也不描述 系统怎样开发 ,它只描述系统的 组成元素 及其相互的 交互协作 。

2.一个UML模型只描述了一个系统 要做什么 ,它并没告诉我们系统是 怎么做 。

3.接口是可以在整个模型中反复使用的一组行为,是一个没有 属性 而只有 方法 的类。

4.多重性指的是,某个类有 多个 个对象可以和另一个类的 1个 对象关联。

5.当一个类的对象可以充当多种角色时, 自身 关联就可能发生。 6.在泛化关系中, 子类 可以替代 父类 。也就是说,后者出现的地方,前者都可以出现。但是反过来却不成立。

7.最通常的依赖关系是一个类操作的 形构 中用到了 另一个类 的定义。

8.组成是 强类型 的聚集,因为聚集中的每个部分体只能属于 一个 整体。

9.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用 虚线 表示,继承关系用 实线 表示。

10.UML背后的两个重量级概念是 用例 和 面向对象 。

11.状态图和类图、顺序图不同之处在于,后两种图能够对 多个对象 建立模型,而状态图只是对 1个对象 建立模型。

12.状态图中3个常用的动作是 入口动作 、 出口动作 和 do动作,也就是对象处于这个状态时应该做什么 。

13.顺序图中,消息用 水平箭头线 表示;时间用 垂直虚线 表示。

14.当逻辑发生分支时,在顺序图中用 生命线发生的分支 表示,在协作图中用 嵌套的序号 表示。 15.顺序图强调的是交互的 时间顺序 ,协作图强调的是交互的 空间关系 和参与交互的对象的 上下文环境 。

16.GRAPPLE把开发过程分为5个 段 ,之中又由许多 动作 组成。

17.GRAPPLE过程中,得到初步类图是在 需求收集 段,细化类图是在 需求分析 段。

18.每一个设计模式都集中于一个特定的 设计问题 ,描述了 相互通信的对象或者

类 、 以及 解决方案 和 解决效果 。

19.面向对象系统中功能复用的两种最常用技术是 对象组合 和 类继承 。

20.设计模式中应优先使用 对象组合 而不是 类继承 。

四.简答题

1. 类图在UML中有何重要作用?

答 1.为开发人员提供这种模仿现实世界的表达方式。

2.让分析员使用客户所采用的术语和客户交流,促使客户说出所要解决的问题的重要细节。

2.阐述用例对于系统开发人员来说的价值。

是用来从用户的观察角度收集系统需求的一项技术,便于分析员与客户和用户交流,使系统更符合用户的需求

3.简述如何在实际工作中发现类。

答在与客户的交谈中,要注意客户用来描述业务实体的名词术语。这些名词可作为领域模型中的类。

还要注意你听到的动词,因为这些动词可能会构成这些类中的操作。

当得到一组类的核心列表后,应当向客户询问在业务过程中每个类的作用。他们的回答将告诉你这些类的职责。

4.简述怎样发现类之间的继承关系。

作为候选的类有可能和它的父类、子类在谈话中同时被发现。系统分析员意识到某个类的属性和操作也许能被运用到其他多个类当中去。

另一种可能的情况是系统分析员注意到两个或者多个类可能具有相同的属性和操作数

5.画出图形用户界面GUI的状态图,要包括屏幕保护状态。其中要表明相应的事件、动作。

答:图形用户界面(GUI)是一个可以说明状态转移细节的例子。在这里,假设GUI可以处于以下3种状态之一:

Initializing(初始化)。 Working(工作)。 Shut Down(关闭)。

当打开PC电源的时候,自启动发生。因此Turning the PC on(打开PC)是一个触发器事件,它导致了GUI的状态转移到Initializing状态,而Bootup(自启动)是一个在转移过程中执行的动作。

由于Initializing状态中活动的完成,GUI将转移进入Working状态。当你对PC选择ShutDown(关闭机器)时,就引发了Shut Down触发器事件,最后PC自己切断电源,整个过程结束。下面的状态图捕获了GUI的这些状态和转移。

6.顺序图和协作图中,消息有哪三种?各自的意义和表示什么? 答 消息可以是简单的(simple)、同步的(synchronous)或异步的

(asynchronous)。简单消息是从—个对象到另一个对象的控制流的转移。如果一个对象发送了—个同步消息,那么它要等待对方对消息的应答,收到应答后才能继续自己的操作。而发送异步消息的对象不需要等待对方的应答便可以继续自己的操作。在顺序图中,简单消息是—个简单箭头,同步消息是实心箭头。异步消息是—个半边箭头,