资源描述
不定项选择题:
1.开发过程中最困难的一个环节是( D )。
A.需求的收集 B.需求的分析 C.体系结构的设计 D.人员之间思想的交流
2.用例是从( B )的观点对系统行为的一个描述。
A.分析员 B.设计员 C.程序员 D.用户
3.顺序图所表达的是基于( A )的动态交互。
A时间 B空间 C人员 D对象
4.多重性5,10表示( B )。
A 5到10 B 5或10 C 5与10 D 5对10
5.在找出了类的继承关系后,通常可以用( B )来表示最上层的基类。
A密封类 B抽象类 C接口 D包
6.使用用例的难点在于( C )。
A发现高层用例 B发现用例之间的包含、扩展关系
C研究用例中每个场景的步骤 D将用例表示成用例图
7.产生类图和得到用例这两个步骤,位于前面的是( D )。
A产生类图 B得到用例
C同时进行 D没有固定的套式
8.面向对象理论中,对象之间发送信号,在UML状态图里就是( C )。
A状态 B变迁 C事件 D动作
9.当代软件工程的特点是( ABCD )。
A强调无缝集成 B开发阶段之间可以重叠
C开发阶段之间可以反复迭代
D尽可能多花时间在分析和设计上
10.GRAPPLE中最重要的段是( A )。
A需求收集 B需求分析
C设计 D开发
11.当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( B )模式。
A命令 B抽象工厂 C策略 D桥接
12.当我们想将抽象部分和实现部分分离时,可以使用( D )模式。
A工厂方法 B抽象工厂 C策略 D桥接
13.面向对象系统中功能复用的两种最常用技术是( AC )。
A类继承 B封装 C对象组合 D关联
14.对象组合是通过获得( B )而在运行时刻动态定义的。
A对象 B对其它对象的引用
C关联 D继承
15.在Lexi系统中,我们把所有文档元素都看作是图元,这样,它们就有了相同的( A )。
A接口 B类型 C名称 D属性
16.一个软件产品是否成功,因素有( ABCD )。
A完整正确的需求分析 B好的体系结构
C细致全面的测试 D合理的管理
17.当需要在项目中定制自己的元素时,可使用( B )。
A注释 B构造型 C约束 D包
18.表示一个操作中的参数和返回值的数据类型的称呼是( A )。
A型构 B职责 C约束 D注释
19.UML中的实现是一种特殊类型的继承,因为它是指从一个( C )继承。
A 密封类 B抽象类 C接口 D包
20.收集用例的方法是( A )。
A交谈 B填表格 C看文档 D实践
21.顺序图中,动态创建对象表示法的特点是( B )。
A在分支中画出对象 B在时间线相应位置画出对象
C用虚线画出对象 D要表示出相应的释放对象的时刻
22.产生类图和得到用例这两个步骤,位于前面的是( D )。
A产生类图 B得到用例
C同时进行 D没有固定的套式
23.顺序图所表达的是基于( A )的动态交互。
A时间 B空间 C人员 D对象
24.设计模式的基本要素有( A )。
A名称 B问题 C解决方案 D效果
25.当我们想用不同的请求对客户进行参数化时,可以使用( B )模式。
A工厂方法 B命令 C策略 D桥接
26.当我们想封装不同算法并使它们可相互替换时,可以使用( C )模式。
A工厂方法 B命令 C策略 D桥接
27.面向对象系统中的“黑盒复用”是指( C )。
A类继承 B封装 C对象组合 D关联
28.设计模式中应优先使用的复用技术是( B )。
A类继承 B对象组合 C参数化模板 D封装
29.对象组合是通过获得( B )而在运行时刻动态定义的。
A对象 B对其它对象的引用
C关联 D继承
30.Lexi系统中,我们之所以能对文档采用Composite模式,是因为文档的元素之间有
( B )关系。
A依赖 B递归层次 C继承 D实现
填空题:
1.软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述活动,也不描述如何开发产品,它只描述系统的组成元素及其相互的交互、协作。
2.一个UML模型只描述了一个系统要做什么,它并没告诉我们系统是如何被实施的。
3.接口是可以在整个模型中反复使用的一组行为,是一个没有属性而只有操作的类。
4.多重性指的是,某个类有多个对象可以和另一个类的单个对象关联。
5.当一个类的对象可以充当多种角色时,自身关联就可能发生。
6.在泛化关系中,子类可以替代父类。也就是说,后者出现的地方,前者都可以出现。但是反过来却不成立。
7.最通常的依赖关系是一个类操作的型构中用到了另一个类 的定义。
8.组成是强类型的聚集,因为聚集中的每个部分体只能属于一个 整体。
9.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用虚线表示,继承关系用实线表示。
10.UML背后的两个重量级概念是面向对象和用例。
11.状态图和类图、顺序图不同之处在于,后两种图能够对多个对象建立模型,而状态图只是对一个对象建立模型。
12.状态图中3个常用的动作是入口动作、出口动作和(do)动作。
13.顺序图中,消息用带箭头的水平实线表示;时间用垂直虚线表示。
14.当逻辑发生分支时,在顺序图中用消息分支 表示,在协作图中用嵌套序号表示。
15.顺序图强调的是交互的时间顺序,协作图强调的是交互的语境和参与交互的对象的整体组织。
16.GRAPPLE把开发过程分为5个段,之中又由许多动作组成。
17.GRAPPLE过程中,得到初步类图是在需求收集段,细化类图是在需求分析段。
18.每一个设计模式都集中于一个特定的面向对象设计问题或设计要点,描述了什么时候使用它、在另一些设计约束条件下是否还能使用,以及使用的效果和如何取舍。
19.面向对象系统中功能复用的两种最常用技术是类继承和对象组合。
20.设计模式中应优先使用对象组合而不是类继承。
简答题
3.简述如何在实际工作中发现类。
答:在与客户的交谈中,要注意客户用来描述业务实体的名词术语。这些名词可作为领域模型中的类。还要注意你听到的动词,因为这些动词可能会构成这些类中的操作。当得到一组类的核心列表后,应当向客户询问在业务过程中每个类的作用。他们的回答将告诉你这些类的职责。
4.简述怎样发现类之间的继承关系。
5.试使用UML的关系表示法,表示出大学计算机专业中如下这些课程的模型:C语言程序设计、C++语言程序设计、Windows程序设计、网络程序设计。注意抽象类和依赖的使用。
6.画出图形用户界面GUI的状态图,要包括屏幕保护状态。其中要表明相应的事件、动作。
7.顺序图和协作图中,消息有哪三种?各自的意义和表示法什么?
8.画出自动饮料销售机中,理想场景和“钱数不正确”的场景合并在一起的顺序图。
9.画出自动饮料销售机中,理想场景和“钱数不正确”的场景合并在一起的协作图。
10.简述接口对于构件的重要意义。
11.简述当代面向对象软件工程的特点和优点。
12.GRAPPLE
过程中,需求收集段的各个动作是什么?分别有什么工作产品?
13.简述实现继承和接口继承的区别?我们应该尽量使用哪一种?
14.只根据抽象类中定义的接口来操纵对象有什么好处?
15.可复用的面向对象设计的两条原则是什么?
16.设计模式的两大主题是什么?
17.面向对象系统中功能复用的两种最常用技术是什么?
18.Lexi系统的格式化问题中,我们引入了Compositor和Composition两个类来实现“策略”模式。请画出这两个类各自的继承关系和它们之间的协作关系。
19.Lexi系统的支持多种窗口平台的问题中,我们使用了Window和WindowsImp类来实现桥接模式。请画出这两个类各自的继承关系和它们之间的协作关系。
展开阅读全文