在面向对象技术中,将已有实例的特征稍作改变就可生成其他的实例,由一般到特殊,这种方式称为继承;反之,由特殊到一般,则称为泛化。
(1)B
在UML的类图中,类和类之间可能存在继承、泛化、依赖、关联、聚合、组合和实现等关系。而在统一UML的用例图中,用例和用例之间可能存在扩展、包含等关系。由于扩展和包含关系不是类图中类和类之间的关系类型,因此题干中所述的容器类和构件类之间不可能存在扩展和包含关系。
而从题干中不难看出:构件类继承了容器类,而且一个容器是由多个构件聚合而成,因此正确答案应选D。
(2)D
对象是由数据及其操作所构成的封装体,是系统中用来描述客观事物的一个封装,是构成系统的基本单位。类是现实世界中实体的形式化描述,类将该实体的数据和函数封装在一起。类和对象的关系详见本章考点精讲中的相关内容。
由此可知,对象是类的一个实例,而类是产生对象的来源,因此应选A。
(3)A
对象的三要素包括:对象标识、对象状态、对象行为。详见本章考点精讲中的相关内容。
(4)D
UML是一个通用的可视化建模语言,而不是一种可视化的程序设计语言。其他三项的说法都是正确的。
(5)A
在UML2.0中,每个视图都由一个或者多个图组成,一个图是系统体系结构在某个侧面的表示,所有的图在一起组成系统的完整视图。UML2.0共提供了14种不同的图,分为静态图(又叫结构图)和动态图(又叫行为图)两大类。动态图中的用例图用于描述系统与外部系统及用户之间的交互。
(6)D
用例之间的关系包括:关联关系、扩展关系、使用(或包含)关系、依赖关系和继承关系。
关联关系是一个参与者与一个用例发生交互的关系。
一个用例可能包含由几个比较复杂的步骤提取成专门的用例,这样得到的用例称为扩展用例,它扩展了原始用例的功能。扩展用例与其他扩展用例之间的关系称为扩展关系。在UML中,每个扩展关系标记为“《extend》”。
如果几个用例执行了同样的步骤,最好把这些公共步骤提取成独立的用例,称为抽象用例。抽象用例代表某种形式的“复用”,是降低用例之间冗余的工具。抽象用例可以被另一个需要使用其功能的用例访问。抽象用例和使用它的用例之间的关系称为包含关系。在UML中,在每个包含关系标记为“《include》”。
(7)B(8)C
在面向对象开发方法中,用UML表示软件体系架构,用到的5个视图是:用例视图、逻辑视图、进程视图、组件视图和部署视图。
(9)C
用例模型是系统功能和系统环境的模型,它通过对信息系统的所有用例、用户以及用例和用户之间的交互进行描述,表达了系统的功能性需求,可以帮助客户、用户和开发人员在如何使用信息系统方面达成一致的认识。用例是贯穿整个系统开发的一条主线,同一个用例模型既是需求工作流程的结果,也是分析设计工作以及测试工作的前提和基础。
综上所述可知本题正确的选项为C。
(10)C
根据考点精讲中的相关内容,可知面向对象的分析流程的第一步是“发现角色/参与者”。
(10)A