最新可视化建模与UML习题集及答案.docx
- 文档编号:26106770
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:57
- 大小:527.93KB
最新可视化建模与UML习题集及答案.docx
《最新可视化建模与UML习题集及答案.docx》由会员分享,可在线阅读,更多相关《最新可视化建模与UML习题集及答案.docx(57页珍藏版)》请在冰豆网上搜索。
最新可视化建模与UML习题集及答案
可视化建模与UML习题集及答案
专题一&专题二:
UML概述&面向对象基础
一、单项选择题
1、组成UML构造块三大要素为:
( B )
A、事物、元素、关系B、事物、关系、图形
C、事物、组件、图形D、事物、图形、结构
2、UML中的事物分为哪几类?
( A )
A、结构、行为、分组、备注等四类事物B、结构、图形、行为、分组等四类事物
C、类、行为、分组、备注等四类事物D、分组、备注、结构、图形等四类事物
3、UML中的关系分为哪几种?
( C )
A、依赖关系、类关系、一般化关系、合作关系
B、依赖关系、泛化关系、实现关系、继承关系
C、依赖关系、关联关系、泛化关系、实现关系
D、依赖关系、关联关系、泛化关系、合作关系
4、所谓的4+1视图是指( A )
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中属于静态视图的是( D )
A、顺序图、协作图、包图、类图B、对象图、类图、构件图、包图
C、顺序图、用例图、对象图、类图D、对象、类图、构件图、部署图
6、下列关于UML叙述正确的是( D )
A、UML是一种语言,语言的使用者不能对其进行扩展
B、UML仅是一组图形的集合
C、UML仅适用于系统的分析与设计阶段
D、UML是独立于软件开发过程的
7、下列描述中,哪个不是建模的基本原则(D)
A、要仔细的选择模型
B、每一种模型可以在不同的精度级别上表示所要开发的系统
C、模型要与现实相联系
D、对一个重要的系统用一个模型就可以充分描述
8、下列描述中,哪个不是软件与硬件的区别(D)
A.软件是被开发或设计的,而不是被制造的;
B.软件不会“磨损”,但会“退化”;
C.软件的开发至今尚未摆脱手工艺的开发方式;
D.软件开发与硬件开发的流程一样。
9、UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。
其中( B )是面向对象系统建模中最常用的图,用于说明系统的静态设计视图;当需要说明系统的静态实现视图时,应该选择( A );当需要说明体系结构的静态实施视图时,应该选择( D )。
(1). A.组件图 B.类图 C.对象图 D.部署图
(2). A.组件图 B.协作图 C.状态图 D.部署图
(3). A.协作图 B.对象图 C.活动图 D.部署图
10、Blue软件公司就目前的“通信网关”项目中存在的质量问题,召开了一次产品质量问题鉴定会,会议得出的结论是:
该系统的质量问题是由于系统设计阶段未能正确地设计产品的类图而导致的。
请问以下哪个项目成员应该为问题负主要责任。
(B)
A软件开发工程师B系统架构师C系统分析员D软件测试工程师
11、对象技术是(A)
A、一系列指导软件构造的原则
B、一种新的已被认可的理论
C、GradyBooch发明的一种新的动态的语言
D、仅仅基于模块化的原则
二、填空题
1、UML是UnifiedModelingLanguage的英文缩写。
2.UML中的图分为:
__类图__、对象图、_构件图__、用例图_、活动图、__状态图___、协作图、_顺序图__、
部署图九种。
三、简答题?
1.什么是建模?
为什么要建模?
模型是现实的简化。
我们建模是为了能够更好的理解我们正在开发的系统
2.UML包括哪些组成部分?
UML包括三个主要部分:
构造块、规则以及公共机制
3.什么是面向对象?
面向对象的特点是什么?
4.UML图有哪些?
其中哪些是静态图?
哪些是动态图?
UML图包括:
类图、构件图、用例图、状态图、顺序图、对象图、活动图、协作图、部署图
其中,类图、构件图、对象图、部署图是静态视图
用例图、状态图、顺序图、活动图、协作图是动态图
专题三:
类图(对象图、包图)
一、单项选择题
1.UML中类的有三种,下面哪个不是其中之一(D)
A.实体类
B.边界类
C.控制类
D.主类
2.在UML中,类之间的关系有一种为关联关系,其中多重性用来描述类之间的对应关系,下面哪个不是其中之一(D)
A.0….1
B.0….*
C.1….*
D.*….*
3.通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是UML中的类成员访问限定性(C)
A.公有的(public)
B.受保护的(protected)
C.友员(friendly)
D.私有的(private)
4、在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:
Course)和方法remove(c:
Course),则类CourseSchedule和类Course之间的关系是:
( C )
A、泛化关系B、组成关系C、依赖关系D、包含关系
5、类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是()关系。
( C )
A、实现B、关联C、依赖D、泛化
6、在UML2.0版本中的图形表示方式中,“包”的表示方式是下列图形中的哪一个?
(A)
A、
B、
C、
D、
7、在UML中下列图形代表什么关系?
( A )
A、组成关系B、依赖关系C、聚集关系D、泛化关系
8、在UML中下列图形代表什么关系?
(D)
A、一般化关系B、依赖关系C、聚集关系D、泛化关系
ABCD
9、汽车(Car)由轮子、发动机、油箱、座椅、方向盘等组成。
那么car类和其他类(Wheel、Engin、Tank、Chair、SteeringWheel)之间的关系是:
(D)
A、泛化关系(Generalization)B、实现关系(Realization)
C、包含关系(Inclusion)D、组合关系(Composition)
10.在下面的图例中,哪个用来描述注释(D)
ABCD
11.关于包的描述,哪个不正确(E)
A.和其他建模元素一样,每个包必须有一个区别于其他包的名字;
B.包中可以包含其他元素,比如类、接口、组件、用例等等;
C.包的可见性分为:
public、protected、private;
D.引入(import)使得一个包中的元素可以单向访问另一个包中的元素;
E.导出(export)使的一个包中的元素可以单向访问另一个包中的元素;
12、消息传递是对象间通信的手段,一个对象通过向另一个对象发送消息来请求其服务,一个消息通常包括:
(C)
A、发送消息的对象的标识、调用的发送方的操作名和必要的参数
B、发送消息的类名和接收消息的类名
C、接收消息的对象的标识、调用的接收方的操作名和必要的参数
D、接收消息的类名
13、在一个网络游戏系统中,定义了类Cowboy和类Castle,并在类Cowboy中定义了方法open(c:
Castle)和方法Close(c:
Castle),则类Cowboy和类Castle之间的关系是:
……( A )
A、依赖(dependency)关系B、组成(composition)关系
C、泛化(generalization)关系D、包含(include)关系
14、根据下面的代码,判断下面那些叙述是正确的?
(A)
publicclassHouseKeeper{
privateTimeCardtimecard;
publicvoidclockIn(){
timecard.punch();
}
}
A、类HouseKeeper和类TimeCard之间存在关联(Association)关系;
B、类HouseKeeper和类TimeCard之间存在泛化(Generalization)关系;
C、类HouseKeeper和类TimeCard之间存在实现(Realization)关系;
D、类HouseKeeper和类TimeCard之间存在包含(Inclusion)关系
15、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的(D)中。
①用例及其协作之间是(A)关系。
②类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是(C)关系。
③在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是(B)关系。
④森林和树木之间是(E)关系。
关系。
⑤在MFC类库中,Window类和DialogBox类之间是(D)
A实现B关联C依赖D泛化E聚合
16、已知类A需要类B提供的服务,下列所描述的四种情况中,哪种情况不好把类A和类B之间的关系定义成依赖关系(D)
A、类A中存在两个操作都需要访问类B的同一个对象
B、类A的某个操作内部创建了类B的对象,而其他操作均与类B无关
C、类A的某个操作其参数是类B的对象,而其他操作均与类B无关
D、类B是一个全局变量
17、“一个研究生在软件学院做助教(teachingassistant),同时还在校园餐厅打工做收银员(cashier)。
也就是说,这个研究生有3种角色:
学生、助教、收银员,但在同一时刻只能有一种角色。
”
根据上面的陈述,下面哪个设计是最合理的?
(B)
AB
CD
18、类X与类Y有许多的属性,但是它的行为与类Y稍微有所不同;这时可以认为类X是类Y的一种特例;则类X和类Y之间是(A)关系。
A、泛化关系B、关联关系C、依赖关系D、实现关系
19、关于类和对象的关系,下列说法中哪个是错误的(B)
A、每个对象都是某个类的实例
B、每个类某一时刻必定存在对象实体
C、类是静态的描述
D、对象是动态的实例
二、填空题
1.下图中类的名字是:
__login__类中的成员属性是:
sname_、spass__类中的行为(方法)是:
____checkuser()____。
2、在UML中分组元素是包。
3、在UML模型图中,最适合用来设计数据库大纲的图形是类图。
4、在对系统建模时、接口可分为提供接口、所需接口。
5、下图所表示的含义是WashingMachine实现了接口ControlKnob,Person使用了接口ControlKnob
三、简答题
1、在UML建模中使用“包”是为了达到怎样的效果?
在UML中,包是分组事物的一种,它是建模时用来组织模型中的元素的,在系统运行时并不存在包的实例。
包在开发大型软件系统时是一个非常重要的机制,它就象一个“容器”,可用于组织模型中的相关元素以便更容易理解。
2、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。
现在提出一个新的需求:
"一个教师也可以是某些课程的学生",那么下面设计A~C中哪一个是最好的?
为什么?
设计A:
设计B:
. 设计C:
答案:
设计C最好。
理由:
设计A方案:
应用了自身关联,可以实现新的需求,但是不便于扩展。
设计B方案:
不能实现新的需求。
设计C方案:
应用开闭原则,实现了新的需求,并且便于扩展。
3、请为下面这段编译正确的代码,补充类图。
pulicclassStudent{
privateStringname;
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetName(){
returnthis.name;
}
}
4、请参考下图,回答问题:
图A.2
1)图中的实体类为____书籍、书目____
2)图中的控制类为_____书籍管理_____
3)图中的边界类为_____借书界面_____
4)“借书界面”类中的成员属性有___susername、spass___
四、根据下面的陈述画出类图
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、果园是人物和实物进行交易的经营场所。
Java代码:
publicclassFruit{
publicvoidplant(){
}
publicvoidgrow(){
}
publicvoidharvest(){
}
}
publicclassAppleextendsFruit{
}
publicclassGrapeextendsFruit{
}
publicclassFarmer{
publicFruitplant(Stringmessage){
if(message.equals("apple"))
returnnewApple();
else
returnnewGrape();
}
}
publicclassInquier{
publicStringinquire(){
return"grape";
}
}
publicclassBoss{
publicStringcommand1(Inquierinquier){
returninquier.inquire();
}
publicFruitcommand2(Farmerfarmer,Stringmessage){
returnfarmer.plant(message);
}
}
publicclassGarden{
privateBossboss;
privateFarmerfarmer;
privateInquierinquier;
privateFruitfruit;
}
专题四:
用例图
一、单选题
1、用例图是从谁的角度出发对如何使用系统进行描述的?
( A )
A、用户B、系统分析师C、系统设计师D、程序员
2、在UML2.0版本中。
表示是用例间什么关系(D)
A、关联关系B、依赖关系C、扩展关系D、包含关系
3、用例图展示了外部参与者与系统所提供的用例之间的连接,UML中的外部参与者是指(D)
A.人员B.单位C.人员或单位D.人员或外部系统
4、在UML的用例图图形表示方式中,“角色.”的表示方式是下列图形中的哪一个(D)
A、
B、
C、
D、
5、包含关系是在下面哪种关系的基础上构造的?
(B)
A、组成关系B、依赖关系C、聚合关系D、泛化关系
6、在用例之间,会有三种不同的关系,下列哪个不是他们之间可能的关系(D)
A.包含(include)B.扩展(extend)
C.泛化(generalization)D.关联(connect)
7、在ATM自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面哪个是“Actor”(A)
A.用户B.ATM取款机
C.ATM取款机管理员D.取款
8、用例(usecase)用来描述系统在对事件做出响应时所采取的行动。
用例之间是具有相关性的。
在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户帐号是否正确。
那么,用例“创建新订单”、“更新订单”与用例“核查客户帐号”之间是___关系。
(A)
A.包含(include)B.扩展(extend)C.分类(classification)D.聚集(aggregation)
9、系统分析员Analyst在做储蓄系统的需求开发时,发现:
①“取款”用例、②“查询余额”用例、③“更改密码”用例都要使用④“验证卡号和密码”用例的功能。
那么①②③3个用例与用例④的关系是( D )
A、使用关系B、扩展关系C、组成关系D、包含关系
10、在电影院管理系统中,有3个用例,分别是“购买电影票”、“预定电影票”、“登记电影制片厂”,其中“购买电影票”是高风险、高业务价值的用例;“预定电影票”是低风险、高业务价值的用例;“登记电影制片厂”是低风险、低业务价值的用例。
在开发时准备采用迭代式开发,先实现其中的一个用例,那么首先应实现哪个用例?
(C)
A、“登记电影制片厂”用例B、“预定电影票”用例
C、“购买电影票”用例D、3个用例中的任意一个都可以
11、Mentor是一家集团公司,业务范围涉及到制造业、服务业和高科技产业,最近公司准备实施企业资源规划系统(ERP),因此委托Butterfly公司负责该项工作。
Butterfly公司的专家为了能更好地了解该公司目前业务资源的使用情况,决定建立UML模型与以阐释,那么Butterfly的专家应该建立哪种模型图?
( A )
A、用例图B、类图C、业务对象图D、顺序图
12、下列选项中,那些是用例描述应该包含的内容(多选)(ABCE)
A、概述B、基本事件流
C、可选事件流D、对象模型E、前置条件
二、简答题
1.什么是参与者?
如何确定系统的参与者?
2.什么是用例?
如何确定系统的用例?
3.用例之间有哪些关系?
对每一种关系,请举出一个实际的例子,并画出用例图。
4.说明在Browser中删除一个模型元素和在Diagram中删除一个模型元素的区别。
在Browser中删除一个模型元素将同时删除所有的Diagram中对它的引用,该模型元素奖真正从模型文件中删除。
在Diagram中删除的模型元素不一定真正在模型文件中被删除,而只是从当前的图中被删除。
5.Use-Case模型可以包括哪些内容,列举至少3种。
参与者、用例、用例描述文档
三、分析题
1、某电话公司决定开发一个管理所有客户信息的交互式网络系统。
系统功能如下:
浏览客户信息:
任何使用Internet的网络用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。
登录:
电话公司授予每个客户一个账号号。
拥有授权账号的客户,可以使用系统提供的页面设置个人密码,并使用该账号和密码向系统注册。
修改个人信息:
客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。
删除客户信息:
只有公司的管理人员才可以删除不再接受公司服务的客户的信息。
【问题】在需求分析阶段,采用用例图描述系统功能需求,如上图所示,请指出图中的A、B、C和D分别是哪个用例?
1、A浏览客户信息
B修改个人信息
C登录系统
D删除客户信息
2、请仔细阅读下图,描述该图的基本含义:
该图的基本含义:
2、该用例图描述的是图书馆管理系统中管理员对书籍和书目的管理流程。
在这个流程中,管理员这个Actor与用例删除书目、删除书籍、修改书籍信息、新增书籍之间能通过消息传递发生关联,而图书查询这个用例与删除书目、删除书籍、修改书籍信息这三个用例之间有被包含的关系,也就是说,在删除书目、删除书籍、修改书籍信息用例发生的过程前,需要进行图书查询。
新增书目这个用例与新增书籍这个用例也是被包含的关系。
四、在医生的办公室里接待员、护士和医生使用病人记录和计划安排系统。
当病人第一次来这里看病时,接待员使用该系统来输入病人信息,并且他们安排所有的预约。
护士使用系统来跟踪病人每次看病的结果并输入护理病人的信息,如医疗和诊断。
护士也可以访问这些信息以打印病人诊断结果或病人看病历史。
医生主要用这个系统来查看病人的病史,偶尔也输入病人的医疗信息,但通常他让护士输入这些信息。
【问题】根据上面的陈述,请你分析出参与者和用例,并绘制出用例图。
五、网络在线售票订位系统的功能如下:
客户有一般客户和企业客户两种,可以建立在线订位事件、事件确认,执行在线信用卡付费、个人或团体账号修改和管理、在线个人事件查询;系统操作者可以建立在线销售订位事件、查询目前销售订位状况、个人或团体账号修改和管理;系统设计者可以建立在线售票订位事件、查询目前销售订位情况、在线系统维护和功能增加、系统环境设置。
【问题】请依照上述描述,并绘制出需求用例模型
六、大学选课系统是与学生有着紧密联系的系统。
学生可以登录该系统选修课程,查看分数。
教授可以登录到系统选择课程授课,提交学生成绩。
学校另有一个系统里面保存有课程目录信息,选课系统需要和课程目录系统通讯以取得课程目录信息。
【问题】对该“大学选课”系统进行面向对象分析并运用UML建模设计出用例图。
7、基于WEB的网上购物系统越来越受到人们的关注,例如小型电子商务订单处理系统,使得客户可以给购物车添加项目,查看购物车,查看具体项目,购买商品,删除购物车中的项目,浏览商品,提供反馈单;库房经理可以进行盘点,返回库房项目,提供订单;采购经理可以增加销售的新项目,删除销售项目,购
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 可视化 建模 UML 习题集 答案