单选题 在UML的通用机制中,______用于把元素组织成组;______是系统中遵从一组接口规范且付诸实现的物理的、可替换的软件模块。
单选题
  • A.包
  • B.类
  • C.接口
  • D.构件
【正确答案】 A
【答案解析】[解析] 本题是纯概念题,在UML的通用机制中,包用于把元素组织成组;构件是系统中遵从一组接口规范且付诸实现的物理的、可替换的软件模块。
单选题
  • A.包
  • B.类
  • C.接口
  • D.构件
【正确答案】 D
【答案解析】
单选题 对OO系统的技术度量的识别特征,Berard定义了导致特殊度量的特征。其中______抑制程序构件的操作细节,只有对访问构件必需的信息被提供给其他希望访问的构件。
  • A.局部化
  • B.封装
  • C.信息隐藏
  • D.继承
【正确答案】 C
【答案解析】[解析] 面向对象的软件和用传统方法开发的软件有本质性不同,为此,对OO系统的技术度量必须调整以适应那些区别OO和传统软件的特征。Berard定义了5个导致特殊度量的特征,分别是局部化、封装、信息隐蔽、继承和对象抽象技术。 ①局部化。局部化是软件的一个特征,它指明信息在程序中被集中的方式,例如,针对功能分解的传统方法围绕功能局部化信息,它们典型地以过程模块来实现。数据驱动方法围绕特定的数据结构局部化信息。在OO语境中,信息是通过封装数据和处理在类或对象的边界内而集中的。因为传统软件强调函数为局部化机制,软件度量着重于函数的内部结构或复杂性(如模块长度、内聚性或环路复杂性等)或函数间相互连接的方式(如模块耦合)。因为类是OO系统的基本单位,所以,局部化是基于对象的,因此,度量应该应用于作为一个完全实体的类(对象)。此外,在操作(函数、方法)和类间的关系没必要是一对一的。因此,反应类协作方式的度量必须能够适应一对多和多对一的关系。 ②封装。Berard定义封装为“一组项的包装(或捆绑在一起),(对传统软件的)低层封装例子包括记录和数组,而子程序(例如,过程、函数、子例程和段落)是封装的中层机制。” 对OO系统,封装包含了类的责任,包括其属性(和针对聚合对象的其他类)和操作,以及由特定的属性值定义的类的状态。封装通过将测度的焦点从单个模块改变到数据(属性)和处理模块(操作)包而影响度量。此外,封装鼓励在高抽象层的测度。将此层次的抽象同传统的度量相比较,传统的着重于布尔条件的计数或代码行数。 ③信息隐蔽。信息隐蔽隐瞒(或隐藏)程序构件的操作细节,只将对访问该构件必需的信息提供给那些希望访问它的其他构件。良好设计的OO系统应该鼓励信息隐蔽,因此,指明隐蔽所达到程度的度量应该提供了对OO设计质量的一个指标。 ④继承。继承是使得某对象的责任能够传播到其他对象的机制,继承出现在类层次的所有层面上,通常,传统的软件不支持该特征。因为继承是很多OO系统的关键特征,所以很多OO度量是关注于它的。 ⑤抽象。抽象是使得设计者能够关注程序构件(数据或过程)的本质性细节而不需考虑低层细节的机制。如Berard所说,抽象是一个相对概念,当我们移向更高的抽象级别时,我们忽略了越来越多的细节,即我们提供了对概念或项的更一般化的视图;当我们移向抽象的低层时,我们引入了更多的细节,即我们提供了概念或项的更特定的视图。 因为类是一种抽象,它可以在很多不同的细节级别上并以一系列不同的方式(例如,作为一个操作列表、作为一个状态序列、作为一系列协作)来观察,所以OO度量用类的测度(例如,每个应用的每个类的实例数、每个应用的参数化类数,以及参数化类和非参数化类的比率)来表示抽象。
单选题 采用UML分析用户需求时,用例UC1可以出现在用例UC2出现的任何位置,那么UC1和UC2之间的关系是______。
  • A.include
  • B.extend
  • C.generalize
  • D.call
【正确答案】 C
【答案解析】[解析] 在UML的用例中,用例之间有3种关系,分别是include(包含)、extend(扩展)和generalize(泛化)。当两个用例之间具有继承关系时,意味着子用例可以继承父用例的行为,并可以在此基础上添加新的行为或重置父用例的行为,子用例可以出现在任何位置上。因此,UC1和UC2之间的关系应该是泛化关系。
单选题 关于UML中的状态图和活动图的叙述中,______是错误的。
  • A.状态图和活动图都是对系统的动态方面进行建模的图
  • B.活动图是状态图的一种特殊情况,其中所有或大多数状态是活动状态
  • C.状态图显示从状态到状态的控制流,活动图显示的是从活动到活动的控制流
  • D.在对一个对象的生存期建模时,只能使用状态图
【正确答案】 D
【答案解析】[解析] 状态图和活动图都是UML用于对系统动态方面进行建模的行为图,其中状态图注重于由事件驱动的系统的变化状态;而活动图注重于从活动到活动的控制流。一个活动是一个状态机中进行的非原子的执行单元。活动图是状态机的一种特殊情况,其中全部或大多数状态是活动状态,并且全部或大多数转换是通过源状态中活动的完成来触发的。因为活动图是一种状态机,所以它可以适应状态机的全部特性。活动图和状态图在对一个对象的生命周期建模时都是有用的。