教材第1章–软件工程及面向对象

一. 单选题

1.(单选题)()是面向对象方法中用来描述“对客户隐藏对象的属性和实现细节”的概念

A.继承

B.抽象

C.多态

D.封装

正确答案:D:封装

2.(单选题)人们公认的第一门面向对象编程语言是()

A.C++

B.Smalltalk

C.Java

D.Simula

正确答案:D:Simula

3.(单选题)下列不属于软件工程的目标的一项是()

A.提高软件产品的可靠性

B.减少软件产品的需求

C.提高软件产品的质量

D.控制软件产品的开发成本

正确答案:B:减少软件产品的需求

4.(单选题)软件危机产生的主要原因是()

A.软件本身的特点及开发方法

B.软件工具落后

C.对软件认识不够

D.软件生产能力不足

正确答案:A:软件本身的特点及开发方法

5.(单选题)下列编程语言中不支持面向对象特性的是()

A.C++

B.Objective C

C.ANSI C

D.Java

正确答案:C:ANSI C

6.(单选题)软件工程的概念是在()年被首次提出的

A.1972

B.1949

C.1968

D.1989

正确答案:C:1968

7.(单选题)下列选择中不属于面向对象方法的优势之一的是()

A.复用性强

B.改善了软件结构

C.抽象更符合人类的思维习惯

D.软件的执行效率更高

正确答案:D:软件的执行效率更高

8.(单选题)下列选项中不是面向对象方法的相关原则的是()

A.封装

B.继承

C.多态

D.结构

正确答案:D:结构

二. 判断题

9.(判断题)对象的自治性指的是对象是完全封闭的,不受任何外界影响。

A. 对

B. 错

正确答案:错

对象的自治性指的是对象具有自主性,能够独立地执行自己的行为和操作,但并不意味着对象完全封闭不受外界影响

10.(判断题)面向对象方法中的对象是从客观世界中抽象出来的一个集合体。

A. 对

B. 错

正确答案:对

11.(判断题)软件危机的主要表现是软件需求增加,软件价格上升。

A. 对

B. 错

正确答案:错

12.(判断题)C语言对面向对象的发展起到了重要作用。

A. 对

B. 错

正确答案:错

C语言并非面向对象的编程语言,它是一种过程化编程语言

13.(判断题)面向对象可以保证开发过程中的需求变化完全不会导致系统结构的变化。

A. 对

B. 错

正确答案:错

面向对象的方法并不能完全保证开发过程中的需求变化不会导致系统结构的变化

14.(判断题)软件就是程序,编写软件就是编写程序。

A. 对

B. 错

正确答案:错

14.(判断题)软件就是程序,编写软件就是编写程序。

A. 对

B. 错

正确答案:错

软件不仅包括程序代码,还包括相关的文档、数据、配置文件等。

15.(判断题)类是面向对象程序中的构造单位,也是面向对象程序设计语言的基本成分。

A. 对

B. 错

正确答案:对

16.(判断题)面向对象方法就是使用面向对象的程序设计语言进行编程。

A. 对

B. 错

正确答案:错

虽然面向对象的程序设计语言是实现面向对象方法的工具之一,但并不是唯一的工具。

教材第2章–统一建模语言

一. 单选题

  1. (单选题)下列关于模型的表述,不正确的一项是( )。

A. 模型所描绘的系统蓝图既可以包括详细的计划,也可以包括系统的总体计划

B. 最好的模型总是与现实世界联系密切

C. 建模语言只能是图形表示的

D. 模型可以帮助开发组生成有用的工作产品

正确答案: C:建模语言只能是图形表示的

  1. (单选题)UML的全称是()

A. Unify Modeling Language

B. Unified Model Language

C. Unified Modeling Language

D. Unified Making Language

正确答案: C:Unified Modeling Language

  1. (单选题)在UML所融合的方法中,()方法是以用例来驱动需求获取的。

A. Coad/Yourdon

B. Booch

C. OMT

D. OOSE

正确答案: D:OOSE

  1. (单选题)下列表述中不属于UML的目标是()。

A. 成为一门独立的编程语言

B. 支持独立于编程语言和开发过程的规范

C. 为建模者提供可用的、富有表达力的、可视化的建模语言

D. 推动面向对象建模工具市场的成长

正确答案: A:成为一门独立的编程语言

  1. (单选题)下列面向对象方法中不是UML所融合的方法的一项是()。

A. Booch

B. Coad/Yourdon

C. OOSE

D. OMT

正确答案: B:Coad/Yourdon

  1. (单选题)UML主要应用于()。

A. 基于对象的面向对象的方法

B. 基于数据的数据流开发方法

C. 基于螺旋模型的结构化开发方法

D. 基于需求动态定义的原型化方法

正确答案: A:基于对象的面向对象的方法

  1. (单选题)著名的OMT方法是由()提出的。

A. Coad

B. Jacobson

C. Rumbaugh

D. Booch

正确答案: C:Rumbaugh

  1. (单选题)正式的UML.2.0规范是在()年通过的。

A. 2003

B. 2001

C. 2007

D. 2005

正确答案: D:2005

二. 判断题

  1. (判断题)UML是一种建模语言,是一种标准的表示,是一种方法。

A. 对

B. 错

正确答案: 错

UML(Unified Modeling Language)确实是一种建模语言和标准表示方法,但它本身并不是一种开发方法

  1. (判断题)UML2.0提供了一些方法可以让用户创建出新的模型元素。

A. 对

B. 错

正确答案: 对

  1. (判断题)UML既是一门建模语言,也可以作为一门编程语言。

A. 对

B. 错

正确答案: 错

UML是一种建模语言,用于描述和设计软件系统的结构和行为,但它不是一种编程语言,不能直接用于编写代码。

  1. (判断题)UML2.0的出现彻底推翻了UML1.x中的核心概念,发展成了一门与之前截然不同的建模语言。

A. 对

B. 错

正确答案: 错

核心思想和基础概念仍然保留。

  1. (判断题)在UML这个名称出现之前,James Rumbaugh和Grady Booch的合并OMT和Booch工作成果被称为UM0.8。

