当前位置:文档之家› uml综合练习题及答案

uml综合练习题及答案

一、选择题1.软件设计中的()设计指定各个组件之间的通信方式以及各组件之间如何相互作用。

A.数据 B.接口 C.结构 D.组件2.UML 是一种()。

A.面向对象的程序设计语言B.面向过程的程序设计语言C.软件系统开发方法D.软件系统建模语言3.面向对象中的()机制是对现实世界中遗传现象的模拟,通过该机制,基类的属性和方法被遗传给派生类。

A.封装 B.多态C.继承 D.变异4.下面关于类、对象和实例的叙述中,错误的是()。

A 类是创建对象的模板B 对象是类的实例C 类是对象的实例D 类是一组具有共同特征的对象集合5.下列不在UP的初始阶段中完成的A编制简要的愿景文档 B粗略评估成本C定义大多数的需求 D业务案例6.下面那一种模式是不属于GRASP模式的A 多态(Ploymorphism)B 行为对象(pure fabrication)C 中间者(Indirection)D GoF7.类是一组具有相同属性的和相同服务的对象的抽象描述,类中的每个对象都是这个类的一个。

9.一个对象通过发送来请求另一个对象为其服务。

A调用语句B消息C命令D口令10.下面的述中,对迭代和增量式开发描述错误的是()。

A. 迭代是时间定量的B. 系统是增量式增长的C. 迭代是以循环反馈和调整为核心驱动力的D. 当迭代无法依照时间表来集成、测试和稳定局部系统时,可以推迟完成日期。

11.有关UP阶段的说法,不正确的是()A. UP的一个开发周期(以系统发布作为产品结束标志)由多个迭代组成;B. 初始阶段不是需求阶段,而是研究可行性的阶段。

C. 细化阶段就是需求或设计阶段;D. 细化阶段就是迭代地实现核心架构并解决高风险问题的阶段;12.下面关于领域模型的描述,不正确的是()A. 领域模型就是软件对象图;B. 应用UML表示法,领域模型被描述为一组没有定义操作的类图;C. 创建领域模型的原因之一是帮助理解关键业务概念和词汇;D. 领域模型和领域层使用相似的命名可以减少软件表示与我们头脑中的领域模型之间的差异。

13.封装是指把对象的()结合在一起,组成一个独立的对象。

A 属性和操作B 信息流C 消息和事件D 数据的集合14.封装是一种()技术,目的是使对象的生产者和使用者分离,使对象的定义和实现分开。

A 工程化B 系统维护C 信息隐藏D 产生对象15.面向对象方法中的()机制使子类可以自动地拥有(复制)父类全部属性和操作。

A 约束B 对象映射C 信息隐藏D 继承16.使得在多个类中能够定义同一个操作或属性名,并在每一个类中有不同的实现的一种方法是()。

A 继承B 多态性C 约束D 接口17.顺序图和协作图主要用于对用例图中()的建模,用它们来描述用例图的行为。

A 数据流 B控制流 C 消息流 D 数据字典18.顺序图的模型元素有()、消息、等,这些模型元素表示某个用例中的若干个对象和对象之间所传递的消息,来对系统的行为建模。

A 对象B 箭线C 活动D 状态19.顺序图描述()对象之间消息的传递顺序。

A 某个B 单个C 一个类产生的D 一组20.顺序图和协作图建立类UML面向对象开发过程中的对象动态()模型。

A 交互B 状态C 体系结构D 软件复用21.状态图可以表现()在生存期的行为、所经历的状态序列、引起状态转移的事件以及因状态转移而引起的动作。

A 一组对象B 一个对象C 多个执行者D 几个子系统22.状态图描述一个对象在不同()的驱动下发生的转台迁移。

A 事件B 对象C 执行者D 数据23.一个()迁移图符可以有多个源状态或目标状态,它们可以把一个控制分解为并行运行的并发线程,或多个并发线程接合成单个线程。

A 状态B 对象C 活动D 同步并发24.活动图中动作状态之间的迁移不是靠()触发的,当活动(动作)状态中的活动完成时就被触发。

A 对象B 事件C 执行者D 系统25.状态图和活动图建立了UML面向对象开发过程中的对象动态()模型。

A 交互B 状态C 体系结构D 软件复用26.UML中关联的多重度是指( )A 一个类有多个方法被另一个类调用B 一个类的实例能够与另一个类的多个实例相关联C 一个类的某个方法被另一个类调用的次数D 两个类所具有的相同的方法和属性27.在某个信息系统中,存在如下的业务述:①一个客户提交0个或多个订单;②一个订单由一个且仅由一个客户提交。

系统中存在两个类:“客户”类和“订单”类。

对应每个“订单”类的实例,存在(1)B “客户”类的实例;对应每个“客户”类的实例,存在 D(2)个“订单”类的实例。

供选择的答案:A 0个B 1个C 1个或多个D 0个或多个28. 什么是关联类?( )A 它描述了可以存在于类之间的各种关系。

B 它在另外两个类之间的关联中添加属性和/或行为。

C 它关联对象和该对象所属的类。

29. 为什么层在子系统设计中非常重要?( )(多选题)A 更容易改变实现方式B 减少了实现代码中类的数量C 提高了重用性D 降低了复杂性30. 如果两个顾客在世界的不同地方,要购买音乐会的最后一票,如何分配这票?( )AB 使顾客参与软件“竞争”,以买到票。

C 31. 如图6-12所示: (1)X1、X2和X3是什么?( )A 角色 B Prima donnas C 参与者(2)下面哪个语句是正确的?( )A X3可以使用UC4与系统交互。

B X1可以使用UC1和UC4与系统交互。

C X1、X2与X3不同。

