1、面向对象技术练习试卷 1及答案与解析 1 在关于用例 (use case)的描述中,错误的是 _。 ( A)用例将系统的功能范围分解成许多小的系统功能陈述 ( B)一个用例代表了系统的一个单一的目标 ( C)用例是一个行为上相关的步骤序列 ( D)用例描述了系统与用户的交互 2 当 _时,用例是捕获系统需求最好的选择。 ( A)系统具有很少的用户 ( B)系统具有很少的接口 ( C)系统算法复杂,功能单一 ( D)系统有很多参与者 3 现有两个用例 UC1和 UC2。其中 UC2是一个完整 的用例,可被实例化,而 UC1需要 UC2中的事件流才可被实例化,且 UC1指定了使用 UC2的精确位置
2、,则UC1和 UC2间的关系是 “_”。 ( A) include ( B) extend ( C) generalize ( D) call 4 下列关于 UML叙述正确的是 _。 ( A) UML是一种语言,语言的使用者不能对其扩展 ( B) UML仅是一组图形的集合 ( C) UML仅适用于系统的分析与设计阶段 ( D) UML是独立于软件开发过程的 5 用例从用户角度描述系统的行为。用例之间 可以存在一定的关系。在 “某图书馆管理系统 ”用例模型中,所有用户使用系统之前必须通过 “身份验证 ”。 “身份验证 ”可以有 “密码验证 ”和 “智能卡验证 ”两种方式。 “身份验证 ”、 “密
3、码验证 ”和 “智能卡验证 ”之间是 _关系。 ( A)关联 ( B)包含 ( C)扩展 ( D)泛化 6 采用 UML分析用户需求时,用例 UC1可以出现在用例 UC2出现的任何位置,那么 UC1和 UC2之间的关系是 _。 ( A) include ( B) extend ( C) generalize ( D) call 7 UML用 例图展示了各类 actor与系统所提供的用例之间的连接。在银行储蓄管理信息系统中,不属于外部 actor的是 _。 ( A)存折和存取款单 ( B)银行工作人员 ( C)储蓄客户 ( D)储蓄机 8 以下关于 UML文档的叙述中,正确的是 _。 ( A)描
4、述了面向对象分析与设计的结果 ( B)指导开发人员如何进行面向对象设计 ( C)给出了软件的开发过程和设计流程 ( D)指导开发人员如何进行面向对象分析 9 在 UML中, _把活动图中的活动划分为若干组,并将划分的组指定给对象,这 些对象必须履行该组所包括的活动,它能够明确地表示哪些活动是由哪些对象完成的。 ( A)组合活动 ( B)同步条 ( C)活动 ( D)泳道 10 在较高的抽象层次上,传统的程序流程图与 UML中活动图最根本的区别在于_。 ( A)程序流程图明确地指定了每个活动的先后顺序,而活动图仅描述了活动和必要的工作顺序 ( B)活动图不提供循环控制结构,而程序流程图提供 (
5、C)活动图不能表示并发活动,而程序流程图可以表示并发活动 ( D)两者采用不同的图形符号系统 11 协作图主要描述对象间的交互与连 接,它 _。 ( A)能够表示消息的顺序和嵌套关系 ( B)能够表示消息的顺序关系,但不能表示消息的嵌套关系 ( C)能够表示消息的嵌套关系,但不能表示消息的顺序关系 ( D)既不能表示消息的顺序关系,也不能表示消息的嵌套关系 12 在 UML的动态建模机制中, _描述了对象之间动态的交互关系,还描述了交互的对象之间的静态链接关系,即同时反映系统的动态和静态特征。 ( A)状态图 (State Diagram) ( B)序列图 (Sequence Diagram)
6、 ( C)协作图 (Collaboration Diagram) ( D)活动图 (Activity Diagram) 13 在 UML中的状态图和活动图的叙述中, _是错误的。 ( A)状态图和活动图都是对系统的动态方面进行建模的图 ( B)活动图是状态图的一种特殊情况,其中所有或大多数状态是活动状态 ( C)状态图显示从状态到状态的控制流,活动图显示的是从活动到活动的控制流 ( D)在对一个对象的生存期建模时,只能使用状态图 14 UML的状态图展示了一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态间的转移 (transition)。如果一个并发的状态由 m个并发的子状态图组
7、成,那么该并发状态在某时刻的状态由 _个子状态图中各取一个状态组合而成。 ( A)任意一 ( B)任意两 ( C)每一 ( D)任意 n(nm) 15 在使用 UML建模时,通常采用 “ 描述需求 构造系统结构 描述系统行为 ”的设计步骤。其中, UML结构包括了基本构造块、公共机制和 _。 ( A)把这些构造块放在一起的规则 ( B)类与对象的划分、接口与实现的分离 ( C)描述系统细节的规格说明 ( D)构造块的特性描述 16 用 UML建立业务模型是理解企业业务过程的第一步。使用活动图 (activity diagram)可显示业务工作流的步骤、决策点,以及完成每一步骤的角色和对象。它强
8、调 _。 ( A)上下层次关系 ( B)时问和顺序 ( C)对象间的迁移 ( D)对象间的控制流 17 在 UML所提供的扩展机制中,标记值 (Tagged values)扩展了 UML_。 ( A)语境,允许创建新的构造块 ( B)词汇,允许创建新的构造块 ( C)构造块的特性,允许创建详述元素的新信息 ( D) 构造块的语义,允许增加新的规则或修改现有的规则 18 在使用 UML建模时,序列图展现了一组对象和由这组对象收发的消息,该图的特点是 _。 ( A)强调对象行为的事件顺序,常用于对反应式系统建模 ( B)本质上是一个状态图,显示从活动到活动的信息流的状态迁移 ( C)为每个路径标上
9、顺序号,为标明每个消息的时间顺序而给消息加数字前缀 ( D)有生命线及控制焦点,用于按时间顺序对控制流建模 19 在 UML建模过程中,对象行为是对象问为完成某一目的而进行的一系列消息交换。若需要描述跨越多个用例的单个 对象的行为,使用 _是最为合适的。 ( A) Statechart Diagram ( B) Interactive Diagram ( C) Activity Diagram ( D) Collaboration Diagram 20 对于如图 1-4所示的 UML类图,正确的描述是 _。( A)类 O的实例中包含了对类 P的实例的引用 ( B)类 O的实例中包含了对类 Q的
10、实例的引用 ( C)类 P的实例中包含了对类 O的实例的引用 ( D)类 P的实例中包含了对类 Q的实例的引用 20 在用例建模的过程 中,若几个用例执行了同样的功能步骤,这时可以把这些公共步骤提取成独立的用例。这种用例称为 (1)。在 UML的用例图上,将用例之间的这种关系标记为 (2)。 21 (1) ( A)扩展用例 ( B)抽象用例 ( C)公共用例 ( D)参与用例 22 (2) ( A) association ( B) extends ( C) uses ( D) inheritances 22 在 UML的通用机制中, (1)用于把元素组织成组; (2)是系统中遵从一组接口规范
11、且付诸实现的物理的、可替换的软件模块。 23 (1) ( A)包 ( B)类 ( C)接口 ( D)构件 24 (2) ( A)包 ( B)类 ( C)接口 ( D)构件 24 在面向对象分析过程中,用概念模型来详细描述系统的问题域,用 (1)来表示概念模型;用 (2)来描述对象行为。 25 (1) ( A)序列图 ( B)类图 ( C)协作图 ( D)用例图 26 (2) ( A)序列图和协作图 ( B)用例图和活动图 ( C)状态图和活动图 ( D)用例图和构件图 26 UML提供了 4种结构图用于对系统的静态方面进行可视化、详述、构造和文 档化。其中 (1)是面向对象系统建模中最常用的图
12、,用于说明系统的静态设计视图;当需要说明系统的静态实现视图时,应该选择 (2);当需要说明体系结构的静态实施视图时,应该选择 (3)。 27 (1) ( A)构件图 ( B)类图 ( C)对象图 ( D)部署图 28 (2) ( A)构件图 ( B)协作图 ( C)状态图 ( D)部署图 29 (3) ( A)协作图 ( B)对象图 ( C)活动图 ( D)部署图 29 UML提供了 5种对系统动态方面建模的图,其中 (1)对系统行为组织和建模; (2)对 系统功能建模,它强调对象之间的控制流; (3)之间是同构的。 30 (1) ( A)用例图 ( B)序列图 ( C)协作图 ( D)状态图
13、 31 (2) ( A)用例图 ( B)活动图 ( C)状态图 ( D)序列图 32 (3) ( A)状态图和活动图 ( B)用例图和活动图 ( C)序列图和仂、作图 ( D)活动图和协作图 面向对象技术练习试卷 1答案与解析 1 【正确答案】 D 【试题解析】 用例 (use case)用来描述系统在对事件做出响应时所采取的行动,即它确定了一个与系统参 与者进行交互、并由系统执行的动作序列。可见,一个用例本身并不是一个功能需求,它代表了系统的一个单一的目标,是一个行为上相关的步骤序列。 本试题选项 D所描述的范围太广,不够准确。在 UML规范中,参与者是指系统所涉及到的人,或者是用户在本系统
14、中扮演的角色。一个参与者总是在系统的自动化边界之外。 解答此类试题的一般思路是理解用例的基本概念。 【知识模块】 面向对象技术 2 【正确答案】 D 【试题解析】 用例 (use case)描述了一个与系统参与者进行交互、并由系统执行的动作序列 。它是开发者与用户交流的工具,可用来定义系统的边界。当所开发的系统有很多参与者时,用例是捕获系统需求的最好选择。 解答此类试题的一般思路是理解用例的应用场合。 【知识模块】 面向对象技术 3 【正确答案】 A 【试题解析】 注意本试题描述中的用词 “精确位置 ”,说明用例 UC1对用例 UC2的实现很重要。由试题的关键信息 “UC1需要 UC2中的事件
15、流才可被实例化 ”可知,作为一个完整的用例的 UC2实现了用例 UC1的部分功能。因此,应该使用包含 (include)关系来表示用例 UC1和 UC2之间的 关系。 如果一个用例明显混合了两种 (或两种以上 )的不同场景,即在具体情况可能发生多种活动,可将这个用例分为一个主用例和一个或多个辅助用例时,可以使用选项 B的扩展关系 (extend)来表示用例问的关系。 选项 C的 “generalize”在 UML可解释成 “泛化 ”;选项 D的 “call”可解释成 “调用 ”。 解答此类试题的一般思路是消化和理解用例问各种关系的基本概念。 【知识模块】 面向对象技术 4 【正确答案】 D 【
16、试题解析】 UML是一种图形语言,用户可对该语言进行扩展 ,它贯穿于系统开发的整个生命周期,并且可独立于系统的开发过程。 解答此类试题的一般思路是记忆。 【知识模块】 面向对象技术 5 【正确答案】 D 【试题解析】 通常在用例图中可使用关联 (Association)、包含 (include)、扩展(extend)和泛化 (Generalization)等 4种关系。 当参与者与用例之间进行交互时,用例和参与者之间拥有选项 A的 “关联 ”关系。 在一个复杂系统中,不同的用例之间可能存在一些相同的行为,可将这些相同的行为提取出来单独组成 一个用例。当其他用例使用该用例时,用例之间便形成了选项
17、 B的 “包含 ”关系。 在用例的执行过程中,可能会出现异常行为,也可能会在不同的流程分支中选择执行。这时可以将异常行为或可选分支抽象成一个单独的扩展用例,它与主用例之间形成选项 C的 “扩展 ”关系。 选项 D的 “泛化 (Generalization)”关系是描述用例之间一般与特殊关系的,不同的子用例代表了父用例的不同实现方法。 “密码验证 ”、 “智能卡验证 ”是 “身份验证 ”两种不同的实现方法。它们与 “身份验证 ”之间是泛化关系。 【知识模块】 面向对 象技术 6 【正确答案】 C 【试题解析】 用例之间的泛化关系类似于类之间的泛化关系。子用例继承父用例的行为与含义。子用例还可以增
18、加或者覆盖父用例的行为。子用例可以出现在父用例出现的任何位置。 本试题中,用例 UC1可以出现在用例 UC2出现的任何位置,那么 UC1与 UC2之间是选项 C的 “泛化 (Generalization)”关系。注意,不是 “用例 UC1可以出现在用例 UC2的任何位置 ”。 选项 A的 “包含 (include)”关系,表示基础用例在它内部,说明某一位置上显式的合并是另一个用例 的行为。被包含用例从不孤立存在,仅作为某些包含它的更大的基础用例的一部分出现。 选项 B的 “扩展 (extend)”关系,表示基础用例在延伸用例间的一个位置上,隐式合并了另一个用例的行为。基础用例可以单独存在,但是
19、在一定的条件下,它的行为可以被另一个用例的行为延伸。 选项 D的 “call”可解释成 “调用 ”。 【知识模块】 面向对象技术 7 【正确答案】 A 【试题解析】 在 UML用例图中,外部行为者 (actor)是指那些可能使用用例的人或外部系统。在银行储蓄管理系统中,银行工作人 员、储蓄客户、储蓄机均可能使用该信息系统中的某些用例。因此,它们都是该信息系统的外部行为者(actor)。 【知识模块】 面向对象技术 8 【正确答案】 A 【试题解析】 UML文档仅是设计者与开发人员采用 UML语言进行系统分析与设计的结果,并没有给出如何进行系统开发和采用哪种开发流程,它也不指导开发人员如何进行面
20、向对象设计。 【知识模块】 面向对象技术 9 【正确答案】 D 【试题解析】 在 UML模型图中, “活动图 ”是一种特殊的状态图,它强调对象问的控制流,用于描述满足用例要求所需进行的活动以及各活动间的约束关系 (有利于并行活动的识别 )。可见,活动图由各种动作状态构成,每个动作状态包含可执行动作的规范说明。 在活动图中,泳道用于说明一个个活动轨迹,即每个活动都明确归属于某个泳道。绘图活动图时,泳道用矩形框来表示,矩形框内填入具体活动的名称,矩形框的顶部填写负责该活动的对象名。例如,图 1-3示意了某门禁系统活动图中开锁活动的一个泳道。 【知识模块】 面向对象技术 10 【正确答案】 A 【试
21、题解析】 通常,传统的程序流程图简明扼要地表达出,完成某个给定问题的确定算法的逻辑操作过程,其条件行为用分支与合并来描述。 在 UML模型图中, “活动图 ”是状态机的一种特殊情况,它强调对象间的控制流,它既支持条件行为,也支持并发行为 (用分岔与汇合来描述 )。因此,可以较容易地判断选项 C的描述是错误的,即活动图支持并发活动,而程序流程图一般限于顺序进程。选项 B、 D的描述不是程序流程图与活动图的本质区别。 【知识模块】 面向对象技术 11 【正确答案】 A 【 试题解析】 协作图是一种 UML行为类模型图,可用它描述一组对象及其相互间的连接,以及这组对象收发的消息。它强调收发消息对象的
22、结构组织,即强调上下层次关系。它按组织结构对控制流建模,并能够通过消息编号来表示消息的顺序和嵌套关系。 【知识模块】 面向对象技术 12 【正确答案】 C 【试题解析】 本试题的 4个选项均是 UML行为类动态模型图。其中,协作图可用于描述对象之间动态的交互关系以及交互对象之间的静态链接关系,即协作图能同时反映系统的动态和静态特征。它强调收发消息对象的结构组织,即强调上下层 次关系。它按组织结构对控制流建模,并能够通过消息编号来表示消息的顺序和嵌套关系。 状态图展示了一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态问的转移。可用它描述使用用例的生命周期,也可用它说明系统的动态视图
23、。它对于接口、类或协作的行为建模尤为重要。 序列图展现了一组对象和由这组对象收发的消息,用于按时问顺序对控制流建模,也用它说明系统的动态视图。它强调的是时间和顺序。 活动图是一种特殊的状态图,它描述了需要做的活动,执行这些活动的顺序以及工作流。它强调对象问的控制流。 【知识模块】 面向对象技术 13 【正确答案】 D 【试题解析】 “状态图 ”描述了一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态间的转移。它强调单个对象按事件次序发生的行为,但不适合描述若干协作对象的行为。 “活动图 ”是一种特殊的状态图,描述需要做的活动,执行这些活动的顺序,以及工作流 (完成工作所需要的步骤
24、)。它强调对象间的控制流。 UML的行为类模型图用于描述系统动态行为的各个方面,包括用例图、序列图、协作图、状态图和活动图等。可见,在对一个对象的生存期 建模时,不仅仅只能使用状态图。 【知识模块】 面向对象技术 14 【正确答案】 C 【试题解析】 UML的状态图指明了对象所有可能的状态,以及状态间的迁移(transition)。一个状态图描述了一个状态机,一个父状态图可以由若干个并发执行的子状态图来描述。如果一个状态由 m个并发执行的子状态图组成,那么该并发状态在某时刻的状态,由每一个子状态图中各取一个状态组合而成。 【知识模块】 面向对象技术 15 【正确答案】 A 【试题解析】 在使用
25、 UML构造系统的结构,就是根据应用需 求建立系统静态模型的过程。 UML结构包括了基本构造块、公共机制和支配这些构造块放在一起的规则。其中,基本构造块主要有 事物、 关系和 图;公共机制主要有 详细说明、 修饰、 通用划分和 扩展机制 (构造型、约束、标记值等 )。 UML用于描述事物的语义规则有: 为事物、关系、图命名; 给出某事物特定含义的语境; 怎样使用或看见名字; 事物如何正确、一致地相互联系; 运行或模拟动态模型的含义是什么。 【知识模块】 面向对象技术 16 【正确答案】 D 【试题解析】 用 UML建立业务模型是理解业务过程 的第一步。使用活动图可表示企业业务的工作流。这种 U
26、ML图显示工作流中的步骤、决策点,以及完成每一步骤的角色和对象。它强调对象间的控制流,是一种特殊的状态图 (statechart diagram)。 在 UML模型图中,协作图 (collaboration diagram)按组织结构对控制流建模,它强调上下层次关系。序列图 (sequence diagram)用于按时问顺序对控制流建模,它强调的是时间和顺序。 【知识模块】 面向对象技术 17 【正确答案】 C 【试题解析】 UML结构包括了 基本构造块、公共机制和支配这些构造块放在一起的规则。其中,公共机制主要有 详细说明、 修饰、 通用划分和 扩展机制。 UML提供了构造型、约束、标记值等
27、 3种嵌入的扩展机制。 UML所提供的扩展机制中,构造型 (Stereotype)扩展了 UML的词汇,允许创建新的构造块,它是 UML中最重要的扩展机制;约束 (Constraint)是对构造块的语义的限制,它允许增加新的规则或修改现有的规则;标记值 (Tagged values)扩展了UML构造块的特性,允许创建详述元素的新信息。 【知识模块】 面向对象 技术 18 【正确答案】 D 【试题解析】 在 UML建模过程中,对象行为是通过交互来实现的,即是对象间为完成某一目的而进行的一系列消息交换。消息序列可用序列图 (sequence diagram)和协作图 (collaboration
28、diagram)这两种图来表示。序列图强调消息的时间顺序,该图的特点是有生命线及控制焦点;协作图强调参加交互的对象的组织结构 (静态链接关系 )。 序列图和协作图统称为交互图 (Interactive diagram),即这两种图是同构的,是可以互相转换。它展现了各个 对象如何依据某种行为进行相互协作。 【知识模块】 面向对象技术 19 【正确答案】 A 【试题解析】 对于选项 A的状态图 (Statechart Diagram),展示了一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态间的转移。若需要描述跨越多个用例的单个对象的行为,使用它是最合适的。 对于选项 B的交互图 (:
29、 Interactive Diagram),它是序列图 (Sequence Diagram)和协作图的统称。它展现了各个对象如何依据某种行为进行相互协作。 对于 选项 C的活动图 (Activity Diagram),是一种特殊的状态图,它用于描述需要做的活动、执行这些活动的顺序以及工作流。它强调对象问的控制流。 对于选项 D的协作图 (collaboration diagram),描述对象之间动态的交互关系以及交互对象之间的静态链接关系。它强调收发消息对象的结构组织 (上下层次关系 )。 【知识模块】 面向对象技术 20 【正确答案】 C 【试题解析】 在图 1-4所示的 UML类图中,带箭
30、头方向的实线 “ ”表示类O、 P(既可以是相同类也可以是不同类 )之间存 在关联关系。根据图中的箭头走向可知,导航方向是 PO ,说明可以从类 P的实例导航到类 O的实例,因此在类 P中必然包含一个对类 O的实例的引用。在图 1-4中, “-Q”表示的是关联一端的角色名称。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 21 【正确答案】 B 【知识模块】 面向对象技术 22 【正确答案】 C 【试题解析】 用例 (use case)描述了一个与系统参与者进行交互、并由系统执行的动作序列。 UML规范提供了用例之间包含 (include)、扩展 (extend)和 泛化(gener
31、alization)等 3种相关性的关系,各种关系功能及区别见表 1-2。由以上分析可知,抽象用例是从几个执行相同功能步骤的用例中,将公共步骤提取而成的独立用例。可见抽象用例代表某种形式的 “复用 ”,它是降低用例之间冗余的一种工具。例如,在一个 “订单输入子系统 ”中,创建新订单和更新订单都需要核查用户帐号是否正确。那么,用例 “创建新订单 ”、 “更新订单 ”与用例 “核查客户帐号 ”之间是一种包含 (include)关系。 对于选项 A的 “关联 (Association)”是两个或多个特定类之间的关系,它描述了这 些类元的实例的联系。选项 D的 “继承(inheritances)”描述
32、了子用例与父用例之间的一般关系。 解答此类试题的一般思路是识记用例的 3种关系。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 23 【正确答案】 A 【知识模块】 面向对象技术 24 【正确答案】 D 【试题解析】 在 UML规范中,将包定义为用于把元素组织成组的通用机制。包含其他元素,如类、接口、构件、节点、协作、用例、图及其他的包。 UML中的构件是遵从一组接口并提供一组接口的实现,是组成 事物的元素。它是可付诸实现物理的、可替换的软件模块。可见,包是一个构件的抽象化的概念,是把类元按照一定的规则分成组 (或称为模块 )。 解答此类试题的一般思路是识忆。 【知识模块】 面向对象
33、技术 【知识模块】 面向对象技术 25 【正确答案】 B 【知识模块】 面向对象技术 26 【正确答案】 C 【试题解析】 在问题 (13)描述中, “问题域 ”是指与所设计的系统要解决的问题的事物或概念的领域。建立概念模型也称为问题域建模,即找出代表所设计系统要解决的问题的 “对象 ”,它展 示该系统是什么或做什么,它独立于任何技术实现来描述系统,从而说明系统的本质。 对于问题 (13)的选项 B“类图 ”,它是统一建模语言 (UML)的一种结构类模型图,它可描述系统中类的静态结构,可以用它来表示概念模型,展示出一组相关的类、接口和协作及它们间的关系。选项 A的 “序列图 ”是 UML的一种
34、行为类模型图,可用它来说明系统的动态视图;选项 C的 “协作图 ”也是一种 UML行为类模型图,可用它描述一组对象及其相互间的连接,以及这组对象收发的消息;选项 D的 “用例图 ”也是一种 UML行为类模型图,可用它描述一组用例 、用户以及它们间的关系。 对比问题 (13)、 (14)各 4个选项可知,问题 (14)选项 B的 “活动图 ”是一种特殊的状态图,描述需要做的活动、执行这些活动的顺序及工作流 (完成工作所需要的步骤 )。它强调对象间的控制流。选项 C的 “状态图 ”描述了一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态间的转移。它强调单个对象按事件次序发生的行为,但不
35、适合描述若干协作对象的行为。选项 D的 “构件图 ”是一种UML结构类模型图,它描述了代码构件的物理结构及各构件之间的依赖关系,主要用于对源代码、可执行发布、物理数 据库和可调整的系统建模。综上所述,问题 (14)正确答案是选项 C。 解答此类试题的一般思路是识记各种 UML模型图的基本功能。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 27 【正确答案】 B 【知识模块】 面向对象技术 28 【正确答案】 A 【知识模块】 面向对象技术 29 【正确答案】 D 【试题解析】 在 UML视图中,主要有 用况视图、 逻辑视图、 组件视图、 并发视图和 部署视图等类型。它们各自的说明、
36、组成和使用者见表 1-5。 在面向对象系 统建模过程中,通常用概念模型来详细描述系统的问题域。类图用于描述系统的静态结构化设计,即用来表示概念模型,它最基本的元素是类或接口,表达了类、接口以及它们之间的静态结构和关系。因此,问题 (17)的正确答案是选项 B的 “类图 ”。 注意到本试题讨论的是与 “系统的静态方面 ”相关的主题,因此可先排除描述系统动态行为的 “协作图 ”、 “状态图 ”、 “活动图 ”的选项,即排除问题 (18)的 B、 C选项和问题 (19)的 A、 C选项。 由表 1-5可知,构件图可用于描述系统实现模块以及它们之间的依赖关系,即可说明系统的静态实现视图。部署图 可用于
37、说明体系结构的静态实施视图。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 30 【正确答案】 C 【知识模块】 面向对象技术 31 【正确答案】 B 【知识模块】 面向对象技术 32 【正确答案】 C 【试题解析】 UML的用例图、序列图、协作图、状态图和活动图,是提供对系统动态方面建模的图。其中,协作图用于展现一组对象及其相互间的连接,以及这组对象收发的消息。它强调收发消息对象的结构组织,按组织结构对控制流建模,强调上下层次关系。可见,协作图对系 统行为组织和建模。 活动图是一种特殊的状态图,描述需要做的活动、执行这些活动的顺序以及工作流。它用于系统的功能建模,并强调对象间的控制
38、流。 用例图展现了一组用例、用户以及它们间的关系,即从用户角度描述系统功能,并指出各功能的操作者。 状态图展示一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态问的转移。它强调一个对象按事件次序发生的行为,对于接口、类或协作的行为建模尤为重要。 在 UML建模过程中,对象行为是通过交互来实现的,是对象问为完成某一目的而进行的一系列消息 交换。消息序列可用序列图和协作图来表示。序列图展现了一组对象和由这组对象收发的消息,用于按时问顺序对控制流建模,即强调消息的时间顺序,其特点是有生命线及控制焦点。而协作图强调参加交互的对象的组织结构 (静态链接关系 )。序列图和协作图统称为交互图 (Interactive diagram),即这两种图是同构的,可以互相转换。它展现了各个对象如何依据某种行为进行相互协作。 【知识模块】 面向对象技术