A. 对

B. 错

正确答案: 对

  1. (判断题)UML支持面向对象的主要概念,并与具体开发过程相关。

A. 对

B. 错

正确答案: 错

虽然UML确实支持面向对象的主要概念(如类、对象、继承、聚合等),但是UML本身并不与具体的开发过程绑定

  1. (判断题)1997年11月,UML1.1规范OMG全体成员通过,正式被采纳为规范。

A. 对

B. 错

正确答案: 对

  1. (判断题)在UML出现之前,众多不同的面向对象的方法同时存在,给用户带来了一定困扰。

A. 对

B. 错

正确答案: 对7分

教材第4章–用例图

一. 单选题

  1. (单选题)下面不是用例图组成要素的是( )

A. 系统边界

B. 参与者

C. 用例

D. 泳道

正确答案: D:泳道

  1. (单选题)在进行某网上商店的用例图绘制时,( )是一个不合适的用例?

A. 管理订单

B. 搜索商品

C. 打开页面

D. 购买商品

正确答案: C:打开页面

  1. (单选题)下列不属于构成用例图的要素的是( )

A. 包含

B. 参与者

C. 关系

D. 用例

正确答案: A:包含

  1. (单选题)下面不属于用例图的作用的是( )

A. 展示软件使用者与软件功能的关系

B. 展示软件功能之间的关系

C. 展示软件的特性

D. 展示软件的功能

正确答案: C:展示软件的特性

  1. (单选题)包含关系实在( )关系的基础上通过添加构造型实现的。

A. 关联关系

B. 实现关系

C. 依赖关系

D. 泛化关系

正确答案: C:依赖关系

  1. (单选题)下列说法中,不正确的是( )

A. 参与者指的是人,不能是子系统和时间等概念

B. 在扩展关系中,基础用例提供了一个或多个插入点,扩展用例在这些插入点中提供了另外的行为

C. 特殊需求指的是一个用例的非功能需求和设计约束

D. 用例和参与者之间的对应关系是关联关系,它表示参与者使用了系统的用例

正确答案: A:参与者指的是人,不能是子系统和时间等概念

  1. (单选题)对于ATM系统的"取款"用例(客户通过插入银行卡并输入正确的密码从ATM机中成功退款的过程),( )应该作为该用例的参与者.

A. 银行工作人员

B. ATM机

C. 取款客户

D. 取款

正确答案: C:取款客户

  1. (单选题)以下各项中,( )不是用例图适于表达的内容?

A. 系统边界

B. 参与者

C. 事件流

D. 用例关系

正确答案: C:事件流

  1. (单选题)下列关于用例图的描述,错误的是( )

A. 用例图表示系统的行为

B. 用例在用例图中使用椭圆表示

C. 参与者在用例图中使用小人表示

D. 一般使用从用例指向参与者的箭头表示启动关系

正确答案: D:一般使用从用例指向参与者的箭头表示启动关系

  1. (单选题)下列UML关系中在用例图中不会出现的一项是( )

A. 扩展关系

B. 泛化关系

C. 关联关系

D. 包含关系

正确答案: C:关联关系

二. 判断题

  1. (判断题)参与者就是那些为系统提供输入的人或事物。

A. 对

B. 错

正确答案: 错

参与者不仅仅是为系统提供输入的人或事物,而是与系统有交互的任何实体,包括人、组织、外部系统、时间等。因此说法不全面。

  1. (判断题)用例图中的参与者可能对应于现实世界中的人,也可能是其他与系统有交互的事物。

A. 对

B. 错

正确答案: 对

  1. (判断题)用例的包含关系中与扩展关系在表示法上相似,都是将虚线箭头从基用例指向包含用例(扩展用例)

A. 对

B. 错

正确答案: 错

包含关系和扩展关系虽然在表示法上都使用虚线箭头,但其方向不同。包含关系的箭头是从基用例指向包含用例,而扩展关系的箭头是从扩展用例指向基用例。

  1. (判断题)在绘制用例图时,其中用例的粒度越细越好。

A. 对

B. 错

正确答案: 错

用例的粒度不应过细。用例图应该清晰简洁,过细的粒度会导致复杂性增加,不利于理解和维护

  1. (判断题)用例描述中的前置条件与后置条件分别指的是用例执行前和执行后系统与参与者所处的状态。

A. 对

B. 错

正确答案: 对

  1. (判断题)在用例图中,用例必须由相应的参与者来发起或执行。

A. 对

B. 错

正确答案: 对

  1. (判断题)如果两个用例构成包含关系,则在基用例执行过程中,包含用例一定会执行至少一次。

A. 对

B. 错

正确答案: 对

  1. (判断题)参与者位于系统边界外,并不是系统的一部分.

A. 对

B. 错

正确答案: 对

  1. (判断题)在用例图中,一个参与者一定对应于现实中的某个特定对象。

A. 对

B. 错

正确答案: 错

参与者可以是一个角色,而不是一个具体的个体。例如,一个“用户”可以代表所有使用系统的人,而不是某一个特定的人。

  1. (判断题)用例元素本身就可以描述该用例所表达的事件或交互过程。

A. 对

B. 错

正确答案: 错

用例元素本身通常无法完整地描述事件或交互过程

教材第5章–类图-新

一. 单选题

  1. (单选题)下列对类和接口的描述不正确的是()。

A. 接口的方法名必须是公开(public)的

B. 当使用子类去替换一处父类时,设计良好的软件应当可以正确实现功能

C. 一个类可以实现多个接口

D. 当一个类拥有另外一个类的全部属性和方法的时候,他们之间是实现关系

我的答案: D:当一个类拥有另外一个类的全部属性和方法的时候,他们之间是实现关系

  1. (单选题)在下列选项中不属于面向对象的设计原则的是()。

A. 接口分离原则

B. 里氏替换原则

C. 后进先出原则

D. 单一职责原则

我的答案: C:后进先出原则

  1. (单选题)在下列选项中不属于分析类的是()。

A. 实体类

B. 控制类

C. 边界类

D. 主类