D UC3是没有步骤的抽象用例。

(3)下面哪个语句是正确的?( )A UC5是UC4的补充部分。

B UC4是UC5的可选部分。

C UC1是没有用的。

D UC2是UC4的可选部分。

E UC4是UC2的补充部分。

UC5X332. 如图所示,下面哪些述是正确的?( )A 汽车总是有相同的车身B 一些汽车有备用轮胎C 汽车有一个引擎,引擎在汽车之间不共享D 所有的汽车都有四或五个轮胎E 汽车必须有至少一个司机F 乘客不可能是司机33.如图,A 、B 和C 是什么对象?A A 是实体,B 是控制者,C 是边界。

B A 是边界,B 是实体,C 是控制者。

C A 是实体,B 是边界,C 是控制者。

D A 是控制者,B 是实体,C 是边界。

A B C34.领域模型是一组表示( ),在设计工作中广泛用来启发设计软件对象.A 真实世界的概念类B 虚拟世界的概念类C 软件部件的模型D 硬件部件的模型35.UML提供了一系列的图支持面向对象的分析与设计,其中____(1)_F__给出系统的静态设计视图;___(2)___B_对系统的功能进行组织和建模是非常重要的;____(3)_C__和____(4)__E_都是描述系统动态视图的交互图,其中___(5)_C__描述了以时间顺序组织的对象之间的交互活动,___(6)_E___强调收发消息的对象的组织结构。

A 状态图B 用例图C 序列图D 部署图E 协作图F 类图36.类是一组具有相同属性的和相同服务的对象的抽象描述,类中的每个对象都是这个类的一个(1)c 。

类之间共享属性与服务的机制称为d(2)。

一个对象通过发送b(3)来请求另一个对象为其服务。

(1)A例证B用例C实例D例外(2)A多态性B动态绑定 C静态绑定 D继承(3)A调用语句B消息C命令D口令37.领域模型又称为()A.业务流程模型 B.用例模型 C.概念模型 D.设计模型38.在面向对象的方法学中,对象可看成是属性及对于这些属性的专用服务的封装体。

封装是一种(1)技术,封装的目的是使对象的(2)分离。

(1)A组装B产品化C固化D信息隐藏(2)A定义和实现B设计和测试C设计和实现D分析和定义39.如果你想对一个类的意义进行描述,那么应该采用?A. 标记值B. 规格描述C. 注释D.构造型40.软件复用是面向对象系统分析与设计的核心支持技术之一,软件复用的核心是()。

A 对象类B 软件构件技术C 设计模式 D模块41.软件测试通常采用黑盒测试和白盒测试。

其中黑盒测试根据软件的( a)设计测试用例,白盒测试根据软件的(c )设计测试用例。

A.功能规格说明B.需求说明C.部结构和逻辑D.数据流图42.将软件从一种计算机环境转换到另一种环境运行的难易程度是指软件的(B)。

在规定的条件下和规定的时间间隔,按设计要求,软件成功运行的特性称为(A )。

A.可靠性 B.可移植性 C.可使用性 D.灵性43.原型化方法是动态确定软件需求的方法之一,该方法适应于()的系统。

A.需求不确定性高 B.需求确定 C.结构简单 D.可移植性好44.瀑布模型是传统的软件开发过程模型,它强调各阶段的严格性,其主要缺点是()。

A.需要软件人员和用户进行沟通 B.需要付较高的维护成本C.开发的软件不易于移植 D.不适应需求不确定的软件开发45.软件设计中的()设计指定各个组件之间的通信方式以及各组件之间如何相互作用。

A.数据B.接口 C.结构 D.组件Array 46.()不是面向对象程序设计语言。

A.XML B.Java C.C# D.Simula47.在画SSD图时, 应该如何对待所涉及的系统:A.详细描述其部结构及其功能;B.简单描述其部结构,但是罗列系统所有的功能C.详细描述其部结构,并不列出系统的功能D.不对系统的部结构与功能进行描述.48.定义大多数的需求和围的工作是在UP中的阶段完成的。

A初始阶段 B细化阶段 C构造阶段D提交阶段49.下列不在UP的初始阶段中完成的A编制简要的愿景文档B粗略评估成本C定义大多数的需求D业务案例二、简答题1.统一过程中有哪四个阶段,各阶段需要完成的主要工作有哪些?答:1)初始阶段:编制简要的愿景文档、业务案例、确定围、粗略评估成本。

2)细化阶段:细化愿景文档、迭代地实现核心构架、解决高风险的问题、定义大多数的需求和围、进一步评估成本3)构造阶段:迭代地实现系统的其余部分、准备部署4)提交阶段:beta 测试、部署2.统一过程中的核心工作流有哪些?答:业务建模、需求分析、设计、实现、测试。

3.UP的核心思想有哪些?答:短时间盒的迭代式开发开发过程中不断进行调整在早期的迭代中解决高风险和高价值的主要问题不断与用户衔接,及时得到反馈意见早期注意构造核心的体系结构早期进入实现和测试,不断进行质量检验使用用况(use case)可视化建模(用UML)仔细地管理需求控制变更4.什么是增量开发?答:增量开发包括两层意思:1)对复杂的用况分多次迭代,一部分一部分地实现2)将所有用况按其优先级分别安排在不同的迭代中实现三、画图题1.已知三个类A.B和C.其中类A由类B的一个实类和类C的1个或多个实类构成.请画出能够正确表示类A,B和C之间关系的UML类图。

2.画出下面场景的顺序图1.收款员(Cashier)启动一次销售(makeNewSale())2.收款员输入商品标识(enterItem(itemID,quantity))3.销售结束,系统计算并显示总金额(endSale())4.顾客付款,系统(System)处理支付。

相关主题