uml 参考题带答案版Word格式文档下载.docx
- 文档编号:3032377
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:38
- 大小:288.69KB
uml 参考题带答案版Word格式文档下载.docx
《uml 参考题带答案版Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《uml 参考题带答案版Word格式文档下载.docx(38页珍藏版)》请在冰点文库上搜索。
3.储户键入密码,ATM系统根据上面读出的卡上加密密码,对密码进行验证。
4.储户按“FASTCASH”按钮,并键入取款数量,取款数量应该是5美元的倍数。
5.ATM系统通知主银行系统,传递储户帐号和取款数量,并接收返回的确认信息和储户帐户余额。
6.ATM系统输出现金,ATM卡和显示帐户余额的收据。
7.ATM系统记录事务到日志文件。
7、什么是场景,一个用例可以有多少个主要场景和次要场景?
场景:
是使用系统的一个特定情节或通过用例的一个特定执行路径。
每个用例有且只有一个主要场景可以有多个次要场景
8、按照耦合度从高到低,说明类之间的关系有哪些?
由强到弱:
继承,组合,聚合,关联,依赖
9、标准类图中成员四个可见性分别用什么表示?
Public+Protected#Package~Private-
10、associationaggregationgeneralizationdependency分别代表什么关系
关联关系聚合关系泛化关系依赖关系
11、给出下面带关联类类图的另一种普通类图表示。
答另一种表示:
12、给出下面带限定关联的普通类图表示
答另一种表示
13、说明类图的抽象层次,并说明三个层次都在什么时候使用?
答:
类图可分为三个层次,即概念层,说明层和实现层。
概念层类图描述应用领域中的概念,一般地,这些概念和类有很自然的联系,但两者并没有直接的映射关系。
画概念层的类图时,很少考虑或不考虑实现问题,因此,概念层的类图应独立于具体的程序设计语言。
说明层类图描述软件的接口部分,而不是软件的实现部分。
实现层类图才真正考虑类的实现问题,揭示实现细节。
14、说明OCP原则的含义,并说明如何才能做到OCP?
含义:
一个模块在扩展性方面应该是开放的,在更改性面应该是封闭的。
如何做到:
解决开闭问题的一般方案是区分一个模块的接口和它的实现。
15、HP类、Epson类、Canon类分别表示不同的打印机,Output类与3个类关联。
运行时Output类根据当前与系统相连的哪种类型的打印机而分别使用不同类中的print()方法。
Output类中会有if…else或switch…case之类的分支结构来判断与系统相连的是哪种类型的打印机。
按照针对接口编成的方法和OCP法则,画出另一种解决方案的类图,使得再增加一个联想打印机时不需要修改现有的类的实现。
答案:
16、叙述接口分离原则的含义。
一个类要给多个客户类使用,那么可以为每个客户类创建一个接口,然后这个类实现所有这些接口,而不要只创建一个接口,其中包含了所有客户类的方法,然后这个类实现这个接口。
17、叙述针对接口编程的优缺点。
优点:
Client不必知道其使用对象的具体所属类。
一个对象可以很容易地被(实现了相同接口的)的另一个对象所替换。
对象间的连接不必硬绑定(hardwire)到一个具体类的对象上,因此增加了灵活性。
松散藕合(loosenscoupling)。
增加了重用的可能性。
提高了(对象)组合的机率,因为被包含对象可以是任何实现了一个指定接口的类。
缺点:
设计的复杂性略有增加
18、叙述描述设计模式的四个要素。
模式的名称,问题,解决方案,效果
19、应用单子模式,设计类Singleton,使其在整个程序中只能有一个实例。
画出类图写出代码。
classUSTax{
privatestaticUSTaxinstance;
privateUSTax();
publicstaticUSTaxgetInstance(){
if(instance==NULL)
instance=newUSTax();
returninstance;
}
}
20、说明在全局分析中,选定某个用例作为分析局部的基本原则是什么?
基本原则是在覆盖主要风险的基础上,涉及的内容越少越好。
21、简要说明分析类中实体类、控制类、边界类的作用。
边界类:
拟建系统和外部要素之间交互的边界
用于描述拟建系统外部环境与内部运作之间的交互,主要负责内容的翻译和形式的转换,并表达相应的结果。
边界类对拟建系统中依赖于外部环境的部分进行建模,具有良好的隔离作用。
控制类:
拟建系统要记录和维护的信息
用于描述一个UseCase所特有的事件流控制行为。
它自己通常不处理具体的任务,但它知道哪些类有能力完成具体的任务。
实体类:
拟建系统在运行中的控制逻辑
用于描述必须存储的信息,同时描述相关的行为。
实体类代表拟建系统中的核心信息,是拟建系统中最重要的部分,通常需要长期保留。
22、画出求解ax2+bx+c=0的活动图。
23、画出判断某年是否为闰年的活动图。
24、画出求三个数中求最大值的活动图。
25、说明活动图中泳道的作用。
为了描述活动的责任对象,明确表明哪些对象进行了哪些活动
26、如图,包A依赖包B(因为包A中的类U使用了包B中的类X);
反过来,包B又依赖包A(因为包B中的类Y使用了包A中的类V)包A,包B之间就形成了一种循环依赖。
如何消除?
答案
使用DIP设计原则为V抽象一个接口IVforY,并把该接口放在B包中。
这样就把Y对V的调用转化为:
V继承IVforY,Y调用IVforY
27、UML中建模软件、硬件的物理结构的两个图是什么图?
构件图配置图
28、RUP软件开发周期中有9个核心工作流,都是什么?
商业建模,需求分析,分析与设计,实现,测试,配置,设置和变更管理,项目管理,环境,
29、RUP的四个阶段?
初始阶段,细化阶段,构建阶段,交付阶段
30、说明RUP分析工作流中提交的五个制品。
分析模型,分析类,用例实现(分析),分析包,构架模型
31、各用一句话写出全局分析、局部分析、全局设计、局部设计、细节设计的侧重点?
“全局分析”侧重与定义拟建系统所采用的构架以及影响构架的要素
“局部分析”对需求作面向对象的转述
“局部设计”侧重于对实施环境的适应和折衷
32、经典的三层体系结构中表示层与领域层的职责,表示层与领域层的可见性
表现层:
展现给用户的界面,即用户在使用一个系统的时候他的所见所得
领域层:
针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理
33、RUP统一过程的核心思想是什么?
用例驱动,体系构架为核心的迭代化开发
34、RationalRose中的建模的四个视图是什么?
用例视图,逻辑视图,组件视图,.配置视图
35、面向对象分析与设计方法与面向功能(结构化)分析与设计方法的区别是什么?
结构化分析是针对数据流建立数据模型,功能模型,结构化设计也就是基于数据流的设计方法
面向对象则是可能的模拟人类习惯的思维方式,使开发软件的方法与过程尽可能的接近人类认识世界解决问题的方法与过程,使描述问题的问题空间与实现解法的解空间在结构上尽可能一致,将数据与施加在该数据之上的操作封装成类来模拟现实生活中的“对象”
与人习惯的思维方法一致
稳定性好
可重用性好
可维护性好
选择题
(1)用例(usecase)用来描述系统在对事件做出响应时所采取的行动。
用例之间是具有相关性的。
在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户帐号是否正确。
那么,用例“创建新订单”、“更新订单”与用例“核查客户帐号”之间是(A)关系。
A.包含(include)B.扩展(extend)
C.分类(classification)D.聚集(aggregation)
(2)用UML建立业务模型是理解企业业务过程的第一步。
业务人员扮演业务中的角色及其交互方式,例如航空公司的售票员是业务人员,电话售票员也是业务人员,他们之间的关系是(D)。
在UML中,用(A) 企业业务的工作流。
这种图显示工作流的步骤、决策点,以及完成每一步骤的角色和对象(答案自己做的不一定对)
1、A.关联关系(Association)B.依赖关系(Dependency)
C.聚集关系(Aggregation)D.泛化/概括关系(Generalization)
2、A.活动图(activitydiagram)B.业务图(businessdiagram)
C.用例图(usecasediagram)D.交互图(interactiondiagram)
(3)一个设计好的OO系统具有(B)
A.低内聚、低耦合的特征 B.高内聚、低耦合的特征
C.高内聚、高耦合的特征 D.低内聚、高耦合的特征
(11)在MVC模式中,(A)主要表现用户界面,(B)用来描述核心业务逻辑(自己做的)
(1)A.视图 B.模型 C.控制器 D.视图和控制器
(2)A.视图 B.模型 C.控制器 D.视图和控制器
1、以下不是设计模式的好处的是:
(D)
A它们为设计提供了沟通的通用语言。
B它们为现实世界的问题提供了解决方法。
C它们传播以前已经是成熟的设计。
D它们为新出现的所有问题提供了解决方法。
2、哪一种模式限制了创建类的实例数量(D)(自己做的,差不多对)
A.命令模式B.工厂方法模式C.策略模式D.单例模式
3、处理下面何种特性的类时,迭代器模式才会有用?
B
A.动态B.聚集C.单例D.规模小
4、命令模式对象的信息和信息的接收者。
A.分拆B.封装C.处理D.分离连接
5、UML中扩展机制之一约束(Constraints)是用下面哪种方式表示的?
A.只能用[textstring]这种方式B.只能用{textstring}这种方式
C.只能用(textstring)这种方式D.上面任何一种方式都可以
6、为了描述和理解系统中的控制机制,如为了描述一个设备控制器在不同情况下所要完成的动作,下面几个图中哪个是最有用的?
C
A.交互图B.活动图C.状态图D.类图
7、顺序图(sequencediagram)和交互图(interactiondiagram)的关系类似于下面哪种类型的关系。
A.类和对象B.类和参与者(actor)
C.Java语言和高级程序设计语言D.UML和Java
9、类和对象的关系类似于下面哪种类型的关系。
A
A.关联(association)和链(link)B.用例(Usecase)和参与者(actor)
C.包(package)和类图(classdiagram)D.聚集(aggregation)和组合(composition)
10、下面哪个图符表示UML中的实现关系?
B
A.
B.
C.
D.
11.下面哪个图符表示UML中的继承关系?
D
12.下面哪个图符表示UML中的依赖关系?
13.在课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:
Course)和方法remove(c:
Course),则类CourseSchedule和类Course之间的关系是:
A.泛化(generalization)关系B.组合(composition)关系
C.依赖(dependency)关系D.包含(include)关系
14.在课程注册系统中,下面哪组方法名和类名的命名是最合理的?
(每组中前面的为方法名,后面的为类名)B
A.register(),VectorStudentB.register(),Student
C.reg(),VectorStudentD.reg(),student
15.如下图所示,类PaymentController必须实现哪些方法?
A.create,process,reserve,acknowledge,commit
B.process,reserve,acknowledge,commit
C.payment,save
D.payment,create,save
16.计算机(Computer)由中央处理器、内存、硬盘、显示器、键盘、鼠标等组成。
那么Computer类和其他类(CPU,RAM,HardDisk,Monitor,Keyboard,Mouse)之间的关系是:
A.泛化关系B.实现关系
C.包含关系D.聚集关系
18.参考下图,下面哪种叙述是正确的?
A.Component是类,ImageObserver是状态,Component实现了ImageObserver。
B.Component是类,ImageObserver是接口,Component和ImageObserver是关联关系。
C.Component是类,ImageObserver是状态,Component和ImageObserver是关联关系。
D.Component是类,ImageObserver是接口,Component实现了ImageObserver。
(4)用例(usecase)用来描述系统在对事件做出响应时所采取的行动。
那么,用例“创建新订单”、“更新订单”与用例“核查客户帐号”之间是(A)关系。
(5)用UML建立业务模型是理解企业业务过程的第一步。
业务人员扮演业务中的角色及其交互方式,例如航空公司的售票员是业务人员,电话售票员也是业务人员,他们之间的关系是(D1)。
在UML中,用( A2 )企业业务的工作流。
这种图显示工作流的步骤、决策点,以及完成每一步骤的角色和对象。
C.用例图(usecasediagram)D.交互图(interactiondiagram)
(6)在UML提供的图中,( A1 )用于描述系统与外部系统及用户之间的交互;
(D2)用于按时间顺序描述对象间交互。
1、A.用例图 B.类图 C.对象图 D.部署图
2、A.活动图 B.状态图 C.协作图 D.序列图
(7)以下不是设计模式的益处的是:
A.它们为设计提供了沟通的通用语言。
B.它们为现实世界的问题提供了解决方法。
C.它们传播以前已经是成熟的设计。
D.它们为新出现的所有问题提供了解决方法。
(8)程序设计语言提供了基本类型及其相关操作,而(C)则允许开发者定义一种新的类型及其相关的操作。
A.对象 B.实例 C.类 D.引用
(9)( D )表示了对象间的“is-a”的关系。
Isa继承hasa合成是关联的一种usea依赖
A.组合 B.引用 C.聚合 D.继承
(10)( A1)反映了类间的一种层次关系,而(B2)反映了一种整体与部分的关系。
1、A.继承 B.组合 C.封装 D.多态
2、A.继承 B.组合 C.封装 D.多态
(21)在某个信息系统中,存在如下的业务陈述:
①一个客户提交0个或多个订单;
②一个订单由一个且仅由一个客户提交。
系统中存在两个类:
“客户”类和“订单”类,对应每个“订单”类的实例,存在( B)个“客户”类的实例;
对应每个“客户”类的实例,存在(D)个“订单”类的实例。
A.0个 B.1个 C.1个或多个 D.0个或多个
(12)采用UML进行建模过程中,类图是系统的一种静态视图,用(B)可以明确表示类之间的整体/部分关系。
A.继承关系 B.聚合关系 C.依赖关系 D.泛化关系
(14)封装是指把对象的(A)结合在一起,组成一个独立的对象。
A.属性和操作 B.信息流 C.消息和事件 D.数据的集合
(15)封装是一种(C)技术,目的是使对象的生产者和使用者分离,使对象的定义和实现分开。
A.工程化 B.系统维护 C.信息隐蔽 D.产生对象
(16)使得在多个类中能够定义同一个操作或属性名,并在每个类中有不同的实现的一种方法是(B)。
A.继承 B.多态性 C.约束 D.接口
(17)UML的(C)模型图由活动图、顺序图、状态图和合成图组成。
A.用例 B.静态 C.动态 D.系统
(18)在UML的需求分析建模中,(B)模型图必须与用户反复交流并加以确认。
A.配置 B.用例 C.包 D.动态
(19)UML客户需求分析产生的用例模型描述了系统的(D)。
A.状态 B.体系结构 C.静态模型 D.功能需求
(20)类和对象都有属性,它们的差别是类描述了属性的类型,而对象的属性必须有(C)。
A.正负号 B.动作 C.具体值 D.私有成员
(21)设计模式在面向对象系统设计中是(D)得一种形式。
A.软件调用 B.设计方法 C.子系统 D.软件复用
(22)顺序图描述(D)对象之间消息的传递顺序。
A.某个 B.单个 C.一个类产生的 D.一组
(23)顺序图和协作图建立了UML面向对象开发过程中的对象动态(A)模型。
A.交互 B.状态 C.体系结构 D.软件复用
(24)状态图可以表现(B)在生存期的行为、所经历的状态序列、引起状态转移的事件以及因状态转移而引起的动作。
A.一组对象 B.一个对象 C.多个参与者 D.几个子系统
(25)状态图描述一个对象在不同(A)的驱动下发生的状态迁移。
A.事件 B.对象 C.参与者 D.数据
(26)活动图中动作状态之间的迁移不是靠(B)触发的,当活动(动作)状态中的活动完成时迁移就被触发。
A.对象 B.事件 C.参与者 D.系统
1、在UML中下面哪个图用于描述系统与外部系统及用户之间的交互。
(B)
A.类图B.用例图C.对象图D.协作图
2、面向对象分析与设计是面向对象软件开发过程中的两个重要阶段,下列活动中哪个不属于面向对象分析阶段。
(C)
A.构造分析模型B.识别分析类C.确定接口规格D.评估分析模型
3、面向对象分析需要找出需求中客观存在的实体对象(概念),然后归纳抽象出实体类。
下面哪项是寻找实体对象的有效方法之一。
A.会议调查B.问卷调查C.电话调查D.名词分析
5、在进行面向对象设计时,采用设计模式能够(A)
A.复用相似问题的解决方案
B.改善代码的平台可移植性
C.改善代码的可理解性
D.增强软件的易安装性
6、在采用UML构建的用例模型中,参与者(Actor)与用例是模型的主要元素,其中参与者与用例之间可以具有什么关系。
( C )
A.包含 B.递归 C.关联 D.组合
7、当采用标准UML构建类模型时,若类B除具有类A的全部特性外,类B还可以定义新的特性以及置换类A的部分特性,那么类B与类A具有( B )关系,若类A的对象维持类B对象的应用或指针,那么类A与类B具有(A)关系。
A.聚合 B.泛化 C.传递 D.迭代
填空
1、阅读以下说明和Java代码,根据题意填空。
[说明]在一公文处理系统中,开发者定义了一个公文类OfficeDoc,其中定义了公文具有的属性和处理公文的相应方法。
当文件的内容或状态发生变化时,关注此OfficeDoc类对象的相应的DocExplorer对象都要更新其自身的状态。
一个OfficeDoc对象能够关联一组DocExplorer对象,当OfficeDoc对象的内容或状态发生变化时,所有与之相关联的DocExplorer对象都将得到通知,这种应用被称为观察者模式。
以下代码写在一个Java源文件中,能够正确编译通过。
[Java代码]
//Subject.java文件
publicinterfaceSubject{
publicvoidattach(ObserverDocExplorer);
publicvoiddetach(ObserverDocExplorer);
voidnotifyObservers();
//Observer.java文件
publicinterfaceObserver{
voidupdate(Subjectsubject);
//OfficeDoc.java文件
importjava.util.*;
publicclassOfficeDocimplementsSubject{//OfficeDoc类实现Subject接口
privateVectorObserverVector=newjava.util.Vector();
//存储与OfficeDoc相关联的DocExplorer对象
publicvoidattach(Observerobserver){
//将某DocExplorer对象与OfficeDoc相关联
ObserverVector.addElement(observer);
publicvoiddetach(Observerobserver){
//解除某DocExplorer对象与OfficeDoc的关联关系
ObserverVector.removeElement(observer);
publicvoidnotifyObservers(){
//当OfficeDoc对象状态已经发生变化时,通知所有的DocExplorer对象
EnumerationEnumeration=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- uml 参考题带答案版 参考 答案
![提示](https://static.bingdoc.com/images/bang_tan.gif)