我的答案: D:主类

  1. (单选题)假设类A的一个操作的其中一个参数是类B的一个对象,且这两个类之间不存在其他关系,那么类A和类B之间构成()

A. 关联关系

B. 实现关系

C. 泛化关系

D. 依赖关系

我的答案: D:依赖关系

  1. (单选题)类之间的关系不包括()。

A. 分解关系

B. 泛化关系

C. 依赖关系

D. 实现关系

我的答案: A:分解关系

  1. (单选题)汽车(car)由轮子、发动机、邮箱、座椅、方向盘等组成,那么Car类和其他类(Wheel、Enign、Tank、Chair、SteeringWheel)之类的关系是()。

A. 关联关系

B. 泛化关系

C. 依赖关系

D. 实现关系

我的答案: A:关联关系

  1. (单选题)下列关于接口的关系不正确的是()。

A. 一个类可以通过实现接口从而具有接口指定的行为

B. 在调用设计合理的接口时,需要知道类对接口实现的具体信息

C. 接口可以看成是有< >构造性的类

D. 接口是一种特殊的类

我的答案: B:在调用设计合理的接口时,需要知道类对接口实现的具体信息

因为接口的一个关键特性是实现细节对使用者是隐藏的,即调用接口时不需要知道实现类的具体信息。

  1. (单选题)当类的属性与操作添加了()限定的符后表示该属性或操作只对本类可见,不能被其他类访问。

A. protected

B. public

C. package

D. private

我的答案: D:private

  1. (单选题)在下列选项中不属于类图的元素是()。

A. 关联类

B. 用例

C. 类

D. 接口

我的答案: B:用例

  1. (单选题)下列关于类图的说法正确的是()。

A. 类图和数据模型与许多相似之处,区别是数据类型不仅描述了内部信息的结构,也包含了系统的内部行为

B. 类图的目的在于描述系统的运行方式,而不是系统如何构成

C. 类图是由类、组件、包等模型元素以及它们间的关系构成的

D. 类图通过系统中的类和类间关系描述了系统的静态特征

我的答案: D:类图通过系统中的类和类间关系描述了系统的静态特征

二. 判断题

  1. (判断题)假设班级类(Class)与学生类(Student)之间建立了关联关系,并且约定一个班级至少拥有一个学生,每个学生只能属于一个班级,则关联关系的班级类一端的多重性应设为1..*。

A. 对

B. 错

我的答案: 错

我的理解应该是班级类是1,学生类是1..*

  1. (判断题)里氏替换原则的主要内容是”父类对于子类应该是完全可以替代的“。

A. 对

B. 错

我的答案: 对

  1. (判断题)当一个对象名表示为“A:B"时,表示这是一个A类的名称为B的对象。

A. 对

B. 错

我的答案: 错

通常的格式是“对象名: 类名”。

  1. (判断题)模板类在其参数未确定时,无法创建直接实例。

A. 对

B. 错

我的答案: 对

模板类(泛型类)在参数未确定时无法实例化。需要提供具体的类型参数后,才能创建实例。

  1. (判断题)任何一个类都必须具有一定数量的属性与操作。

A. 对

B. 错

我的答案: 错

,某些抽象类可能只有方法声明,而没有具体的属性或操作实现。

  1. (判断题)在UML中,当接口使用小圆圈表示时,该接口与其他类的实现关系可以被简化为一条实线段。

A. 对

B. 错

我的答案: 对

,某些抽象类可能只有方法声明,而没有具体的属性或操作实现。

  1. (判断题)接口与抽象类的概念是完全相同的。

A. 对

B. 错

我的答案: 错

  1. (判断题)接口中的操作不应该包含其具体实现。

A. 对

B. 错

我的答案: 对

接口定义了操作的规范,但不包含具体实现。具体实现由实现接口的类提供。

  1. (判断题)逆向工程指的是将某种语言的代码转换为模型的过程。

A. 对

B. 错

我的答案: 对

逆向工程是指从现有的代码或系统生成模型的过程,从而帮助理解系统结构和设计。

  1. (判断题)类图主要通过系统中的类及类之间的关系来描述系统的动态结构。

A. 对

B. 错

我的答案: 错

类图描述的是系统的静态结构,而非动态结构

教材第6章–对象图-新

一. 单选题

  1. (单选题)下列对象名的写法中,不合法的一项是

A. 类名:

B. :类名

C. 对象名:类名

D. 对象名

正确答案: A:类名:

对象名的写法应该遵循“对象名:类名”的格式。A选项缺少对象名,不合法。

  1. (单选题)下列关于类和对象的关系的叙述中,错误的一项是

A. 每个对象都是某个类的实例

B. 类之间可能存在关联关系,对象之间也可能存在链

C. 类是静态的描述

D. 每个类某一时刻必定存在对象实体

正确答案: D:每个类某一时刻必定存在对象实体

个类不一定在任何时刻都有实例存在。例如,某些类可能没有任何对象实例化

  1. (单选题)下列关于对象图的叙述中,错误的一项是

A. 对象图表达的交互的动态部分

B. 对象图显示了某一时刻的一组对象及他们之间的联系

C. 对象图可被看作是类图的实例

D. 对象图中的建模元素主要有对象和链

正确答案: A:对象图表达的交互的动态部分

对象图显示的是系统在某一时刻的静态快照,而不是动态的交互部分。

  1. (单选题)下列关于对象图的叙述中,错误的一项是

A. 对象图中的链是泛化关系的实例

B. 对象图显示了某一时刻的一组对象及他们之间的联系

C. 对象图中的主要元素是链与对象

D. 对象图主要用于说明系统在某一特定时刻的具体运行状态

正确答案: A:对象图中的链是泛化关系的实例

对象图中的链是关联关系的实例,而不是泛化关系的实例。

  1. (单选题)下列关于链的叙述中,正确的一项是

A. 链没有多重性

B. 链用来表示对象和类之间的关系

C. 链使用一根虚线段来表示

D. 链就是关联关系

正确答案: A:链没有多重性

二. 判断题

  1. (判断题)在UML中,对象和类的表示方法完全相同

A. 对

B. 错

