可视化建模与UML习题集.docx
《可视化建模与UML习题集.docx》由会员分享,可在线阅读,更多相关《可视化建模与UML习题集.docx(39页珍藏版)》请在冰豆网上搜索。
可视化建模与UML习题集
专题一&专题二:
UML概述&面向对象基础
一、单项选择题
1、组成UML构造块三大要素为:
( )
A、事物、元素、关系B、事物、关系、图形
C、事物、组件、图形D、事物、图形、结构
2、UML中的事物分为哪几类?
( )
A、结构、行为、分组、备注等四类事物B、结构、图形、行为、分组等四类事物
C、类、行为、分组、备注等四类事物D、分组、备注、结构、图形等四类事物
3、UML中的关系分为哪几种?
( )
A、依赖关系、类关系、一般化关系、合作关系
B、依赖关系、泛化关系、实现关系、继承关系
C、依赖关系、关联关系、泛化关系、实现关系
D、依赖关系、关联关系、泛化关系、合作关系
4、所谓的4+1视图是指( )
A、DesignView、InteractionView、ImplementationView、DeploymentView、useCaseView
B、InteractionView、ImplementationView、DeploymentView、CustomerView、useCaseView
C、InteractionView、ImplementationView、DeploymentView、ProcessView、useCaseView
D、DesignView、InteractionView、ImplementationView、ProcessView、useCaseView
5、在UML中属于静态视图的是( )
A、顺序图、协作图、包图、类图B、对象图、类图、构件图、包图
C、顺序图、用例图、对象图、类图D、对象、类图、构件图、部署图
6、下列关于UML叙述正确的是( )
A、UML是一种语言,语言的使用者不能对其进行扩展
B、UML仅是一组图形的集合
C、UML仅适用于系统的分析与设计阶段
D、UML是独立于软件开发过程的
7、下列描述中,哪个不是建模的基本原则()
A、要仔细的选择模型
B、每一种模型可以在不同的精度级别上表示所要开发的系统
C、模型要与现实相联系
D、对一个重要的系统用一个模型就可以充分描述
8、下列描述中,哪个不是软件与硬件的区别()
A.软件是被开发或设计的,而不是被制造的;
B.软件不会“磨损”,但会“退化”;
C.软件的开发至今尚未摆脱手工艺的开发方式;
D.软件开发与硬件开发的流程一样。
9、UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。
其中( )是面向对象系统建模中最常用的图,用于说明系统的静态设计视图;当需要说明系统的静态实现视图时,应该选择( );当需要说明体系结构的静态实施视图时,应该选择( )。
(1). A.组件图 B.类图 C.对象图 D.部署图
(2). A.组件图 B.协作图 C.状态图 D.部署图
(3). A.协作图 B.对象图 C.活动图 D.部署图
10、Blue软件公司就目前的“通信网关”项目中存在的质量问题,召开了一次产品质量问题鉴定会,会议得出的结论是:
该系统的质量问题是由于系统设计阶段未能正确地设计产品的类图而导致的。
请问以下哪个项目成员应该为问题负主要责任。
()
A软件开发工程师B系统架构师C系统分析员D软件测试工程师
11、对象技术是()
A、一系列指导软件构造的原则
B、一种新的已被认可的理论
C、GradyBooch发明的一种新的动态的语言
D、仅仅基于模块化的原则
二、填空题
1、UML是的英文缩写。
2.UML中的图分为:
_______、对象图、____、_____、活动图、_____、协作图、_____、
部署图九种。
三、简答题?
1.什么是建模?
为什么要建模?
2.UML包括哪些组成部分?
3.什么是面向对象?
面向对象的特点是什么?
4.UML图有哪些?
其中哪些是静态图?
哪些是动态图?
专题三:
类图(对象图、包图)
一、单项选择题
1.UML中类的有三种,下面哪个不是其中之一()
A.实体类
B.边界类
C.控制类
D.主类
2.在UML中,类之间的关系有一种为关联关系,其中多重性用来描述类之间的对应关系,下面哪个不是其中之一()
A.0….1
B.0….*
C.1….*
D.*….*
3.通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是UML中的类成员访问限定性()
A.公有的(public)
B.受保护的(protected)
C.友员(friendly)
D.私有的(private)
4、在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:
Course)和方法remove(c:
Course),则类CourseSchedule和类Course之间的关系是:
( )
A、泛化关系B、组成关系C、依赖关系D、包含关系
5、类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是()关系。
( )
A、实现B、关联C、依赖D、泛化
6、在UML2.0版本中的图形表示方式中,“包”的表示方式是下列图形中的哪一个?
( )
A、
B、
C、
D、
7、在UML中下列图形代表什么关系?
( )
A、组成关系B、依赖关系C、聚集关系D、泛化关系
8、在UML中下列图形代表什么关系?
()
A、一般化关系B、依赖关系C、聚集关系D、泛化关系
ABCD
9、汽车(Car)由轮子、发动机、油箱、座椅、方向盘等组成。
那么car类和其他类(Wheel、Engin、Tank、Chair、SteeringWheel)之间的关系是:
()
A、泛化关系(Generalization)B、实现关系(Realization)
C、包含关系(Inclusion)D、组合关系(Composition)
10.在下面的图例中,哪个用来描述注释()
ABCD
11.关于包的描述,哪个不正确()
A.和其他建模元素一样,每个包必须有一个区别于其他包的名字;
B.包中可以包含其他元素,比如类、接口、组件、用例等等;
C.包的可见性分为:
public、protected、private;
D.引入(import)使得一个包中的元素可以单向访问另一个包中的元素;
E.导出(export)使的一个包中的元素可以单向访问另一个包中的元素;
12、消息传递是对象间通信的手段,一个对象通过向另一个对象发送消息来请求其服务,一个消息通常包括:
( )
A、发送消息的对象的标识、调用的发送方的操作名和必要的参数
B、发送消息的类名和接收消息的类名
C、接收消息的对象的标识、调用的接收方的操作名和必要的参数
D、接收消息的类名
13、在一个网络游戏系统中,定义了类Cowboy和类Castle,并在类Cowboy中定义了方法open(c:
Castle)和方法Close(c:
Castle),则类Cowboy和类Castle之间的关系是:
……( )
A、依赖(dependency)关系B、组成(composition)关系
C、泛化(generalization)关系D、包含(include)关系
14、根据下面的代码,判断下面那些叙述是正确的?
()
publicclassHouseKeeper{
privateTimeCardtimecard;
publicvoidclockIn(){
timecard.punch();
}
}
A、类HouseKeeper和类TimeCard之间存在关联(Association)关系;
B、类HouseKeeper和类TimeCard之间存在泛化(Generalization)关系;
C、类HouseKeeper和类TimeCard之间存在实现(Realization)关系;
D、类HouseKeeper和类TimeCard之间存在包含(Inclusion)关系
15、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的()中。
①用例及其协作之间是(A)关系。
②类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是(C)关系。
③在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是(B)关系。
④森林和树木之间是(E)关系。
关系。
⑤在MFC类库中,Window类和DialogBox类之间是(D)
A实现B关联C依赖D泛化E聚合
16、已知类A需要类B提供的服务,下列所描述的四种情况中,哪种情况不好把类A和类B之间的关系定义成依赖关系()
A、类A中存在两个操作都需要访问类B的同一个对象
B、类A的某个操作内部创建了类B的对象,而其他操作均与类B无关
C、类A的某个操作其参数是类B的对象,而其他操作均与类B无关
D、类B是一个全局变量
17、“一个研究生在软件学院做助教(teachingassistant),同时还在校园餐厅打工做收银员(cashier)。
也就是说,这个研究生有3种角色:
学生、助教、收银员,但在同一时刻只能有一种角色。
”
根据上面的陈述,下面哪个设计是最合理的?
()
AB
CD
18、类X与类Y有许多的属性,但是它的行为与类Y稍微有所不同;这时可以认为类X是类Y的一种特例;则类X和类Y之间是()关系。
A、泛化关系B、关联关系C、依赖关系D、实现关系
19、关于类和对象的关系,下列说法中哪个是错误的()
A、每个对象都是某个类的实例
B、每个类某一时刻必定存在对象实体
C、类是静态的描述
D、对象是动态的实例
二、填空题
1.下图中类的名字是:
____________类中的成员属性是:
_________类中的行为(方法)是:
___________________。
2、在UML中分组元素是包。
3、在UML模型图中,最适合用来设计数据库大纲的图形是类图。
4、在对系统建模时、接口可分为、。
5、下图所表示的含义是WashingMachine实现了接口ControlKnob,Person使用了接口ControlKnob
三、简答题
1、在UML建模中使用“包”是为了达到怎样的效果?
2、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。
现在提出一个新的需求:
"一个教师也可以是某些课程的学生",那么下面设计A~C中哪一个是最好的?
为什么?
设计A:
设计B:
. 设计C:
答案:
设计___最好。
理由:
3、请为下面这段编译正确的代码,补充类图。
pulicclassStudent{
privateStringname;
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetName(){
returnthis.name;
}
}
4、请参考下图,回答问题:
图A.2
1)图中的实体类为_____________________
2)图中的控制类为______________________
3)图中的边界类为_____________________
4)“借书界面”类中的成员属性有____________________
四、根据下面的陈述画出类图
1)学生包括本科生、研究生两种。
2)研究生的一部分利用课余时间担任助教。
3)教师包括讲师和教授两种。
4)一名助教可以为一位讲师或一位教授助课,一位讲师只能有一名助教,一位教授可以有5名助教。
五、按如下描述画出一个自治机器人的类图。
这张图的焦点是聚集在那些让机器人在路上行走的机制所对应的类上。
你可以发现一个虚类Motor和两个从它派生出来的类:
SteeringMotor和MainMotor。
这两个类都从它的父亲Motor继承了五个方法:
move()、stop()、resetCounter()、statues()、distance()。
这两个类又是另一个类Driver的一部分。
类PathAgent和Driver有一个1对1的关系,和CollisionSensor有1对n的关系。
【问题:
】综上所述请你用UML来绘制分析类图。
六、请根据以上题目描述,给出系统的UML类图设计方案,并用Java代码予以实现。
系统名称:
农夫果园游戏系统
人物角色:
农夫(Farmer)、市场调查员(Inquirer)、农场主(Boss)
系统实物:
各种果树(Fruit)、果园(Garden)
功能需求:
1、农夫可以根据市场行情种植各种水果;
2、市场调查员可以了解市场行情;
3、农场主可以向农夫、市场调查员发布命令
4、各种果树都具有种植(plant)、成长(grow)、收获(harvest)行为;
5、果园是人物和实物进行交易的经营场所。
专题四:
用例图
一、单选题
1、用例图是从谁的角度出发对如何使用系统进行描述的?
( )
A、用户B、系统分析师C、系统设计师D、程序员
2、在UML2.0版本中。
表示是用例间什么关系()
A、关联关系B、依赖关系C、扩展关系D、包含关系
3、用例图展示了外部参与者与系统所提供的用例之间的连接,UML中的外部参与者是指()
A.人员B.单位C.人员或单位D.人员或外部系统
4、在UML的用例图图形表示方式中,“角色.”的表示方式是下列图形中的哪一个()
A、
B、
C、
D、
5、包含关系是在下面哪种关系的基础上构造的?
()
A、组成关系B、依赖关系C、聚合关系D、泛化关系
6、在用例之间,会有三种不同的关系,下列哪个不是他们之间可能的关系()
A.包含(include)B.扩展(extend)
C.泛化(generalization)D.关联(connect)
7、在ATM自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面哪个是“Actor”()
A.用户B.ATM取款机
C.ATM取款机管理员D.取款
8、用例(usecase)用来描述系统在对事件做出响应时所采取的行动。
用例之间是具有相关性的。
在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户帐号是否正确。
那么,用例“创建新订单”、“更新订单”与用例“核查客户帐号”之间是___关系。
()
A.包含(include)B.扩展(extend)C.分类(classification)D.聚集(aggregation)
9、系统分析员Analyst在做储蓄系统的需求开发时,发现:
①“取款”用例、②“查询余额”用例、③“更改密码”用例都要使用④“验证卡号和密码”用例的功能。
那么①②③3个用例与用例④的关系是( )
A、使用关系B、扩展关系C、组成关系D、包含关系
10、在电影院管理系统中,有3个用例,分别是“购买电影票”、“预定电影票”、“登记电影制片厂”,其中“购买电影票”是高风险、高业务价值的用例;“预定电影票”是低风险、高业务价值的用例;“登记电影制片厂”是低风险、低业务价值的用例。
在开发时准备采用迭代式开发,先实现其中的一个用例,那么首先应实现哪个用例?
()
A、“登记电影制片厂”用例B、“预定电影票”用例
C、“购买电影票”用例D、3个用例中的任意一个都可以
11、Mentor是一家集团公司,业务范围涉及到制造业、服务业和高科技产业,最近公司准备实施企业资源规划系统(ERP),因此委托Butterfly公司负责该项工作。
Butterfly公司的专家为了能更好地了解该公司目前业务资源的使用情况,决定建立UML模型与以阐释,那么Butterfly的专家应该建立哪种模型图?
( )
A、用例图B、类图C、业务对象图D、顺序图
12、下列选项中,那些是用例描述应该包含的内容(多选)()
A、概述B、基本事件流
C、可选事件流D、对象模型E、前置条件
二、简答题
1.什么是参与者?
如何确定系统的参与者?
2.什么是用例?
如何确定系统的用例?
3.用例之间有哪些关系?
对每一种关系,请举出一个实际的例子,并画出用例图。
4.说明在Browser中删除一个模型元素和在Diagram中删除一个模型元素的区别。
5.Use-Case模型可以包括哪些内容,列举至少3种。
三、分析题
1、某电话公司决定开发一个管理所有客户信息的交互式网络系统。
系统功能如下:
浏览客户信息:
任何使用Internet的网络用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。
登录:
电话公司授予每个客户一个账号号。
拥有授权账号的客户,可以使用系统提供的页面设置个人密码,并使用该账号和密码向系统注册。
修改个人信息:
客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。
删除客户信息:
只有公司的管理人员才可以删除不再接受公司服务的客户的信息。
【问题】在需求分析阶段,采用用例图描述系统功能需求,如上图所示,请指出图中的A、B、C和D分别是哪个用例?
2、请仔细阅读下图,描述该图的基本含义:
该图的基本含义:
四、在医生的办公室里接待员、护士和医生使用病人记录和计划安排系统。
当病人第一次来这里看病时,接待员使用该系统来输入病人信息,并且他们安排所有的预约。
护士使用系统来跟踪病人每次看病的结果并输入护理病人的信息,如医疗和诊断。
护士也可以访问这些信息以打印病人诊断结果或病人看病历史。
医生主要用这个系统来查看病人的病史,偶尔也输入病人的医疗信息,但通常他让护士输入这些信息。
【问题】根据上面的陈述,请你分析出参与者和用例,并绘制出用例图。
五、网络在线售票订位系统的功能如下:
客户有一般客户和企业客户两种,可以建立在线订位事件、事件确认,执行在线信用卡付费、个人或团体账号修改和管理、在线个人事件查询;系统操作者可以建立在线销售订位事件、查询目前销售订位状况、个人或团体账号修改和管理;系统设计者可以建立在线售票订位事件、查询目前销售订位情况、在线系统维护和功能增加、系统环境设置。
【问题】请依照上述描述,并绘制出需求用例模型
六、大学选课系统是与学生有着紧密联系的系统。
学生可以登录该系统选修课程,查看分数。
教授可以登录到系统选择课程授课,提交学生成绩。
学校另有一个系统里面保存有课程目录信息,选课系统需要和课程目录系统通讯以取得课程目录信息。
【问题】对该“大学选课”系统进行面向对象分析并运用UML建模设计出用例图。
七、基于WEB的网上购物系统越来越受到人们的关注,例如小型电子商务订单处理系统,使得客户可以给购物车添加项目,查看购物车,查看具体项目,购买商品,删除购物车中的项目,浏览商品,提供反馈单;库房经理可以进行盘点,返回库房项目,提供订单;采购经理可以增加销售的新项目,删除销售项目,购买库存。
【问题】对该“订单处理系统”进行面向对象分析并运用UML建模设计出用例图。
专题五:
活动图
一、单选题
1.下面哪个不是活动图中的基本元素()
A.状态、分支
B.转移、汇合
C.泳道、转移
D.用例、状态
2、下列所绘制的模型片段、属于何种图形?
( )
A、状态图B、活动图C、协作图D、顺序图
3、如果要对一个学院课程注册系统中的三个主要角色学生、教授、教务长的工作流程建模,那么需要使用下面的哪个图?
( )
A、活动图B、类图C、交互图D、部署图
4、在UML中,用来表示企业业务的工作流。
这种图显示出工作流中的步骤、决策点,以及完成每一步骤的角色和对象。
这种图形是( )
A.活动图B.业务图C.用例图D.交互图
5、在下面的图例中,哪个用来描述活动(activity)()
ABCD
6、在UML中,__把活动图中的活动划分为若干组,并将划分的组指定给对象,这些对象必须履行该组所包括的活动,它能够明确地表示哪些活动是由哪些对象完成的。
A.组合活动 B.同步条 C.活动 D.泳道
7、Innovation公司正在为Rose开发插入件,使得Rose可以把OOA/OOD模型以各种图形格式导出,如JPEG格式、BMP格式、GIF格式等。
在导出时,会根据不同的算法来生成相应的图形文件,这些算法很复杂。
为了描述这些算法,在下面这些图中,哪个图是最合适的?
()
A、活动图B、类图C、交互图D、部署图
8、Satopia是一家大型公司,由于公司业务的扩大,准备对公司已有的软件系统进行升级,因此委托Object公司负责该项工作。
Object公司的专家建议在对系统升级前和Statopia公司的高层管理人员开一次讨论会,以便能更好地了解目前所使用的软件系统。
那么在这次讨论会中,下面几个图中哪个图是最有用的?
( )
A、状态图B、部署图C、活动图D、顺序图
二、简答题
1.什么是动作状态?
什么是活动状态?
它们有什么区别?
2.请参考下图,回答问题:
(1)在该图中,有几种不同角色:
(2)请找出客户在该流程过程中相关活动内容:
三、某公司在线购物的控制流程为:
A、接受在线订购:
客户在线下单采购公司产品。
动作(Action):
在线输入采购清单
B、动作(Action):
客户服务部接收到定单,检查定单是否正确
正确执行动作C
不正确执行动作:
发出一封订购失败的EMIAL给客户,请客户检查订单:
执行动作结束。
C、同步动作:
订单转仓管部出货
订单转财务部门收款处理
D、确认客户收到采购的货品
正确:
执行动作E
不正确:
执行动作D
E、确认客户已完成收货付款
正确:
执行动作F
不正确:
执行动作E
F、确认送货人员将收到的款项交于财务部
正确:
执行动作G
不正确:
执行动作F
G、财务部门做订单结案处理
H、结束
【问题:
】请你利用UML的活动图设计执行动作的活动图
四、过程:
一个咨询公司会见一个客户时的业务过程
1、公司业务员打电话给客户,确立约定。
2、如果约定在公司内,公司技术人员为会议准备会议室。
3、如果约定在公司之外,咨询顾问就要用电脑准备一份陈述报告
4、咨询顾问和业务员与客户在约定的时间和地点见面。
5、业务员随后给他们准备好会议用纸
6、如果会议产生了一个问题陈述,咨询顾问就根据问题陈述建立编写一个提案并把该提案发给客户。
【问题】请设计上述过程的活动图。