UML-用例图练习题及参考答案)
- 格式:ppt
- 大小:72.00 KB
- 文档页数:7
UML实验(含答案)实验:设计一个网上选课系统的各种UML图网上选课系统的产生是因为目前高校扩招后,在校学生日益增多。
如果仍然通过传统的纸上方式选课,既浪费大量的人力物力,又浪费时间。
同时,在人为的统计过程中不可避免出现的错误。
因此,通过借助网络系统,让学生只要在电脑中输入自己的个人选课信息来替代有纸化的手工操作成为高校管理的必然趋势。
该信息系统能够为学生提供方便的选课功能,也能够提高高等院校对学生和教学管理的效率。
要求:1. 上课前必须带草图去,否则记为缺课。
2. 对于每个图要求必须按照书中绘制相关图的过程来撰写实验报告,不可只摆出几个图。
3. 第二次实验课做用例图、类图。
其中需要对每个用例实例撰写用例描述。
4. 第三次实验课做剩下的顺序图、活动图、状态图、构件图、部署图。
需求分析网上选课系统的功能性需求包括以下内容:(1)系统管理员负责系统的管理维护工作,维护工作包括课程的添加、删除和修改,对学生基本信息的添加、修改、查询和删除。
(2)学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行查询已选课程、指定自己的选修课程以及对自己基本信息的查询。
满足上述需求的系统主要包括以下几个小的系统模块:(1)基本业务处理模块。
基本业务处理模块主要用于实现学生通过合法认证登录到该系统中进行网上课程的选择和确定。
(2)信息查询模块。
信息查询模块主要用于实现学生对选课信息的查询和自身信息的查询。
(3)系统维护模块。
系统维护模块主要用于实现系统管理员对系统的管理和对数据库的维护,系统的管理包括学生信息、课程信息等信息的维护。
数据库的维护包括数据库的备份、恢复等数据库管理操作。
系统建模在系统建模以前,我们首先需要在Rational Rose 2021中创建一个模型。
并命名为“网上选课系统”,该名称将会在Rational Rose 2021的顶端出现。
1创建系统用例模型创建系统用例的第一步是确定系统的参与者。
UML课后习题答案UML习题答案第⼀章⾯向对象设计与UML1.填空题(1)基本构造块UML规则公共机制(2)名字属性操作(3)封装继承多态(4)继承(5)瀑布模型喷泉模型基于组件的开发模型XP开发模型2. 选择题(1)C(2)A B C D(3)A B C D(4)A B C(5)A3.简答题(1)类是具有相同或相似结构、操作和约束规则的对象组成的集合,⽽对象是某⼀类的具体化实例,每⼀个类都是具有某些共同特征的对象的抽象。
类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,⽽对⼀类对象的抽象就是类.类描述了⼀组有相同特性和相同⾏为的对象。
(2)1.UML是⼀种语⾔。
2. UML是⽤来建模的。
3.UML是统⼀的标准。
(3)建模能够帮助我们按照实际情况或按我们需要的形式对系统进⾏可视化;提供⼀种详细说明系统的结构或⾏为的⽅法;给出⼀个指导系统构造的模板;对我们所做出的决策进⾏⽂档化。
在建模时应遵循以下原则:选择要创建什么模型对如何动⼿解决问题和如何形成解决⽅案有着意义深远的影响;每⼀种模型可以在不同的精度级别上表⽰;最好的模型是与现实相联系的;单个模型不充分;对每个重要的系统最好⽤⼀组⼏乎独⽴的模型去处理。
(4)UML和⾯向对象软件开发之间有紧密的关系,可以说是⾯向对象软件开发促使了UML 的产⽣。
但是由于在UML标准化的过程中,吸收了业务建模、⼯作流建模和数据库建模等领域的标准规范,形成了适应性很强的标准。
(5)在软件设计过程中,使⽤UML建模是为了能够更好地理解正在开发的系统。
通过UML 建模,可以达到以下⽬的:有助于按照实际情况或按照所需要的样式对系统进⾏可视化;能够规约系统的结构或⾏为;给出了指导构造系统的模板;对做出的决策进⾏⽂档化。
第⼆章UML通⽤知识点综述1.填空题(1)依赖泛化关联实现(2)视图图模型元素(3)实现视图部署视图(4)构造型标记值约束(5)规格说明修饰通⽤划分2. 选择题(2)C(3)A(4)A B(5)D3.简答题(1)在UML中,定义了四种基本的⾯向对象的事物,分别是结构事物、⾏为事物、分组事物和注释事物等。
单项选择题:1、下面选项中语义上等价并且可以互相转换的两种图是:ﻩﻩ( Aﻩ)A.序列图、协作图B.序列图、活动图C.状态图、协作图D.状态图、活动图2、在用例图中,执行者之间的关系只有:ﻩﻩﻩﻩﻩ( C )A.扩展B.包含C.泛化D.实现3、表示接口的构造型(stereotype)是: ﻩﻩﻩﻩﻩ(ﻩB )A.<<abstract>>B.<<interface>>C.<<component>>D.<<include>>4、下列选项中不可以具有泛化关系的元素是:ﻩﻩﻩﻩ(ﻩDﻩ)A.类B.参与者C.用例D.活动(活动图)5、类图中可以明确的信息有:ﻩﻩﻩﻩﻩﻩﻩ( D )A.属性B.操作C.职责D.以上都可以类图中有属性、操作、职责6、在活动图中,表示接收信号的符号是: ﻩﻩﻩﻩ(ﻩB )A.凸五边形(发送信息)B.凹五边形C.圆角矩形D.直角矩形7、将活动图中的活动状态进行分组,使得每一组表示一个特定对象的工作内容,这种元素是: ﻩﻩﻩﻩﻩﻩﻩﻩﻩﻩ(ﻩA )A.泳道B.分叉C.决策D.汇合8、下列关于状态图的说法中,正确的是 ﻩﻩﻩﻩ ( C ) A.状态图是UML 中对系统的静态方面进行建模的图之一; B.状态图是活动图的一个特例;C.状态图是对一个对象的生命周期进行建模,描述对象随时间变化的行为。
D .状态图强调对有几个对象参与的活动过程建模。
(对单个关键对象考察)UM L分为静态建模(类图、对象图),动态建模(序列图、协作图、状态图、活动图、交互概观图、定时图),架构建模(包图、构件图、部署图)9、类通常可以分为实体类,边界类和ﻩ ﻩ ﻩﻩ (ﻩC ) A.父类 B.子类 C .控制类 D .模板类10、序列图的基本组成元素包括由对象、生命线、控制聚焦和 ﻩ ( B ) A .关系 B.消息 C.用例 D.实体11、对象之间通过消息来进行通信,消息通信在面向对象的语言中表现为: ( C ﻩ) A.方法实现 B .方法嵌套 C .方法调用 D.方法定义12、对于下图,下列说法中不正确的一项是:ﻩ ﻩ ﻩ( C ﻩ)A.2与3是包含关系; B.5与6是扩展关系; C.4可以参与2; D.1可以参与5。
一、某企业为了方便员工用餐,餐厅开发了一个订餐系统(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卡账户信息。
UML软件建模教程课后习题习题 1一、简答题1. 简述模型的作用。
答:现实系统的复杂性和内隐性,使得人们难于直接认识和把握,为了使得人们能够直观和明了地认识和把握现实系统,就需要借助于模型。
2. 软件模型有什么特征?答:建模对象特殊,复杂性,多样性3. 软件建模技术有哪些因素?答:软件建模方法,软件建模过程,软件建模语言,软件建模工具4. 软件模型包括哪些方面的内容?答:从模型所反映的侧面看:功能模型,非功能模型,数据模型,对象模型,过程模型,状态模型,交互模型,架构模型,界面模型等;从软件开发工作看:业务模型,需求模型,分析模型,设计模型,测试模型等。
5. 软件建模工具应该具有哪些基本功能?答:软件模型的生成和编辑,软件模型的质量保障,软件模型管理等二、填空题1、模型是对现实的(抽象)和模拟,是对现实系统(本质)特征的一种抽象、简化和直观的描述。
2、模型具有(反映性)、直观性、(简化性)和抽象性等特征。
3、从抽象程度,可以把模型分为(概念模型)、逻辑模型和(物理模型)三种类型。
4、较之于其他模型,软件模型具有(建模对象特殊)、复杂性和(多样性)等特征。
5、软件模型是软件开发人员交流的(媒介),是软件升级和维护的(依据)。
6、软件建模技术的要素包括软件建模方法、(软件建模过程)、软件建模语言和(软件建模工具)。
7、从开发阶段看,软件建模有业务模型、(需求模型)、分析模型、(设计模型)和测试模型。
8、软件语言有软件需求定义语言、(软件设计语言)、软件建模语言、(软件结构描述语言)、软件程序设计语言等。
9、根据软件建模工具的独立性,把软件建模工具分为(独立软件)建模工具和(插件式软件)建模工具。
10、OMG在( 1997 )年把UML作为软件建模的标准,UML2.0版本是( 2005 )年颁布的。
三、选择题1、对软件模型而言,下面说法错误的是( D )。
A.是人员交流的媒介B.是软件的中间形态C.是软件升级和维护的依据D.是软件的标准文档2、下面说法错误的是( B )。
1. 找出actor和外部系统,确定系统边界.参与者:呼叫者、邮箱用户2. 主要功能分析(参与者期望的系统行为等)(1). 呼叫者保留信息(留言).(2). 邮箱用户管理信息: 收听/存储/删除.(3). 邮箱用户更改问候语.(4). 邮箱用户更改密码.3. 初步找到的用例呼叫者:保留信息邮箱主人:接收信息、更改问候语、更改密码4. 进一步寻找用例邮箱主人:登录邮箱呼叫者、邮箱主人:拨打邮箱号码5. 分析用例之间的关系本例较为简单,只使用“包含关系”即可.6. 绘制初步用例图7. 编写每一个用例的脚本8. 区分脚本中的主事流或异常情况事件流9. 细化用例图,完成用例模型(略)用例1: 拨打邮箱号1. 呼叫者拨打语音邮件系统的主号码.2. 语音邮件系统发出提示音:输入邮箱号码并加#号.3. 呼叫者输入接收者的邮箱号.4. 语音邮件系统发出问候语:已进入XX的邮箱,请留言. 用例2: 保留信息1. 呼叫者完成邮箱号输入操作.2. 呼叫者说出信息.3. 呼叫者挂断电话.4. 语音邮件系统将记录的信息存放在接收者的邮箱中. 用例3: 登录系统1. 邮箱用户完成邮箱号输入操作.2. 邮箱用户键入密码并后跟#键.(默认号码与邮箱号相同)3. 语音邮件系统播放邮箱菜单:按1键接收信息.按2键更改密码.按3键更改问候语.用例4: 接收信息1. 邮箱用户完成登录操作.2. 邮箱用户选择“接收信息”菜单选项.3. 语音邮件系统播放信息菜单:按1收听当前信息; 按2存储当前信息; 按3删除当前信息;按4返回邮箱菜单.4. 邮箱用户选择“收听当前信息”菜单选项.5. 语音邮件系统播放当前新信息,若无新信息,播放当前已有信息.(注意: 只播放,不删除)6. 语音邮件系统播放信息菜单.7. 用户选择”删除当前信息”,则信息被永久删除.8. 继续执行第3步.用例4变体#1: 存储一条信息1.1 以第6步作为开始.1.2 用户选择“存储当前信息”.1.3 当前信息从新信息队列中删除并添加到旧信息队列中.1.4 继承执行第3步.用例5: 更改问候语1. 邮箱用户完成登录操作.2. 邮箱用户选择“更改问候语”菜单选项.3. 邮箱用户说出新的问候语.4. 邮箱用户按下#键.5. 邮件系统设置新的问候语.用例5变体#1: 在确认前挂断电话1.1 以第3步作为开始.1.2 邮件用户挂断电话.1.3 邮件系统保留旧的问候语.用例6: 更改密码1. 邮箱用户完成登录操作.2. 邮箱用户选择“更改密码”菜单选项.3. 邮箱用户输入新的密码.4. 邮箱用户按下#键.5. 邮件系统设置新的密码.用例6变体#1: 在确认前挂断电话1.1 以第3步作为开始.1.2 邮件用户挂断电话.1.3 邮件系统保留旧的密码.。
UML试题(内含答案)【用例图】1.用例图的节点包括(ABD)A、用例B、边界C、关联D、执行者2.用例之间的关系主要有(BCD)A、聚合B、继承C、扩展D、包含3.在采用用例模型捕获需求时,需要执行如下(ABCD)操作A、描述非功能需求B、用例建模C、识别用例D、识别参与者4.在识别用例时,以下(ABC)问题可以帮助识别用例A、当系统状态发生故障时,是否需要通知参与者B、系统是否存在外部事件,如果存在,是哪个能参与者通知系统这些个部事件C、参与者希望系统为他提供什么样的功能D、系统运行环境是什么5.在用例图中,可以用(D)来表示整个软件系统或其中一些子系统的边界,也可以用它表示软件系统的不同发布版本的功能范围A、执行者B、关联关系C、用例D、边界框6.(B)作为完成用例任务的责任承担者,协调、控制其他类共同完成用例规定的功能或行为A、数据对象B、控制类C、实体类D、边界类7.基于用例图的需求捕获的第一步就是确定系统的参与者,在寻找系统参与者时,可以根据以下(ABCD)等问题来确定A、系统同环境如何进行交互B、由谁安装系统C、系统为哪些对象提供信息、服务D、系统的使用者是谁8.如果用例B是用例A的某项子功能,并且建模者确切地知道在A所对应的动作序列中何时将调用B,则称(A)A、用例A扩展用例BB、用例A继承用例BC、用例A包括用例BD、用例A实现用例B9.如果用例A与用例B相似,但A的动作序列是通过改写B的部分或者扩展B的动作而获得的,则称(B)A、用例A实现用例BB、用例A继承用例BC、用例A扩展用例BD、用例A包括用例B10.如果用例A与用例B相似,但A的功能较B多,A的动作序列是通过在B的动作序列中的某些执行点上插入附加的动作序列而构成的,则称(C)A、用例A扩展用例BB、用例A包含用例BC、用例A继承用例BD、用例A实现用例B11.在UML中,(A)表示使用软件系统的功能,与软件系统交换信息的外部实体A、执行者B、类C、用例D、用例图12.在用例图中,执行者之间的关系只有(B)一种A、包含B、继承C、扩展D、实现【静态图】1.对于类,其属性的可见性表示对类的外部世界的可见性,它有以下(ABCD)选项A、公开(public)B、包内公开(package)C、保护(protected)D、私有(private)2.在UML中,以下(ABCD)是可以应用于包的构造型A、框架{《Framework》}B、虚包{《Facade》}C、子系统{《Subytem》}D、系统{《ytem》}3.两个类之间的关联表示他们之间存在一种不适于继承的逻辑关系。
1.UML 中关联的多重度是指 (B)A.一个类有多个方法被另一个类调用B.一个类的实类能够与另一个类的多个实类相关联C.一个类的某个方法被另一个类调用的次数D.两个类所具有的相同的方法和属性2.已知三个类 A.B 和C.其中类 A 由类B 的一个实类和类 C 的1 个或多个实类构成.请画出能够正确表示类 A,B 和 C 之间关系的 UML 类图.3 在某个信息系统中,存在如下的业务陈述:①一个客户提交 0 个或多个订单;②一个订单由一个且仅由一个客户提交。
系统中存在两个类:“客户”类和“订单”类。
对应每个“订单”类的实例,存在 (46)_B “客户”类的实例;对应每个“客户”类的实例,存在(47)D 个“订单” 类的实例。
供选择的答案:(1)A.0 个 B.1 个 C.1 个或多个 D.0 个或多个(2)A.0 个 B.1 个 C.1 个或多个 D.0 个或多个4、 UML 中的交互图有两种,分别是顺序图和协作图,请分析一下两者之间的主要差别和各自的优缺点。
掌握利用两种图进行的设计的方法。
答:顺序图可视化地表示了对象之间随时间发生的交互,它除了展示对象之间的关联,还显示出对象之间的消息传递。
与顺序图一样,协作图也展示对象之间的交互关系。
顺序图强调的是交互的时间顺序,而协作图强调的是交互的语境和参与交互的对象的整体组织。
顺序图按照时间顺序布图,而协作图按照空间组织布图。
顺序图可以清晰地表示消息之间的顺序和时间关系,但需要较多的水平方向的空间。
协作图在增加对象时比较容易,而且分支也比较少,但如果消息比较多时难以表示消息之间的顺序。
14.什么是对象间的可见性 ?答:可见性(Visibility)指的是一个对象能够“看到” 或者引用另一个对象的能力。
5、UML 提供了一系列的图支持面向对象的分析与设计,其中 (1)给出系统的静态设计视图;(2) 对系统的行为进行组织和建模是非常重要的;(3) 和(4) 都是描述系统动态视图的交互图,其中(3) 描述了以时间顺序组织的对象之间的交互活动,(4)强调收发消息的对象的组织结构。
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. 面向对象程序的基本特征是:抽象、封装、继承和多态。
【用例图】.用例图的节点包括1ABD)A、用例B、边界C、关联D、执行者.用例之间的关系主要有[BCD)A、聚合B、继承C、扩展D、包含.在承受用例模型捕获需求时,需要执行如下[ABCD)操作A、描述非功能需求B、用例建模C、识别用例D、识别参与者.在识别用例时,以下[ABC)问题可以帮助识别用例A、当系统状态发生故障时,是否需要通知参与者B、系统是否存在外部大事,假设存在,是哪个能参与者通知系统这些个部大事C、参与者期望系统为他供给什么样的功能D、系统运行环境是什么1.在用例图中,可以用⑴)来表示整个软件系统或其中一些子系统的边界,也可以用它表示软件系统的不同公布版本的功能范围A、执行者 B、关联关系 C、用例D、边界框6.山〕作为完成用例任务的责任担当者,协调、掌握其他类共同完成用例规定的功能或行为A、数据对象B、掌握类C、实体类D、边界类.基丁•用例图的需求捕获的第一步就是确定系统的参与者,在查找系统参与者时,可以依据以下(ABCD]等问题来确定A、系统同环境如何进展交互. (A)可以用于帮助设计人员在UML模型为模型定义约束信息,创立更为准确的设计模型A、OCLB、表达式C、属性D、变量. UML2. 0在1.0的根底上,对如下[ABCD)的建模力量进展了增加A、活动B、交互C、简单构造D、状态机7.在界面设计中,通常屏幕的⑴)表示与软件系统的运行状态无关、在任何状况下均没有变化的文本、图标[icon)、图形(graph)、图象(image)等A、用户命令元素B、用户输入元素C、动态元素D、静态元素8.在界面设计中,通常屏幕的〔C〕表示在屏幕上预留空位、由用户在界面操作中填写或选择的界面元素,包括可编辑的文本、单项选择钮(radio)、多项选择框(checkbox)、选择列表(select list) 等A、静态元素B、动态元素C、用户输入元素D、用户命令元素.对于一个学校的课程注册治理系统,假设有一条需求为“学生只能查看本人选课打算;教师只能查看本人所开课程的学生信息;教务治理员可以查看全部信息。