正确答案: 错

  1. (判断题)对象图显示了某一时刻的一组对象及他们之间的关系

A. 对

B. 错

正确答案: 对

  1. (判断题)类图可被看作是对象图的实例

A. 对

B. 错

正确答案: 错

类图表示系统的静态结构,而对象图是类图的实例

  1. (判断题)每一个对象图只是系统的静态设计视图或静态交互视图的图形表示

A. 对

B. 错

正确答案: 对

  1. (判断题)链是关联关系的实例,是两个或多个对象之间的独立连接

A. 对

B. 错

正确答案: 对

教材第7章–包图-新

一. 单选题

  1. (单选题)在UML的建模机制中,模型的组织一般通过()来实现。

A. 注释

B. 数据库

C. 用例

D. 包

正确答案: D:包

  1. (单选题)下列选项中,可以应用于包元素的UMI预定义的构造型时()。

A. «actor »

B. « subsystem »

C. «control »

D. «interface »

正确答案: B:« subsystem »

  1. (单选题)下列选项中,UML不允许的元素分包及命名的一项是( )。

A. A包中含有类 ElementA与用例.ElementA

B. A包中含有类ElementA.B包中含有类ElementA

C. A包中含有类ElementA.B包中含有用例ElementA

D. A包中含有类 ElementA与类 ElementA

正确答案: D:A包中含有类 ElementA与类 ElementA

  1. (单选题)包图的组成不包括()。

A. 包间的消息和发送者

B. 包与包之间的关系

C. 包的名称和构造型

D. 包中含有的元素

正确答案: A:包间的消息和发送者

  1. (单选题)在下列选项中,包元素之间可能形成的关系是()。

A. 依赖关系

B. 关联关系

C. 实现关系

D. 拓展关系

正确答案: A:依赖关系

  1. (单选题)假设有两个包A与B,其中B包依赖于A包,且二者之间不构成任何嵌套关系。此外,A包中含有三个类元素:ClassA,可见性修饰为public。2ClassB,可见性修饰为protected 。3ClassC,可见性修饰为private。那么在B包中可见的元素有()。

A. ①②③

B. ①

C. ①②

D. ②

正确答案: B:①

  1. (单选题)下列关于包的用途,说法不正确的是()。

A. 描述需求和设计的高层概况

B. 细化用例表达

C. 将复杂系统在逻辑层面上模块化

D. 组织源代码

正确答案: B:细化用例表达

  1. (单选题)下列选项中,不能直接放在包中的元素是()。

A. 类

B. 包

C. 对象图

D. 操作

正确答案: D:操作

二. 判断题

  1. (判断题)包只能用来组织UML中的事物﹐而无法用来组织UML图。

A. 对

B. 错

正确答案: 错

包(Package)不仅可以用来组织UML中的事物(如类、接口等),也可以用来组织UML图(如类图、用例图等)。因此,包可以组织UML图,所以题目是错误的。

  1. (判断题)包中可见性修饰为public的元素表示这些元素可以被项目中的所有包无条件地访问。

A. 对

B. 错

正确答案: 错

在UML中,包内元素的public可见性并不意味着这些元素可以被所有包无条件地访问。访问权限还取决于具体的访问控制机制和作用域,因此题目是错误的。

  1. (判断题)包内元素的可见性表示同一个包内的其他元素对该元素的访问权限。

A. 对

B. 错

正确答案: 错

包内元素的可见性不仅表示包内其他元素对该元素的访问权限,还可以影响到包外元素的访问权限。包内的可见性修饰符如public、protected等影响范围较广

  1. (判断题)包元素是UML中最重要的结构事物之一。

A. 对

B. 错

正确答案: 错

虽然包元素在组织和管理UML模型中起到重要作用,但说它是"最重要"的结构事物之一过于夸大了其作用。UML中还有许多其他重要的结构事物,如类、对象等。因此题目是错误的。

  1. (判断题)在UMl.中.每个元素只能被包含在一个包中。

A. 对

B. 错

正确答案: 对

UML规定每个模型元素只能被包含在一个包中,以避免同一元素在多个包中出现的混乱。

  1. (判断题)包之间表示依赖关系的虚线箭头指向被依赖的包的一方。

A. 对

B. 错

正确答案: 对

  1. (判断题)包的路径名使用前缀来表示出上层包的名称。

A. 对

B. 错

正确答案: 对

  1. (判断题)UML中的所有模型元素都可以被直接包含在包中。

A. 对

B. 错

正确答案: 错7分

:并非所有UML模型元素都可以直接包含在包中。某些元素,如操作和属性,必须属于类或接口等其他结构,而不能直接包含在包中。因此题目是错误的。

教材第8章–顺序图

一. 单选题

  1. (单选题)顺序图的作用有()。

A. 显示在交互过程中各个对象之间的组织交互关系以及对象彼此之间的连接

B. 确认和丰富一个使用语句的逻辑表达

C. 有效地描述如何分配各个类的职责,以及这些类具有相应职责的原因

D. 细化用例的表达

正确答案: D:细化用例的表达

  1. (单选题)顺序图是由对象、生命线、激活和()等构成的

A. 消息

B. 泳道

C. 线程

D. 组件

正确答案: A:消息

  1. (单选题)下列关于顺序图的说法不正确的是()

A. 在顺序图中,消息表示一组在对象间传送的数据,不能代表调用

B. 顺序图比较详细地描述了用例表达的需求

C. 顺序图的目的在于描述系统中各个对象按照时间顺序的交互

D. 顺序图是对象之间传送消息时间顺序的可视化表示

正确答案: A:在顺序图中,消息表示一组在对象间传送的数据,不能代表调用

  1. (单选题)消息的组成不包括()。

A. 活动

B. 发送者

C. 接口

D. 接收者

正确答案: C. 接口

  1. (单选题)下列关于生命线的说法不正确的是()。

A. 在顺序图中,生命线是一条时间线,从顺序图的顶部一直延伸到底部,所用时间取决于交互持续时间,即生命线表现了对象存在的时段

B. 顺序图中的所有对象在程序一开始运行的时候,其生命线都必须存在

