1
 软件工程
1.9.4 习 题 7

习 题 7

一、选择题

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.用例图

E.序列图和协作图    F.用例图和活动图

G.状态图和活动图    H.用例图和构件图

6.在面向对象技术中,对象是类的实例。对象有三种成分:(  )、属性和方法(或操作)。

A.标识    B.规则    C.封装    D.消息

7.面向对象程序设计语言为(  )提供支持。

A.面向对象用例测试阶段    B.面向对象分析阶段

C.面向对象需求分析阶段    D.面向对象实现阶段

8.关于面向对象技术及其优点,有如下说法:

①采用面向对象技术开发软件系统,提高了软件的重用性,进而提高了软件开发的效率。

②根据面向对象的观点,可以将目标系统分割成各种对象,这比传统的自顶向下进行的功能分解的分析及设计方法更符合人们的思维习惯。

③面向对象技术中一个重要原则是封装,它有两层含义:第一,对象是其全部属性和全部服务紧密结合而成的一个不可分割的整体;第二,对象是一个不透明的黑盒子,表示对象状态的数据和实现操作的代码都被封装在黑盒子里面。使用一个对象时,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法。从外界看不见,也就更不可能从外界直接修改对象的私有属性了。这种封装的原则使得对象的使用者只关注其外部接口而不必关心其内部实现,对象之间的关系也清楚了许多,修改和维护软件也变得容易起来。

④面向对象技术只适合开发大型的软件系统。

以上说法正确的有(  )。

A.①②③    B.①②④    C.①②③④    D.③④

9.面向对象的测试可分四个层次,按照从低到高的顺序,这四个层次是(  )。

A.类层—模板层—系统层—算法层    B.算法层—类层—模板层—系统层

C.算法层—模板层—类层—系统层    D.类层—系统层—模板层—算法层

10.下列关于面向对象的分析与设计的描述,正确的是(  )。

A.面向对象设计描述软件要做什么

B.面向对象分析不需要考虑技术和实现层面的细节

C.面向对象分析的输入是面向对象设计的结果

D.面向对象设计的结果是简单的分析模型

二、简答题

1.在需求分析中如何选出候选的类对象?2.如何发现对象的服务?

3.什么是动态模型?如何建立动态模型?

4.什么是功能模型?数据流图在功能模型建模中有什么作用?

5.简述面向对象设计的准则。

6.面向对象设计的主要技术有哪些?

7.面向对象程序设计语言有哪些主要技术特点?

8.如何选择面向对象程序设计语言?

9.面向对象软件的测试有什么特点,有哪些测试工具?

10.在一个客户信息系统中存在两种类型的客户:个人客户和集团客户。对于个人客户,系统保存了其客户标识和基本信息(包括姓名、住宅电话和Email);对于集团客户,系统中保存了其客户标识,以及与该集团客户相关的若干联系人的信息(包括姓名、住宅电话、Email、办公电话和职位)。请画出客户信息系统的类图。