历年软考UML图例真题解析
- 格式:doc
- 大小:798.00 KB
- 文档页数:13
一、名词解释:用例:是外部可见的系统单元,这些功能由系统单元所提供,并通过一系列系统单元与一个或多个参与者之间交换的消息所表达。
泳道:在活动图中,泳道用垂直实线绘出,垂直线分隔的区域就是泳道;组件:组件是定义了良好接口的物理实现单元,是系统中可替换的物理部件.双向工程:双向工程包括正向工程和逆向工程.正向工程就是从模型到代码,而逆向工程则是从代码到模型.正向和逆向工程结合在一起叫双向工程。
对象流:对象流是动作状态或者活动状态与对象之间的依赖关系,表示动作使用对象或者动作对对象的影响。
二、填空题1、UML中的模型元素包括事物和事物之间的联系。
2、Rational Rose包括了统一建模语言、面向对象的软件工程及对象建模技术。
3、时序图包含的4个元素有对象、生命线、消息、激活 .4、协作图以对象图的方式绘制各个参与对象,并且将消息和链平行放置。
5、组件是定义了良好接口的物理实现单元,是系统中可替换的物理部件.6、状态机包含了一个类的对象在其生命期间所有状态的序列以及对象对接收到的事件所产生的反应。
7、包图建模技术包括对成组的元素建模和对体系结构视图建模。
8、内部转换只有一个原状态但是没有目标状态 ,因此转换后并不改变状态本身。
9、分叉可以用来描述并发线程,每个分叉可以有一个输入转换和两个或多个输出转换.10、配置图描述了系统执行处理过程中系统资源元素的配置情况以及软件到这些资源元素的映射.三、1。
简述时序图的建模步骤。
如何识别用例?答:建模步骤:1)设置交互语境;2)确定对象;3)分析消息和条件;4)分析附加约束;5)对建模结果精化和细化2。
Rational Rose中有哪几种视图,各个视图的作用是什么?答:Rational Rose有四种视图:①用例视图:用例视图是被称为参与者的外部用户所能观察到的系统功能的模型图。
用例是系统中的一个功能单元,可以被描述为参与者与系统之间的一次交互作用。
用例模型的用途是列出系统中的用例和参与者,并显示哪个参与者参与了哪个用例的执行. 用例视图是其他视图的核心,它的内容直接驱动其他视图的开发。
UML 考试试题及答案一、选择题(共15分,每题1分)1. UML 的全称是 ( B )(A )Unify Modeling Language(B )Unified Modeling Language (C )Unified Modem Language (D )Unified Making Language2. 执行者(Actor)与用例之间的关系是( C )(A )包含关系 (B)泛化关系 (C)关联关系 (D )扩展关系3.在类图中,下面哪个符号表示继承关系( C ) 4.下面哪个视图属于UML 语言的交互图( D )(A )行为图 (B )状态图 (C)实现图 (D )顺序图5. UML 语言包含几大类图形( B )(A)3 (B )5 (C)7 (D )96. 在类图中,下面哪个符号表示接口( C )7. 下面哪个图形代表活动( D8. UML 中关联的多重度是指( b )(A )一个类有多个方法被另一个类调用(B )一个类的实类能够与另一个类的多个实类相关联(C)一个类的某个方法被另一个类调用的次数(D )两个类所具有的相同的方法和属性9. 下面哪个不是UML 中的静态视图(A)(A)状态图 (B )用例图 (C )对象图 (D )类图10. (A )技术是将一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动.(A)泳道 (B )分叉汇合 (C)分支 (D )转移11. 下列关于状态图的说法中,正确的是( C )(A) 状态图是UML 中对系统的静态方面进行建模的五种图之一。
(B) 状态图是活动图的一个特例,状态图中的多数状态是活动状态 (B) (A) (C) (D)(B) (A) (D) (B) (A) (D)(C)活动图和状态图是对一个对象的生命周期进行建模,描述对象随时间变化的行为。
(D) 状态图强调对有几个对象参与的活动过程建模,而活动图更强调对单个反应型对象建模12.类图应该画在Rose的哪种(B)视图中。
04上试题三阅读下列说明以及图3-1和图3-2,回答问题1、问题2和问题3,将解答填入答题纸的对应栏内。
[说明]某电话公司决定开发一个管理所有客户信息的交互式网络系统。
系统的功能如下:1.浏览客户信息:任何使用Internet的网络用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。
2.登录:电话公司授予每个客户一个帐号。
拥有授权帐号的客户,可以使用系统提供的页面设置个人密码,并使用该帐号和密码向系统注册。
3.修改个人信息:客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。
4.删除客户信息:只有公司的管理人员才能删除不再接受公司服务的客户的信息。
系统采用面向对象方法进行开发,在开发过程中认定出的类如下表所示:编号类名描述1 InternetClient 网络用户2 CustomerList 客户信息表,记录公司所有客户的信息3 Customer 客户信息,记录单个客户的信息4 CompanyCustomer 公司客户5 InternalClient 公司的管理人员[图3-1][问题1]在需求分析阶段,采用UML的用例图(use case diagram)描述系统功能需求,如图3-1所示。
请指出图中的A、B、C和D分别是哪个用例?[问题2]在UML 中,重复度(Multiplicity)定义了某个类的一个实例可以与另一个类的多少个实例相关联。
通常把它写成一个表示取值范围的表达式或者一个具体的值。
例如图3-2 中的类InternetClient 和CustomerList,InternetClient 端的“0..*”表示:一个Custo~erList 的实例可以与0 个或多个InternetClient 的实例相关联;CustomerList 端的“1”表示:一个InternetClient的实例只能与一个CustomerList的实例相关。
请指出图3-2中(1)到(4)处的重复度分别为多少?[问题3]类通常不会单独存在,因此当对系统建模时,不仅要识别出类,还必须对类之间的相互关系建模。
ATM建模1、浏览器和框图窗口之间有关系吗?如果有,是怎么样的关系?答:有。
我们可以用浏览器打开一个或几个UML框图。
改变框图中的元素时,Rose自动更新浏览器。
同样用浏览器改变元素时,Rose自动更新相应框图。
这样,Rose就可以保证模型的一致性。
2、用例图中的参与者和用例分别表示什么?答:从用例图中我们可以看到系统干什么,与谁交互。
用例是系统提供的功能(系统“干什么”),参与者是系统与谁交互,参与者可以是人、系统或其他实体。
3、ATM用例图中的箭头从参与者指向用例表示什么?从用例指向参与者又表示什么?答:箭头从参与者到用例表示由参与者启动用例。
箭头从用例到参与者表示用例产生一些参与者要使用的信息。
4、RUP有哪五个工作流程?我们在RUP的哪个工作流程中画用例图?答:RUP(统一软件开发过程)的五个核心工作流程包括:需求捕获、分析、设计、实现和测试。
在需求捕获时画用例图。
5、活动图中的泳道表示什么意思?答:泳道是活动图里的竖段,包含特定人员或组织要进行的所有活动。
可以把活动图分为多个泳道,每个泳道对应每个人员或组织,他们各自的活动都放在各自的泳道中。
6、活动图中的同步棒表示什么意思?答:表示并发控制流的分叉和汇合。
结合图中具体来说,同一段时间内这几个活动同时发生/这几个活动都结束之后才进入下个决策点的判断中。
7、活动图中的初始状态和终止状态分别用什么表示?数目上有什么限制?答:实心圆和牛眼。
初始状态必须有,而且只能有1个。
终止状态可以是0,1或多个。
8、活动图中决策点之后的[ ]里的内容是什么,有什么要求?答:保证条件,用来控制在决策之后采取什么路径。
保证条件应该是互斥的。
9、类由哪几部分组成,分别表示什么意思?答:类图中每个类都是用方框表示的,分成三个部分。
第一部分是类名;第二部分是类包含的属性,属性是类和相关的一些信息;最后一部分包含类的方法,方法是类提供的一些功能。
10、类的属性和方法左边有一些修饰,分别表示什么意思?答:若是一个小锁图标,表示这个属性和方法是private的(UML中用’-’表示),该属性和方法只在本类中可访问。
UML 期末试卷一、单项选择题(本大题共10 题,每题 1 分,共 20 分)1. 下面哪个不是 UML 中的静态视图( )A.状态图C.对象图B.用例图D.类图2. 、面向对设计的基本特性除了封装和继承之外,还包括( )A 一致性B 完整性C 多态性D 可移植性3. UML 中关联的多重性是指( )A 一个类由多少个方法被另一个类调用B 一个类的实例能够与另一个类的多少个实例相关联C 一个类的某个方法被另一个类调用的次数D 两个类所具有的相同的方法和属性4. 在类图中,“ #”表示的可见性是( )A. Public B.Protected C.Private D.Package5. 状态是指在对象的生命周期中满足某些条件、执行某些活动或等待某些事件时的一个条件或状况,状态的组成部分不包括 ( )A 进入(entry)和退出(exit)动作B 外部转换C 子状态D 延迟事件6. 关于协作图的描述,下列哪个不正确()A.协作图作为一种交互图,强调的是参加交互的对象的组织;B.协作图是顺序图的一种特例C.协作图中有消息流的顺序号;D.在 ROSE 工具中,协作图可在顺序图的基础上按“ F5”键自动生成7. 用于对面向对象系统的物理方面建模进行描述图形是 ( )A.部署图B.对象图C.包图D.类图8. 一个对象和另一个对象之间,通过消息来进行通信。
消息通信在面向对象的语言中即( )A、方法实现 B 、方法嵌套C、方法调用 D 、方法定义9. 组件图用于对系统的静态实现视图建模,这种视图主要支持系统部件的配置管理,通常可以分为四种方式来完成,下面哪种不是其中之一( )A.对源代码建模B.对事物建模C.对物理数据库建模D.对可适应的系统建模10. 在一个“订单输入子系统”中,创建新订单和更新订单都要核查用户账号是否正确,则用例“创建新订单”、“更新订单”与用例“核查用户账号”之间的关系是 ( )A 包含B 实现C 扩展D 泛化二、填空题(本大题共15 空,每空 1 分,共 15 分)1. 顺序图是由对象、生命线、控制焦点和消息等构成的2.在UML 的关系中,用来描述弗雷与子类之间关系的是泛化关系3.在 UML 部署图中,具有计算能力的节点、能够执行软组件的节点通常被称为服务器4. 面向对象程序的基本特征是:抽象、封装、继承和多态。
1、面向对象的核心要素:对象,封装,消息,类,抽象,继承,多态性(7个)2、封装把类构成那两个部分,又提供了哪两种保护两个部分:接口部分,和实现部分两种保护:1,对象内部的状态被保护起来,不会被与该对象沟通的对象直接篡改;2另一方面,对象内部特征的变化不会改变其他对象与该对象的沟通方式。
(另一种老师课件的答案:两种保护:1.首先保护对象,防止用户直接存取对象的内部细节;。
2.其次封装也保护了客户端,防止对象实现部分的变化可能产生的副作用,即实现部分的改变影响到客户端的改变。
)3、消息提供了服务的哪四个方面对象标识,服务(方法)标识,输入信息和回答信息等5、下面是一个用例描述的片断:Use Case: Withdraw Cash(提取现金)参与者:Customer主事件流:1. 储户插入ATM卡,并键入密码。
2. 储户按“Withdrawal”按钮,并键入取款数目。
3. 储户取走现金、ATM卡并拿走收据。
4. 储户离开。
上述描述中存在的问题:只描述了参与者的动作序列,没有描述系统的行为。
改进的描述:答:1. 通过读卡机,储户插入ATM卡。
2. ATM系统从卡上读取银行ID、帐号、加密密码、并用主银行系统验证银行ID和帐号。
3. 储户键入密码,ATM系统根据上面读出的卡上加密密码,对密码进行验证。
4. 储户按“FASTCASH”按钮,并键入取款数量,取款数量应该是5美元的倍数。
5. ATM系统通知主银行系统,传递储户帐号和取款数量,并接收返回的确认信息和储户帐户余额。
6. ATM系统输出现金,ATM卡和显示帐户余额的收据。
7. ATM系统记录事务到日志文件。
7、什么是场景,一个用例可以有多少个主要场景和次要场景?场景:是使用系统的一个特定情节或通过用例的一个特定执行路径。
每个用例有且只有一个主要场景可以有多个次要场景8、按照耦合度从高到低,说明类之间的关系有哪些?由强到弱:继承,组合,聚合,关联,依赖9、标准类图中成员四个可见性分别用什么表示?Public + Protected # Package ~Private -10、association aggregation generalization dependency 分别代表什么关系关联关系聚合关系泛化关系依赖关系11、给出下面带关联类类图的另一种普通类图表示。
04上试题三阅读下列说明以及图3-1和图3-2,回答问题1、问题2和问题3,将解答填入答题纸的对应栏内。
[说明]某电话公司决定开发一个管理所有客户信息的交互式网络系统。
系统的功能如下:1.浏览客户信息:任何使用Internet的网络用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。
2.登录:电话公司授予每个客户一个帐号。
拥有授权帐号的客户,可以使用系统提供的页面设置个人密码,并使用该帐号和密码向系统注册。
3.修改个人信息:客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。
4.删除客户信息:只有公司的管理人员才能删除不再接受公司服务的客户的信息。
系统采用面向对象方法进行开发,在开发过程中认定出的类如下表所示:编号类名描述1 InternetClient 网络用户2 CustomerList 客户信息表,记录公司所有客户的信息3 Customer 客户信息,记录单个客户的信息4 CompanyCustomer 公司客户5 InternalClient 公司的管理人员[图3-1][问题1]在需求分析阶段,采用UML的用例图(use case diagram)描述系统功能需求,如图3-1所示。
请指出图中的A、B、C和D分别是哪个用例?[问题2]在UML 中,重复度(Multiplicity)定义了某个类的一个实例可以与另一个类的多少个实例相关联。
通常把它写成一个表示取值范围的表达式或者一个具体的值。
例如图3-2 中的类InternetClient 和CustomerList,InternetClient 端的“0..*”表示:一个Custo~erList 的实例可以与0 个或多个InternetClient 的实例相关联;CustomerList 端的“1”表示:一个InternetClient的实例只能与一个CustomerList的实例相关。
请指出图3-2中(1)到(4)处的重复度分别为多少?[问题3]类通常不会单独存在,因此当对系统建模时,不仅要识别出类,还必须对类之间的相互关系建模。
计科院UML复习汇总+答案详解一、单项选择题1、组成UML构造块三大要素为:(B)A、事物、元素、关系B、事物、关系、图形C、事物、组件、图形D、事物、图形、结构UML中有三种基本构造块,分别是事物、关系和图。
事物分结构事物(包括类、接口、协作、用况、主动类、构件和节点)、行为事物(包括交互和状态机)、分组事物(包)和注释事物(注解)。
2、UML中的事物分为哪几类?(A)A、结构、行为、分组、备注等四类事物B、结构、图形、行为、分组等四类事物C、类、行为、分组、备注等四类事物D、分组、备注、结构、图形等四类事物3、UML中的关系分为哪几种?(C)A、依赖关系、类关系、一般化关系、合作关系B、依赖关系、泛化关系、实现关系、继承关系C、依赖关系、关联关系、泛化关系、实现关系D、依赖关系、关联关系、泛化关系、合作关系4、所谓的4+1视图是指(A)A、Design View、Interaction View、Implementation View、Deployment View、useCase ViewB、Interaction View、Implementation View、Deployment View、Customer View、useCase ViewC、Interaction View、Implementation View、Deployment View、Process View、useCase ViewD、Design View、Interaction View、Implementation View、Process View、useCase View5、在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.软件开发与硬件开发的流程一样。
试题三(共15分)2007-11阅读下列说明和图,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】已知某唱片播放器不仅可以播放唱片,而且可以连接电脑并把电脑中的歌曲刻录到唱片上(同步歌曲)。
连接电脑的过程中还可自动完成充电。
关于唱片,还有以下描述信息:1.每首歌曲的描述信息包括:歌曲的名字、谱写这首歌曲的艺术家以及演奏这首歌曲的艺术家。
只有两首歌曲的这三部分信息完全相同时,才认为它们是同一首歌曲。
艺术家可能是一名歌手或一支由2名或2名以上的歌手所组成的乐队。
一名歌手可以不属于任何乐队,也可以属于一个或多个乐队。
2.每张唱片由多条音轨构成;一条音轨中只包含一首歌曲或为空,一首歌曲可分布在多条音轨上;同一首歌曲在一张唱片中最多只能出现一次。
3. 每条音轨都有一个开始位置和持续时间。
一张唱片上音轨的次序是非常重要的,因此对于任意一条音轨,播放器需要准确地知道,它的下一条音轨和上一条音轨是什么(如果存在的话)。
根据上述描述,采用面向对象方法对其进行分析与设计,得到了如表3-1所示的类列表、如图3-1所示的初始类图以及如图3-2所示的描述播放器行为的UML状态图。
表3-1 类列表图3-1 初始类图图3-2 播放器行为UML状态图【问题1】(3分)根据说明中的描述,使用表3-1给出的类的名称,给出图3-1中的A~F 所对应的类。
【问题2】(6分)根据说明中的描述,给出图3-1中(1)~(6)处的多重度。
【问题3】(4分)图3-1中缺少了一条关联,请指出这条关联两端所对应的类以及每一端的多重度。
类多重度【问题4】(2分)根据图3-2所示的播放器行为UML状态图,给出从“关闭”状态到“播放”状态所经过的最短事件序列(假设电池一开始就是有电的)。
试题三[问题1]A:Artist B:Song C:Band D:Musician E:Track F:Album[问题2] (1) 0..* (2) 2..* (3)0..1 (4) 1..* (5) 1..* (6) 1[问题3]【问题4】按任意键,选择歌曲试题二(15分) 2006-5阅读下列说明以及UML类图,回答问题1、问题2和问题3,将解答填入答题纸的对应栏内。
一、某企业为了方便员工用餐,餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。
企业的任何员工都可以查看菜单和今日特价。
系统的顾客是注册到系统的员工,可以订餐(如果未登录,需先登录)、注册工资支付、预约规律的订餐,在特殊情况下可以覆盖预订。
餐厅员工是特殊顾客,可以进行备餐、生成付费请求和请求送餐,其中对于注册工资支付的顾客生成付费请求并发送给工资系统。
菜单管理员是餐厅特定员工,可以管理菜单。
送餐员可以打印送餐说明,记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。
顾客订餐过程如下:
1.顾客请求查看菜单;
2.系统显示菜单和今日特价;
3.顾客选菜;
4.系统显示订单和价格;
5.顾客确认订单;
6.系统显示可送餐时间;
7.顾客指定送餐时间、地点和支付方式;
8.系统确认接受订单,然后发送Email给顾客以确认订餐,同时发送相关订餐信息通知给餐厅员工。
系统采用面向对象方法开发,使用UML进行建模。
绘制出系统的顶层用例图和一次订餐的活动图。
(09.12)
二、某银行计划开发一个自动存提款机模拟系统(ATM System)。
系统通过读卡器(CardReader)读取ATM 卡;系统与客户(Customer)的交互由客户控制台(CustomerConsole)实现;银行操作员(Operator)可控制系统的启动(System Startup)和停止(System Shutdown);系统通过网络和银行系统(Bank)实现通信。
当读卡器判断用户已将ATM卡插入后,创建会话(Session)。
会话开始后,读卡器进行读卡,并要求客户输入个人验证码(PIN)。
系统将卡号和个人验证码信息送到银行系统进行验证。
验证通过后,客户可从菜单选择如下事务(Transaction):
1. 从ATM卡账户取款(Withdraw);
2. 向ATM卡账户存款(Deposit);
3. 进行转账(Transfer);
4. 查询(Inquire)ATM卡账户信息。
一次会话可以包含多个事务,每个事务处理也会将卡号和个人验证码信息送到银行系统进行验证。
若个人验证码错误,则转个人验证码错误处理(Invalid PIN Process)。
每个事务完成后,客户可选择继续上述事务或退卡。
选择退卡时,系统弹出 ATM 卡,会话结束。
系统采用面向对象方法开发,使用UML进行建模。
绘制出系统的顶层用例图(09.05)
三、在线会议审稿系统(ORS:Online Reviewing System)主要处理会议前期的投稿和审稿事务,其功能描述如下:
1.用户在初始使用系统时,必须在系统中注册(register)成为作者或审稿人。
2.作者登录(login)后提交稿件和浏览稿件审阅结果。
提交稿件必须在规定提交时间范围内,其过程为先输入标题和摘要、选择稿件所属主题类型、选择稿件所在位置(存储位置)。
上述几步若未完成,则重复;若完成,则上传稿件至数据库中,系统发送通知。
3.审稿人登录后可设置兴趣领域、审阅稿件给出意见以及罗列录用和(或)拒绝的稿件。
4.会议委员主席是一个特殊审稿人,可以浏览提交的稿件、给审稿人分配稿件、罗列录用和(或)拒绝的稿件以及关闭审稿过程。
其中关闭审稿过程包括罗列录用和(或)拒绝稿件。
系统采用面向对象方法开发,使用UML进行建模。
绘制出系统的用例图及提交稿件的活动图。
(08.12)
一、2009.12
二、2009.05
三、2008.12
四、2008.05
参考答案:
09.12
记录收费09.05:
停止系统
银行系统<<extends>>查询金额
08.12
分配稿件
08.05:U1:Car entry U2: Car exit U3:Car entry when full U4: Report Statistics
A: Car Park B: Barrier C: Entry Barrier D: Exit Barrier
S1: Idle S2: Await Ticket Take S3: Await Enable S4: Await Entry。