C. 生命线是一条垂直的虚线,用来表示顺序图中的对象在一段时间内存在

D. 在顺序图中,每个对象的底部中心位置都带有生命线

正确答案: B:顺序图中的所有对象在程序一开始运行的时候,其生命线都必须存在

  1. (单选题)若一个消息发送后接收者无法在指定时间内接收,则发送者放弃该消息,这种消息的类型应为()。

A. 同步消息

B. 阻塞消息

C. 异步消息

D. 超时消息

正确答案: D:超时消息

  1. (单选题)对象生命线的激活阶段表示该时间段此对象正在()。

A. 接收消息

B. 空闲

C. 被占用

D. 发送消息

正确答案: C:被占用

  1. (单选题)在顺序图中,一个对象被命名为“:B”,该对象名的含义是()

A. 一个所属类不明的对象B

B. 一个属于类B的对象B

C. 一个属于类B的匿名对象

D. 非法对象名

正确答案: C:一个属于类B的匿名对象

  1. (单选题)顺序图中的消息是以()顺序排列的。

A. 时间

B. 调用

C. 发送者

D. 接收者

正确答案: A:时间

  1. (单选题)在UML的顺序图中将交互关系表现成一幅二维图,其中纵向是(),横向是()。

A. 交互,泛化

B. 时间,消息

C. 时间,对象角色

D. 交互,消息

正确答案: C:时间,对象角色

二. 判断题

  1. (判断题)顺序图虽然能表示消息发送的事件顺序,却无法量化地表示出消息发送的具体时间。

A. 对

B. 错

正确答案: 对

  1. (判断题)顺序图从时间顺序上显示了交互过程中信息的交换。

A. 对

B. 错

正确答案: 对

  1. (判断题)顺序图中的对象可以在交互开始时已经存在,也可以在交互过程中才被创建。

A. 对

B. 错

正确答案: 对

  1. (判断题)激活表示在这一时间段内对象正在 完成某项任务。

A. 对

B. 错

正确答案: 对

  1. (判断题)在顺序图中,所有对象的生命线一定会被一个销毁标记所结束。

A. 对

B. 错

正确答案: 错

并不是所有对象的生命线都会被销毁标记结束,生命线可以自然结束或者继续存在于其他交互中,因此这个题目是错误的。

  1. (判断题)在顺序图中,如果一个对象在接收到消息时还没有被激活,那么这条消息将会激活这个对象。

A. 对

B. 错

正确答案: 对

  1. (判断题)每条消息一定关联着至少两个不同的对象,即消息的发送者和接收者。

A. 对

B. 错

正确答案: 错

消息可以是对象给自己发送消息(自消息),因此消息不一定总是涉及两个不同的对象,因此这个题目是错误的。

  1. (判断题)在顺序图中,对象的生命线一定会贯穿整个交互过程。

A. 对

B. 错

正确答案: 错

对象的生命线可以在交互过程中创建和销毁,并不一定贯穿整个交互过程,因此这个题目是错误的。

  1. (判断题)信号就是调用类的操作。

A. 对

B. 错

正确答案: 错

信号和调用类的操作是不同的概念。信号是一种异步的通信机制,而调用类的操作通常是同步的,因此这个题目是错误的。

  1. (判断题)顺序图中元素的摆放顺序无关紧要。

A. 对

B. 错

正确答案: 错

顺序图中的元素摆放顺序非常重要,因为它们反映了消息的时间顺序和对象的交互顺序,

教材第9章–通信图

一. 单选题

  1. (单选题)通信图中的消息类型不包括

A. 简单消息

B. 返回消息

C. 异步消息

D. 函数消息

正确答案: D:函数消息

  1. (单选题)对一次交互过程中有意义的对象间关系建模﹐并且着重刻画对象间如何交互以执行用例的图是

A. 用例图

B. 组件图

C. 通信图

D. 部署图

正确答案: C:通信图

  1. (单选题)若想在通信图中表示链关联的对象在整个系统中全局可见﹐则应该对链的一端添加字母()作为修饰符

A. G

B. L

C. P

D. F

正确答案: A:G

  1. (单选题)下列UML图中与通信图建模的内容相同的是。

A. 状态机图

B. 类图

C. 用例图

D. 顺序图

正确答案: D:顺序图

  1. (单选题)下列关于通信图中链的叙述,正确的是

A. 在通信图中,链一定连接了两个不同的对象

B. 通信图中对象之间的链一定在整个软件的生命周期内都存在

C. 通信图中的链与对象图中的链在语义以及表示法上都相同

D. 在通信图中,链可以添加可见性修饰来表示两端对象对整条链的可见性

正确答案: C:通信图中的链与对象图中的链在语义以及表示法上都相同

  1. (单选题)下列关于通信图的说法错误的是

A. 通信图是对一次交互过程中有意义的对象和对象间交互建模

B. 通信图的重点在于描述系统中各个对象交互的时间顺序

C. 通信图显示了对象之间如何协作以完成一个用例或用例特定部分的功能

D. 通信图中表现的交互双方不一定彼此可见

正确答案: B:通信图的重点在于描述系统中各个对象交互的时间顺序

  1. (单选题)下列选项中不属于通信图与顺序图的共同点的是。

A. 对象表示相同,都可以显式地体现出对象的生命周期

B. 对象责任相同,都担任了发送者与接收者的角色

C. 主要元素相同,都是对象与消息作为主要元素

D. 表达语义相同,都是对系统中的交互建模

正确答案: A:对象表示相同,都可以显式地体现出对象的生命周期

  1. (单选题)下列关于通信图与顺序图中的对象的相同点的叙述,正确的是。

A. 对象名在两种图中的表示完全一致

B. 对象在两种图中的表示方式完全一致

C. 对象在两种图中的位置都没有任何限制

D. 两种图中都可以表示对象的创建和销毁

正确答案: A:对象名在两种图中的表示完全一致

  1. (单选题)在通信图中用来连接对象与对象的元素是

A. 生命线

B. 链

C. 关联关系

D. 消息

正确答案: B:链

  1. (单选题)通信图的作用包括。

A. 显示对象及其交互关系的时间传递顺序

B. 表现一个类操作的实现

C. 显示对象及其交互关系的空间组织结构

D. 通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达

正确答案: D:通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达

二. 判断题

  1. (判断题)在通信图中出现的链是静态关联的实例。

A. 对

B. 错

正确答案: 错

在通信图中,出现的链是对象之间的动态交互关系的实例

  1. (判断题)通信图将对象和时间作为两个维度在图中表示。

A. 对

B. 错

正确答案: 错

不涉及时间维度

  1. (判断题)与关联关系相似.UML.也允许对象自身与自身之间建立一条链。

A. 对

B. 错

正确答案: 对

  1. (判断题)通信图的主要组成元素包括对象、链、生命线和消息。

A. 对

B. 错

正确答案: 错

不包括生命线

  1. (判断题)在通信图中,只有通过链连接的对象才能进行消息传递和交互。

A. 对

B. 错

正确答案: 错

任何两个对象之间都可以直接发送消息进行交互,不必通过链连接。

  1. (判断题)通信图是表现对象协作关系的图,它展现了多个对象在协同工作达成共同目标的过程中互相通信的情况。

A. 对

B. 错

正确答案: 对

  1. (判断题)因为通信图无法表示出对象在交互时的激活,顺序图也无法表示出交互过程中对象间的链,因此两种图所表达的语义是完全不等价的。

A. 对

B. 错

正确答案: 错

  1. (判断题)通信图中应该表示出交互发生的时刻系统中存在的所有对象。

A. 对

B. 错

正确答案: 错

只需展示涉及到的对象及其之间的交互关系即可。

  1. (判断题)由于交互时可能会有一组同类型的对象在交互中执行同一个操作,因此通信图提供了多重对象的概念。

A. 对

B. 错

正确答案: 对

  1. (判断题)就语义和表示法而言,通信图中的消息与顺序图中的消息完全相同。

A. 对

B. 错

正确答案: 对

教材第10章–状态机图

一. 单选题

  1. (单选题)下列说法不正确的是()。

A. 内部转换默认不激发人口和出口动作,因此内部转换激发的结果不改变本来状态

B. 没有触发器事件的转换是由状态活动的完成引起的

C. 状态机图的主要目的是描述对象创建和销毁的过程中资源的不同状态,有利于开发人员提高开发效率

D. 触发器事件就是能够引起状态转换的事件,触发器事件可以是信号或调用等

正确答案: C:状态机图的主要目的是描述对象创建和销毁的过程中资源的不同状态,有利于开发人员提高开发效率

  1. (单选题)假设在某个状态的内部的一行内容表示为“eventA/defer”,则这行内容所表示的是()。

A. 内部执行活动

B. 内部转换

C. 可推迟事件

D. 触发器

正确答案: C:可推迟事件

  1. (单选题)组成一个状态的多个子状态之间是互斥的,不能同时存在,那么这种状态称为()复合状态。

A. 顺序

B. 历史

C. 同步

D. 并发

正确答案: A:顺序

  1. (单选题)状态机图的意义是()。

A. 对实体在其生命周期中的各种状态进行建模,状态是实体在一段时间内保持的一个状态

B. 将系统的需求转化成图形表示,简单直观.还可以转化成程序的伪代码

C. 描述对象和对象之间按时间顺序的交互行为

D. 表示两个或多个对象之间的独立连接,是不同对象不同时期情况的图形化描述

正确答案: A:对实体在其生命周期中的各种状态进行建模,状态是实体在一段时间内保持的一个状态

  1. (单选题)下列选项不属于伪状态的是()。

A. 复合状态

B. 选择

C. 初态

D. 历史状态

正确答案: A:复合状态

  1. (单选题)需要依赖于某个表达式所表达布尔条件才能发生的事件被称作()。

A. 时间事件

B. 改变事件

C. 调用事件

D. 信号事件

正确答案: B:改变事件

  1. (单选题)下列选项不属于状态元素内部的内容是()。

A. 内部转换

B. 可推迟事件

C. 触发器

D. 人口动作

正确答案: C:触发器

  1. (单选题)关于状态机图的说法,不正确的是()。

A. 状态机图用于对系统的静态方面建模

B. 状态机图适用于描述状态和动作的顺序,不仅可以展现-个对象拥有的状态,还可以说明事件如何随着事件的推移来影响这些状态

C. 状态机图用于模型元素的实例(对象、交互等)的行为

D. 状态机图通过建立类对象的生命周期模型来描述对象随时间变化的动态行为

正确答案: A:状态机图用于对系统的静态方面建模

  1. (单选题)假设一个转换被表示为“A[B]/C”,那么这个转换所表达的语义是()。

A. 该转换的触发器事件为C,监护条件为A.效果列表为B

B. 该转换的触发器事件为A,监护条件为C.效果列表为B

C. 该转换的触发器事件为A,监护条件为B.效果列表为C

D. 该转换的触发器事件为B,监护条件为A.效果列表为C

正确答案: C:该转换的触发器事件为A,监护条件为B.效果列表为C

  1. (单选题)下列不是状态机图组成要素的是()。

A. 状态

B. 转移

C. 初始状态

D. 组件

正确答案: D:组件

二. 判断题

  1. (判断题)如果一个非内部的转换没有触发器,则该转换会在其内部活动执行完毕后触发。

A. 对

B. 错

正确答案: 对

  1. (判断题)可推迟事件表示这一事件如果无法立即执行.则会被推迟执行。

A. 对

B. 错

正确答案: 对

  1. (判断题)历史状态就是状态机中该状态的前一状态。

A. 对

B. 错

正确答案: 错

  1. (判断题)在状态机图中,转换就是对象在两种状态之间的时空下发生的有意义的事情。

A. 对

B. 错

正确答案: 错

但它并不一定是有意义的事情发生。它只是描述了状态从一种到另一种的变化过程。

  1. (判断题)内部转换就是某个状态转换到自身的过程。

A. 对

B. 错

正确答案: 错

内部转换是在同一状态内部发生的转换

  1. (判断题)一个正确的状态机图中的选择节点不同分支上的监护条件应该覆盖所有情况。

A. 对

B. 错

正确答案: 对

  1. (判断题)一个状态机图中只能有二个初态。

A. 对

B. 错

正确答案: 错

  1. (判断题)当顺序复合状态被激活时,同一时间只有一个子状态会被激活。

A. 对

B. 错

正确答案: 对

  1. (判断题)在转换被触发器激发一次的过程中,会一直计算监护条件直到其结果为真。

A. 对

B. 错

正确答案: 错

一旦触发器激发了转换,监护条件将只计算一次。如果条件为假,则不会执行转换,而不会等待条件变为真。

  1. (判断题)状态机一般都依附于一个类,上述情况下也可以依附于用例、操作等元素上。

A. 对

B. 错

正确答案: 对

教材第11章–活动图

一. 单选题

  1. (单选题)在活动图中用于连接动作或节点,表示活动进行方向的元素是()。

A. 对象流

B. 扩展区域

C. 动作

D. 控制流

正确答案: D:控制流

  1. (单选题)活动图中可能出现的终止标记的数量是()

A. 1个

B. 0到多个

C. 0个

D. 0或1个

正确答案: B:0到多个

  1. (单选题)在活动图中包含并发含义的元素主要指的是

A. 控制流

B. 判断节点

C. 泳道

D. 分叉节点

正确答案: D:分叉节点

  1. (单选题)以下说法错误的是()

A. 活动图中的开始标记一般只有一个,而终止标记可能有多个

B. 活动图比UML状态图更加适合去描述一个流程

C. 在活动图中没有表现出并发的,在实际实现的时候一定不涉及并发问题

D. 判断节点的出口条件必须保证不互相重复,并且不缺少情况

正确答案: C:在活动图中没有表现出并发的,在实际实现的时候一定不涉及并发问题

  1. (单选题)下列建模需求中,适合使用活动图来完成的是()

A. 对消息流程建模

B. 对体系结构建模

C. 对业务流程建模

D. 对数据库模式建模

正确答案: C:对业务流程建模

  1. (单选题)若想在活动图中表现对象流,则首先需要绘制出()元素。

A. 扩展区域

B. 分叉节点

C. 控制流

D. 泳道

正确答案: D:泳道

  1. (单选题)在活动图中用于对元素按照负责对象分组的元素是( )。

A. 泳道

B. 控制流

C. 分叉节点

D. 判断节点

正确答案: A:泳道

  1. (单选题)在活动图中用于将判断节点产生的多个控制流合成并导出为一个控制流的元素

A. 判断节点

B. 合并节点

C. 分叉节点

D. 结合节点

正确答案: B:合并节点

  1. (单选题)以下哪一项信息不容易在活动图中表达?()

A. 动作执行顺序

B. 活动进行的逻辑结构

C. 执行者之间的交互

D. 动作的执行者

正确答案: C:执行者之间的交互

  1. (单选题)在活动图中负责在一个活动节点执行完毕后切换到另一个节点的元素是()

A. 扩展区域

B. 对象流

C. 控制流

D. 判断节点

正确答案: C:控制流

二. 判断题

  1. (判断题)活动本身是一个原子操作,是不可被中断的。

A. 对

B. 错

正确答案: 错

活动可以是原子操作,也可以是由多个子活动组成的复合操作。原子操作是不可被中断的,但复合操作可以被中断或暂停。

  1. (判断题)泳道按活动发生的时间将活动图划分为几部分

A. 对

B. 错

正确答案: 错

  1. (判断题)活动图是一种用于表达系统动态特性的UMI[图

A. 对

B. 错

正确答案: 对

  1. (判断题)活动图可以像流程图一样表达出顺序,分支及循环控制结构,但语义要比流程图丰富得多。

A. 对

B. 错

正确答案: 对

  1. (判断题)活动图可以在逻辑顺序角度对用例中的各个交互的流进行建模。

A. 对

B. 错

正确答案: 对

  1. (判断题)在活动图中,合并节点仅有逻辑意义而没有时间和数据上的意义。

A. 对

B. 错

正确答案: 对

  1. (判断题)活动图中必须有且只能有一个开始标记

A. 对

B. 错

正确答案: 对

  1. (判断题)活动图的控制流与状态图中的转换是语义完全相同的元素。

A. 对

B. 错

正确答案: 错

活动图的控制流用于描述活动之间的顺序和逻辑关系,而状态图的转换用于描述状态之间的转换,

  1. (判断题)结合节点与合并节点相似﹐当控制流进行到该节点时都不需要等待其他控制流的到达

A. 对

B. 错

正确答案: 错

合并节点用于将多条控制流合并为一条,而结合节点用于等待多个控制流到达后再继续执行。

  1. (判断题)一个活动不可能属于多个泳道。

A. 对

B. 错

正确答案: 对

教材第12章–组件图-新S

一. 单选题

  1. (单选题)下列关于组件的说法不正确的是()。

A. 在组件图中,将系统中可重用的没款封装成为具有可替代性的物理单元,称为组件

B. 组件作为系统中的一个物理实现单元,包括软件代码(包括源代码、二进制代码和可执行文件等)或者相应组成部分

C. 组件时系统定义良好接口的物理实现单元,但是它需要依赖于其他组件而不是仅仅依赖于组件所支持的接口

D. 组件是独立的,是在一个系统或子系统中的封装单元,提供一个或多个接口,是系统高层的可重用部件

正确答案: C:组件时系统定义良好接口的物理实现单元,但是它需要依赖于其他组件而不是仅仅依赖于组件所支持的接口

  1. (单选题)下列关于组件图的叙述,说法不正确的是()。

A. 组件图通过显示系统的组件以及接口等之间的关系,形成更大的一个设计单元

B. 在组件图中,组件和组件之间的关系表现为实现关系,定义的类或接口与类之间的关系表现为依赖关系

C. 组件图是用来表示系统中组件与组件之间、定义的类或接口与组件之间的关系图

D. 在组件图中,可以将系统中可重用的模块封装成具有可代替性的物理单元

正确答案: B:在组件图中,组件和组件之间的关系表现为实现关系,定义的类或接口与类之间的关系表现为依赖关系

  1. (单选题)组件图主要描述的问题是()。

A. 系统中组件与组件之间、定义的类或接口与组件之间的关系

B. 在系统运行时,用户和组件、组件和组件之间互相交互和引用的时序关系

C. 系统中组件和硬件的适配问题

D. 组件实现的功能及其具体实现源代码

正确答案: A:系统中组件与组件之间、定义的类或接口与组件之间的关系

  1. (单选题)对于组件图中的接口,下列说法正确的是()。

A. 使用球窝表示法的接口分为供给接口和需求接口两部分

B. 使用接口提高了组件之间的耦合度

C. 接口的圆圈表示法和球窝表示法的含义不同

D. 组件图中的接口只有一种表示法,即圆圈表示法

正确答案: A:使用球窝表示法的接口分为供给接口和需求接口两部分

  1. (单选题)下列选项中,不属于组件图的元素的是()。

A. 组件

B. 端口

C. 用例

D. 接口

正确答案: C:用例

二. 判断题

  1. (判断题)组件与其提供的接口之间构成依赖关系。

A. 对

B. 错

正确答案: 错

组件与其提供的接口之间实际上是一种提供与实现的关系

  1. (判断题)组件是组件图中语义最小的元素。

A. 对

B. 错

正确答案: 错

组件图中,语义最小的元素通常是类、接口或端口,而不是组件

  1. (判断题)组件是一个封装完好的物理实现单元,与外部完全分离

A. 对

B. 错

正确答案: 错

组件虽然是一个封装完好的物理实现单元,但它并不是与外部完全分离的

  1. (判断题)在组件图中,组件之间的依赖关系表示组件在某些行为上的对其他组件的依赖。

A. 对

B. 错

正确答案: 对

  1. (判断题)组件是系统工作产品的一部分,因此exe文件是一个组件,而程序的源文件不能作为一个组件。

A. 对

B. 错

正确答案: 错

组件可以是系统的任何工作产品的一部分,包括源文件、库、配置文件等。Exe文件是组件的一种形式,但程序的源文件同样可以被视为组件,因为它们也是系统实现的一部分,可以被编译、打包和部署

  1. (判断题)组件比类的抽象层次要高,类应该从属于某个组件。

A. 对

B. 错

正确答案: 对

教材第13章–部署图-新

一. 单选题

  1. (单选题)下列说法正确的是()

A. 部署图不适用于分布式系统

B. 节点之间一般会存在通信

C. 部署就是复制软件

D. 软件的执行环境一般是一个独立的设备节点

正确答案: B:节点之间一般会存在通信

  1. (单选题)部署图的组成元素不包括()

A. 组件

B. 设备

C. 处理器

D. 关联关系

正确答案: A:组件

  1. (单选题)软件部署的实质是()

A. 部署软件模型

B. 部署软件组件

C. 部署软件制品

D. 部署软件程序

正确答案: C:部署软件制品

  1. (单选题)某系统部署时需要一台LED显示屏.其在部署图中应该被建模为( )类型的节点。

A. 都不适用

B. 设备

C. 二者均可

D. 处理器

正确答案: B:设备

  1. (单选题)下列关于部署图的说法不正确的是()

A. 每一个系统模型中可以包含多个部署图

B. 部署图描述了一个系统运行时的硬件节点.在这些节点上运行的软件构件将在何处物理运行,以及它们将如何彼此通信的静态视图

C. 每一个系统模型中应该仅包含一个部署图

D. 在一个部署图中包含了两种基本的模型元素:节点和节点之间的连接

正确答案: A:每一个系统模型中可以包含多个部署图

二. 判断题

  1. (判断题)部署图中节点之间的关联关系,可以对其应用构造型来表示不同类型的通信路径或通信的实现方式。

A. 对

B. 错

正确答案: 对

  1. (判断题)部署图与组件图都是用来对系统的物理方面进行建模,因此二者所表达的语义是完全相同的。

A. 对

B. 错

正确答案: 错

部署图主要描述系统在硬件上的部署情况,包括节点和设备之间的关系;而组件图则描述系统的逻辑结构和组件之间的关系。

  1. (判断题)如果所开发的软件只运行在一台机器上且所有与机器交互的设备都已经由操作系统进行连接.这类软件就不必对其设计部署图。

A. 对

B. 错

正确答案: 对

  1. (判断题)在部署图中,节点之间可以建立连接来表示节点间的通信。

A. 对

B. 错

正确答案: 对

  1. (判断题)节点就是一台计算机。

A. 对

B. 错

正确答案: 错

节点在部署图中并不仅仅代表一台计算机,它可以表示任何能够执行软件的实体,包括服务器、设备、硬件模块等。

用例图绘制

类图绘制

关系图示

在描述关系的强弱顺序时,通常认为:组合>聚合>关联>依赖 (组合和聚合都是关联关系的一种特例)

关联与依赖的区别:依赖仅仅只方法中呈现,比如猫吃鱼,在而管理是使用对应类作为成员

聚合与组合的区别:是否共存亡,离开整理能否单独存在,能则聚合(空心菱形),否则组合(鸟和翅膀)实心菱形

组合关系的多重对象—一对一一对多等等

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
classDiagram
    class People {
        - String name
        - String id
    }
    class Student {
    }
    class Admin {
    }
    class Interface {
        - display(): void
    }
    class Course {
        - String courseId
        - String courseName
    }
    class Controller {
        - manageCourse(): void
        - updateDatabase(): void
    }
    class Database {
        - String data
        - save(): void
        - load(): void
    }

    People <|-- Student
    People <|-- Admin
    Student --> Interface : association
    Admin --> Interface : association
    Interface --> "0..n" Course : association
    Interface ..> Controller : dependency
    Controller --> Database : composition
    Controller --> Course : manages
  

顺序图绘制

要点

参与者 :小人

对象: 矩形

生命线: 垂直虚线

返回消息:虚线箭头

发送消息:实线箭头

活动图绘制

状态图绘制