类图实例和习题
UML课后习题答案
填空题
第一章
(1)统一建模语言UML是绘制软件蓝图的标准工具语言,可以对软件系统产品进行说明、可视化、构造和编制文档。
(2)UML在实际软件项目中,可以用于构造各种类型系统的业务模型和软件模型。
(3)软件的开发模式有瀑布模型、喷泉模型、基于构件的开发模型和XP方法。
(4)面向对象程序的三大要素是多态、封装和继承。(抽象)
(5)瀑布模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题。
第二章
(1) 在UML中,静态视图包含有两种视图,分别是类图和对象图。
(2) 规格说明,修饰,拓展划分是UML常用的通用机制。
(3) 够造型,标记型,约束是UML常用的扩展机制。
(4) 用例视图描述了系统的参与者与系统进行交互的功能,是参与者所能观察和使用到
的系统功能的模型图。
(5) 状态图是通过对象的各种状态来建立模型来描述对象的随时间变化的动态行为,并
且它是独立的对象为中心进行描述。
第三章
(1)Rational Rose默认支持的目标语言主要包括 Java、Visual Basic等。(C++,C#)
(2) 部署视图显示的是系统的实际部署情况,它是为了便于理解系统如何在一组处
理解节点上的物理分布,而在分析和设计中使用的架构视图。
(3)使用R ational Rose 生成代码的步骤包括选择待转换的目标模型、检查Java语言的语
法错误、设置代码生成属性、生成代码。
(4)在用例视图中包括了系统中的所有参与者、用例和用例图,必要时还可以在其中添加顺序图、协作图、活动图和类图等。
(5) 构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系包含模型代码库、执行文件、运行库和其他构件等信息。
uml课后习题答案
uml课后习题答案
第一章系统建模与分析设计的演变
课后习题:
1、A
2、C
3、D
4、B
5、软件按照其工作方式可划分为实时处理软件、分时处理软件、交互式软件和批处理软件。
6、软件生存周期由软件的定义、软件的开发和软件的使用维护和更新换代三部分组成。
7、软件开发模型有瀑布模型、增量模型、螺旋模型、智能模型和快速原型模型等五种主要模型
8、面向对象技术采用以类为中心的封装、继承、多态等不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造。
9、UML的优点是:唯一性、连续性、维护性、复用性和完善性。
第二章统一建模语言UML
1、A
2、B
3、C
4、D
5、B
6、UML分析和设计模型由三类模型图表示,三类模型图是:用例模型图、静态模型图和动态模型图。
7、UML的软件统一开发过程,即生命周期按时间顺序可以划分为,开始,详细设计,系统构造和移交四个阶段及阶段中一系列的循环重复。
8、UML开发过程是一种二维结构软件开发过程,软件项目开发
过程流程包括的核心工作内容是,分析,设计,实现,测试和配置
9、UML中的五个不同的视图可以完整地描述出所建造的系统,这五种视图是用例视图、逻辑视图、构件视图、进程视图和配置视图。
10、UML中有10中基本图可以完整地描述出所有建造的系统,这10中视图是用例图、类图、对象图、包图、构件图、配置图、序列图、活动图、状态图和合作图。
第三章需求分析与用例建模
习题:
1、B
2、A
3、C
4、D
5、B
6、A
7、A
8、UML软件开发过程需求分析阶段产生的模型由三类模型图表示。他们是:用例模型图、静态模型图和动态模型图。
UML课后习题答案
3.假设类ClassB是ClassA的子类,其中ClassA的属性和方法如图所示,则ClassB能够访问的有哪些?
子类只有private的成员无法访问,因此可以访问的属性有mem02和mem03,可以访问的方法有op1。
4.在图3-31中,是一个仓库管理系统的类模型局部,其中IncomeOrder是指入库单,OrderItem是指入库中的每一项,Product则是产品信息。请指出模型中的错误,说明原因并改正错误。
类名、属性、操作
2.在对类名、属性/方法名时,通常会遵循什么样的规则?请举例说明。
对于类名通常采用CamelCase格式(大写字母开头、混合大小写,每个单词以大写开始,避免使用特殊符号),尽可能避免使用缩写,例如OrderDetail。
属性名也采用CamelCase格式,但为了与类名进行区别,通常首字母以小写开头,例如productId。
实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架构师提供总体指导。
数据库模型:架构师、数据库开发人员、资深开发人员(设计人员);以数据库开发人员为主,架构师提供指导,资深开发人员(设计人员)予以配合。
1. UML是由哪三个部分组成的,请分别说明它们的作用。
基本构造块:也就是建模元素,是模型的主体
输入支付信息将商品放入购物车结账预订商品
第7章GRASP设计实例
第七章GRASP设计实例习题
第一题.下面是一个“图书管理信息系统”的用户需求陈述,请按陈述后的小题作答:
读者来图书馆借书,可能先查询馆中的图书信息。查询可以按书名、作者、图书编号、关键字查询。如果查到则记下书号,交给流通组工作人员,等待办理借书手续。如果该书已经被全部借出,可做预定登记,等待有书时被通知。如果图书馆没有该书的记录,可进行缺书登记。
办理借书手续时先要出示借阅证,没有图书证则去图书馆办公室申办图书证。如果借书数量超出规定,则不继续借阅。借书时流通组工作人员登记图书证编号、图书编号、借出时间和应还书时间。
当读者还书时,流通组工作人员根据图书证编号找到读者的借书信息,察看是否超期。如果已经超期,则进行超期处罚。如果图书有破损、丢失,则进行破损处罚。登记还书信息,做还书处理,同时查看是否有预定登记, 如果有则发出到书通知。
图书采购人员采购图书时,要注意合理采购。如果有缺书登记,则随时进行采购。采购到货后,编目人员进行验收、编目、上架、录入图书信息、发到书通知。如果图书丢失或旧书淘汰,则将该书从书库中清除,即图书注销。
以上是图书管理系统的基本需求。经过与图书馆工作人员反复交流,他们提出了下列建议:
a.当图书借阅的图书到期时,希望能够提前用短信或电子邮件方式提示读者。
b.读者希望能够实现网上查询和预定图书。
c.应用系统的各种参数设置最好是灵活的,由系统管理人员根据需要设定。例如,借阅期的上限,还书提示的时间,预定图书的保持时间等参数。
问题:
1、请你从用户需求陈述中识别出“网上图书销售系统”的参与者和基本用例,并对其进行说明(用例说明应包括编
UML基础与Rose建模实用课后习题及答案
UML基础与Rose建模实用教程课后习题及答案
第1章面向对象概述
1. 填空题
(1)软件对象可以这样定义:所谓软件对象,是一种将状态和行为有机结合起来形成的软件构造模型,它可以用来描述现实世界中的一个对象。
(2)类是具有相同属性和操作的一组对象的组合,即抽象模型中的“类”描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。
(3)面向对象程序的基本特征是抽象、封装、继承和多态。
2. 选择题
(1)可以认为对象是ABC。
(A)某种可被人感知的事物
(B)思维、感觉或动作所能作用的物质
(C)思维、感觉或动作所能作用的精神体
(D)不能被思维、感觉或动作作用的精神体
(2)类的定义要包含以下的要素ABD。
(A)类的属性(B)类所要执行的操作
(C)类的编号(D)属性的类型
(3)面向对象程序的基本特征不包括B。
(A)封装(B)多样性
(C)抽象(D)继承
(4)下列关于类与对象的关系的说法不正确的是A。
(A)有些对象是不能被抽象成类的
(B)类给出了属于该类的全部对象的抽象定义
(C)类是对象集合的再抽象
(D)类用来在内存中开辟一个数据区,并存储新对象的属性
3. 简答题
(1)什么是对象?试着列举三个现实中的例子。
对象是某种可被人感知的事物,也可是思维、感觉或动作所能作用的物质或精神体,例如桌子.椅子.汽车等。
(2)什么是抽象?
抽象是对现实世界信息的简化。能够通过抽象将需要的事物进行简化、将事物特征进行概括、将抽象模型组织为层次结构、使软件重用得以保证。
(3)什么是封装?它有哪些好处?
封装就是把对象的状态和行为绑在一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的内部细节。封装有两个含义;一是把对象的全部状态和行为结合在一起,形成一个不可分割的整体。对象的私有属性只能够由对象的行为来修改和读取。二是尽可能隐蔽对象的内部细节,与外界的联系只能够通过外部接口来实现。通过公共访问控制器来限制对象的私有属性,使用封装具有以下好处:避免对封装数据的未授权访问、帮助保护数据的完整性、当类的私有方法必须修改时,限制了在整个应用程序内的影响。
UML练习题全讲解
UML练习题全讲解
UML练习题
1.UML的全称是( B )
(A)Unify Modeling Language (B)Unified Modeling Language (C)Unified Modem Language (D)Unified Making Language 2.执行者(Actor)与用例之间的关系是( C )(A)包含关系(B)泛化关系(C)关联关系(D)扩展关系
3.
在类图中,下面哪个符号表示继承关系( C
4.在类图中,“ #”表示的可见性是( B
)
(A)Public (B
)Protected (C)Private (D)Package 5.
在类图中,下面哪个符号表示接口( C )
6.下面哪个视图属于UML语言的交互图( D )
(A)行为图(B)状态图(C)实现图(D)顺序图7.UML语言包含几大类图形( B )
(A)3 (B)5 (C)7 (D)9
8.OMT方法是由下面哪位科学家提出的( b )
(A)Booch (B)Rumbaugh (C)Coad (D)Jacobson
9.下面那个类图的表示是错误的( D )
10.什么概念被认为是第二代面向对象技术的标志( A )
(A)用例(B)UML语言(C)活动图(D)组件图
11.下面哪个符号代表包图( A )
12.生命线是UML视图中哪个图形的组成部分( D )
(A)类图(B)状态图(C)活动图(D)顺序图
(B)
(A) (C) (D)
(B)
(A) (D)
(B)
(A) (C) (D)
(B)
(A) (D)
13. 在UML 的顺序图中,通常由左向右分层排列各个对象,正确的排列方法是( a )
《UML面向对象建模基础》习题答案范文
能只涉及一个产品,合理的方式应该是入每个入库单项(OrderItem )与产品一对一关联。即应该绘制为:
6. 在图3-32中,对于每个流转记录的处理人它的类型(窗口人员、核查人员、审批人员)是唯一的,也就是只可能取一种值。请在图中加上表示这种规则的约束。
后来,开发人员又在图3-32的基础上进行了一些修改,7.
其
中有一个局部修改成了如图3-33的内容。请说明这些新
增加的元素分别表示什么含义。 has 是关联名称,表示这种关联是“拥有”关系。
“申请ID ”是限定符,表示每一个流转记录只能用一
个
“申请ID ”。 图3-34是小张绘制的一张关于网上商城用户管理的领13.
域类图,但其中存在一些问题,请指出错误并说明理由。
图3-34 网上商城用户管理领域类图局部
作为领域类图不应该涉及到实现类,因此不应该引入诸如System.Data.Oracleclient和ArrayList之类与程序实现直接相关的类。
16. 根据以下系统描述,绘制出最初的类模型。
该系统为指纹门禁系统,它包括四个主要部件:主机、锁控器、指纹采集器和电控锁。系统中的每个电控锁都有一个惟一的编号。锁的状态有两种:“已锁住”和“未锁住”。主机上可以设置每把锁的安全级别以及用户的开锁权限。只有当用户的开锁权限大于或等于锁的安全级别并且处于“已锁住”状态时,才能将锁打开。用户的指纹信息、开锁权限以及锁的安全级别都保存在主机的数据库中。用户开锁时,只需按一下指纹采集器。指纹采集器将发送一个中断事件给锁控器,锁控器从指纹采集器读取用户的指纹并将指纹信息发送到主机,主机根据数据库中存储的信息来判断用户是否具有开锁权限,若有且锁当前处于“已锁住”状态,则将锁打开;否则系统报警。
4-2类图练习题
Instructor
Tutor 1 1
Student
Teacher
Professor
Biblioteka Baidu
1 1 UnderGraduate Graduate TeacherAssistant n
1
2 创建类图 。 系统需求描述: (1)系统允许管理员通过从磁盘加载存货数据来运 行存货清单报告。 (2)管理员通过从磁盘加载存货数据、向磁盘保存 存货数据来更新存货清单。 (3)售货员做销售记录。 (4)电话操作员是处理电话订单的特殊售货员。 (5)任何类型的销售都需要更新存货清单。 (6)如果交易使用了信用卡,那么售货员需要核实 信用卡。 (7)如果交易使用了支票,那么售货员需要核实支 票。
credit card +Verify() 0..* n sale +Update() check +verify() 0..* n 1 n +Load() +Save() +Update()
inventory
3 图书管理系统需求如下: 添加图书 删除图书 添加标题 删除标题 添加借阅者信息 删除借阅者信息 登陆
用例图示例
Administrator update inventory
<<include>> load inventory data <<include>>
第三章 类图
在UML中,常用的关联的多重性表示格式如下:
0..1
0或1
1
1
0..*(0..n)
0或多个
*
0或多个
1..* (1..n)
1或多个
8
8
5,7..10
5或7~10
多当
重类
AB
性 是 ,
和 类
就 说 明 类
之 间 是 一
对 类
对 零 或
是一
可(
选
的
(
BA
one-to-zero or one
optional
如果你还没有另外一半,请你虚拟一位你的意中人, 用类图画出你和你的虚拟意中人的关系。
如果你还没有到恋爱或结婚年龄,那么你不需要完成 这个练习,直接看后面的参考答案。
题目1:
对于已婚的,如果你是男生,在这个关系中的角色就是 老公,一个老公只能对应一个老婆,你应该不会画成1 对多吧?
如果你未婚,但你同时有多个男朋友或者女朋友,那么 你们的关系可以这样表示
3.2 UML中的类
(1)抽象类
在UML中,抽象类和抽象方法的表示是将其名 字用斜体表示。
3.2 UML中的类
(2)接口
接口是一种类似于抽象类的机制,是一个没有 具体实现的类。
接口可以实现多态; 在UML中接口有两种表示方法:
图标表示法
UML习题及答案
ATM建模
1、浏览器和框图窗口之间有关系吗?如果有,是怎么样的关系?
答:有。我们可以用浏览器打开一个或几个UML框图。改变框图中的元素时,Rose自动更新浏览器。同样用浏览器改变元素时,Rose自动更新相应框图。这样,Rose就可以保证模型的一致性。
2、用例图中的参与者和用例分别表示什么?
答:从用例图中我们可以看到系统干什么,与谁交互。用例是系统提供的功能(系统“干什么”),参与者是系统与谁交互,参与者可以是人、系统或其他实体。
3、ATM用例图中的箭头从参与者指向用例表示什么?从用例指向参与者又表示什么?答:箭头从参与者到用例表示由参与者启动用例。箭头从用例到参与者表示用例产生一些参与者要使用的信息。
4、RUP有哪五个工作流程?我们在RUP的哪个工作流程中画用例图?
答:RUP(统一软件开发过程)的五个核心工作流程包括:需求捕获、分析、设计、实现和测试。在需求捕获时画用例图。
5、活动图中的泳道表示什么意思?
答:泳道是活动图里的竖段,包含特定人员或组织要进行的所有活动。可以把活动图分为多个泳道,每个泳道对应每个人员或组织,他们各自的活动都放在各自的泳道中。6、活动图中的同步棒表示什么意思?
答:表示并发控制流的分叉和汇合。结合图中具体来说,同一段时间内这几个活动同时发生/这几个活动都结束之后才进入下个决策点的判断中。
7、活动图中的初始状态和终止状态分别用什么表示?数目上有什么限制?
答:实心圆和牛眼。初始状态必须有,而且只能有1个。终止状态可以是0,1或多个。
8、活动图中决策点之后的[ ]里的内容是什么,有什么要求?
UML练习题全
UML练习题
1.UML的全称是( B )
(A)Unify Modeling Language (B)Unified Modeling Language (C)Unified Modem Language (D)Unified Making Language 2.执行者(Actor)与用例之间的关系是( C )
(A)包含关系(B)泛化关系(C)关联关系(D)扩展关系
3.
在类图中,下面哪个符号表示继承关系( C
4.在类图中,“ #”表示的可见性是( B
)
(A)Public (B
)Protected (C)Private (D)Package 5.
在类图中,下面哪个符号表示接口( C )
6.下面哪个视图属于UML语言的交互图( D )
(A)行为图(B)状态图(C)实现图(D)顺序图7.UML语言包含几大类图形( B )
(A)3 (B)5 (C)7 (D)9
8.OMT方法是由下面哪位科学家提出的( b )
(A)Booch (B)Rumbaugh (C)Coad (D)Jacobson
9.下面那个类图的表示是错误的( D )
10.什么概念被认为是第二代面向对象技术的标志( A )
(A)用例(B)UML语言(C)活动图(D)组件图
11.下面哪个符号代表包图( A )
12.生命线是UML视图中哪个图形的组成部分( D )
(A)类图(B)状态图(C)活动图(D)顺序图
(B)
(A) (C) (D)
(B)
(A) (D)
(B)
(A) (C) (D)
(B)
(A) (D)
13. 在UML 的顺序图中,通常由左向右分层排列各个对象,正确的排列方法是( a )
UML课后习题答案
第1章 面向对象设计与UML 1. 填空题
(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)A 3.简答题 (1)类是具有相同或相似结构、操作和约束规则的对象组成的集合, 而对象是某一类的具体化实例,每一个类都是具有某些共同特征的对象 的抽象。类与对象的关系就如模具和铸件的关系,类的实例化结果就是 对象,而对一类对象的抽象就是类.类描述了一组有相同特性和相同行 为的对象。 (2)1.UML是一种语言。 2. UML是用来建模的。 3.UML是统一的标 准。 (3)建模能够帮助我们按照实际情况或按我们需要的形式对系统进行 可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系 统构造的模板;对我们所做出的决策进行文档化。 在建模时应遵循以下原则:选择要创建什么模型对如何动手解决问题和 如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度 级别上表示;最好的模型是与现实相联系的;单个模型不充分;对每个 重要的系统最好用一组几乎独立的模型去处理。 (4)UML和面向对象软件开发之间有紧密的关系,可以说是面向对象 软件开发促使了UML的产生。但是由于在UML标准化的过程中,吸收 了业务建模、工作流建模和数据库建模等领域的标准规范,形成了适应
UML第5章 习题
第5章
1.关于协作图的描述,下列哪个不正确()
A.协作图作为一种交互图,强调的是参加交互的对象的组织;
B.协作图是顺序图的一种特例
C.协作图中有消息流的顺序号;
D.在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成;
2.事件(event)表示对一个在时间和空间上占据一定位置的有意义的事情的规格说明,下面哪个不是事件的类型()
A.信号
B.调用事件
C.空间事件
D.时间事件
3.顺序图是强调消息随时间顺序变化的交互图,下面哪个不是用来描述顺序图的组成部分()
A.信号
B.生命线
C.激活期
D.类角色
4.在UML中,__把活动图中的活动划分为若干组,并将划分的组指定给对象,这些对象必须履行该组所包括的活动,它能够明确地表示哪些活动是由哪些对象完成的。
A.组合活动B.同步条
C.活动D.泳道
5.UML中,对象行为是通过交互来实现的,是对象间为完成某一目的而进行的一系列消息交换。消息序列可用两种类来表示,分别是()。
A.状态图和时序图B.活动图和协作图
C.时序图和协作图D.状态图和活动图
6.顺序图由类角色,生命线,激活期和()组成
A.关系B.消息
C.用例D.实体
7.在UML顺序图中,()对消息传递的目标对象的销毁。
A、销毁(destory)消息
B、创建(create)消息
C、返回消息
D、自消息
8.顺序图和合作图建立了UML面向对象开发过程中的对象动态()模型。
A.交互B.状态
C.体系结构D.软件复用
9.顺序图描述()对象之间消息的传递顺序。
A.某个B.单个
C.一个类产生的D.一组
10.顺序图的模型元素有()、消息、链接等,这些模型元素表示某个用例中的若干个对象和对象之间所传递的消息,来对系统的行为建模。
UML练习题
UML 课堂练习题
一、单选题
1. UML 的全称是 ( )
(A )Unify Modeling Language
(B )Unified Modeling Language (C )Unified Modem Language (D )Unified Making Language
2. 执行者(Actor )与用例之间的关系是( )
(A )包含关系 (B )泛化关系 (C )关联关系 (D )扩展关系
3.
在类图中,下面哪个符号表示继承关系( ) 4. 在类图中,“ #”表示的可见性是( )
(A )Public (B )Protected (C )Private
(D )Package 5.
在类图中,下面哪个符号表示接口( ) 6. 下面哪个视图属于UML 语言的交互图( )
(A )行为图 (B )状态图 (C )实现图 (D )顺序图
7. UML 语言包含几大类图形( )
(A )3 (B )5 (C )7 (D )9
8. OMT 方法是由下面哪位科学家提出的( )
(A )Booch (B )Rumbaugh (C )Coad (D )Jacobson
9. 下面那个类图的表示是错误的( )
10. 什么概念被认为是第二代面向对象技术的标志( )
(A )用例 (B )UML 语言 (C )活动图 (D )组件图
(B) (A) (C)
(D) Student Student name : String age: Integer Student getName () getAge () Student Name : String Age:Integer getName () getAge ()
类图练习题
专题三:类图(对象图、包图)
一、单项选择题
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中下列图形代表什么关系?( )
9、汽车(Car)由轮子、发动机、油箱、座椅、方向盘等组成。那么car类和其他类(Wheel、Engin、Tank、Chair、SteeringWheel)之间的关系是:()
统一建模语言UML总复习题
《统一建模语言UML》复习资料汇总
一、填空题
1.状态图中3个常用的动作是入口动作、出口动作和do动作。
2.顺序图中,消息用水平箭头线表示;时间用垂直虚线表示。
3.用例图两个最核心的元素是参与者与用例。
5.在UML的表示中顺序图将交互关系表示为一张二维图,其中纵向是时间轴,时间沿竖线向下延伸。横向代表了在协作中各独立对象的角
色。
6.状态机图图描述从状态到状态的控制流程,常用来对系统的动态特征进行建模。
7.在UML中,状态机由对象的各个状态和连接这些状态的转换组成,是展示状态与状态转换的图。
8、在某个信息系统中,存在如下的业务陈述:①一个客户提交0个或多个订单;②一个订单由一个且仅由一个客户提交。系统中
存在两个类:“客户”类和“订单”类。对应每个“订单”类的实例,存在L个“客户”类的实例;对应每个“客户”类的实例,存在 0个或多个“订单”类的实例。
9、UML提供一系列的图支持面向对象的分析与设计,其中类图给出系统的静态设计视图; 用例图对系统的行为进行组织和建模
是非常重要的;序列图和协作图都是描述系统动态视图的交互图,前者描述了以时间顺序组织的对象之间的交互活动,后者强调收发消息的对
象的组织结构。
供选择的答案:状态图、用例图、状态图、序列图、部署图、协作图、类图
10活动图中分叉节点和结合节点图符是用来描述多进程的并发处理行为。
11.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用虚线表示,继承关系用实线表示。
12.状态图和类图、顺序图不同之处在于,后两种图能够对多个对象建立模型,而状态图只是对 1个对象建立模型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图 书 管 理 系 统 的 用 例
5 6 7 8 9 10 11 12 13 14 15 16 17 18 Librarian (图书管理员)
进行图书类型设置 进行借阅种类设置 进行图书信息设置 为读者办证 根据需要进行图书信息查询 进行读者信息查询 处理读者的借书请求 处理读者的还书请求 处理读者的续借图书请求 收取读者的超期罚款 收取读者的图书预订请求 处理读者的取消预订请求 处理图书挂失 处理读者证挂失
Borrow-Lend
1.根据以下描述,给出系统的UML类设计方案。 系统名称:农夫果园游戏系统 任务角色:农夫(Farmer)、 市场调查员(Inquirer)、农场主(Boss) 系统实物:各种水果(Fruit)、果园(Garden) 功能需求: ①农夫可以根据市场行情种植各种水果; ②市场调查员可以了解市场行情; ③农场主可以向农夫、市场调查员发布命令; ④各种果树都具有种植(plant)、成长(grow)、 收获(harvest)行为; ⑤果园是人物和实物进行交易的场所。
4.根据下面的陈述绘制类图 ①学生包括本科生、研究生两种。 ②研究生可以利用课余时间担任助教。 ③教师包括讲师和教授两种。 ④一名助教可以为一位讲师或一位教授助课,一位 讲师只能有一名助教,一位教授可以有5名助教。
5.按如下描述绘制出“飞船系统”的类图。 “神舟”六号飞船是“神舟”飞船系列的一种,它由 轨道舱、返回舱和逃逸救生塔组成。航天员可以 在返回舱内驾驶飞船,轨道舱则是航天员工作和 休息的场所。在紧急情况下,可以利用逃逸救生塔 逃生。在飞船两侧有多个太阳能电池翼,可以为 飞船提供电能。
Cancle Reservation
图书管理员Borrow-Lend子用例图
student
teacher
Reader
Query ReaderInfo Reserve Book Login Query BookInfo
Cancle Reservation Renew Book
读者Borrow-Lend子用例图
1 0..n
Manager
3.为下面这段Java代码补充类图。 Public class Student{ private String name; public void setName(String name){ this.name=name; } public String getName { return this.name; } }
图书基本信息
图书类别信息 读者借阅图书信息
9
10 11 12
BorrowType
Store Reserve Fine
读者借阅类型信息
图书在图书馆中的存放位置信息 读者预订图书信息 读者罚款信息
系统的用户接口可以作为系统的边界类:
(如果采用页面形式表示用户接口,可把页面看成边界类)
Login(登录)、Main(主界面)、 SystemManage(系统管理)、 ReadrManage(读者管理)、 BookManage(图书管理)、 BorrowManage(借阅管理)、 FineManage(罚款管理)等窗体
Librarian Manage Book
Borrow-Lend
Reader
顶层用例图
administrator delete user add user
update user
query user
系统管理员Manage User 子用例图
Librarian Set ReaderCard Query ReaderInfo
建立系统静态图的过程是对系统领域问题及其解决 方案的分析和设计的过程。静态图设计的主要内容 是类图的建立。
建立类图的步骤:
1.研究分析问题领域,确定系统的需求。 2.发现类和对象,明确类的属性和操作。 3.发现类之间的静态关系,一般与特殊关系,整体 和部分关系,类之间的继承性和多重性。 4.设计类与关系。 5.绘制类图并编制相应的说明。
该图书。读者如期还书后,系统清除借阅记录,否则 需缴纳罚金。读者还可以续借图书,系统还包括图书 挂失和读者证挂失等功能。 同时,以上部分操作还需要系统管理员和图书 管理员进行参与。 结合以上分析,采用识别类的方法,暂时可以 识别出“图书管理系统”中的一些类。
实例:图书管理系统
识别“图书管理系统”中的类 (1)寻找名词 阅读系统文档和用例(尤其是用例事件流),找出 名词或名词短语,注意区别类和属性,筛选后,去 除冗余的、与系统无关的、非独立的类。 (2)类-职责-协作方法 CRC方法,模拟开发人员”处理卡片”的一个过程。 开发人员在执行一个处理实例(即一个用例)的同 时,将类名赋予的职责和合作者填入卡片,以 此来确定类。
序号 1 2 3 4
参与者
用例名称 Add User 增加系统用户 删除系统用户 修改系统用户 查询系统用户
用例说明ຫໍສະໝຸດ Baidu
Administrator (系统管理员)
Delete User Update User Query User Set Book Type Set Brrow Type Set BookInfo Set ReaderCard Query BookInfo Query ReaderInfo
1.
(3)根据MVC模式寻找 根据用例图找出边界类;在用例图中找出控制类; 数据库设计完毕后,可以根据数据表获得实体类。 (4)有些类无法通过上述方法找到,可能还需要 从后面的动态模型(如时序图和协作图)中通过 分析对象来确定。
主要参与者:系统管理员、图书管理员、读者 主要用例:Manage User(用户管理)、 Manage Book(图书管理)、Manage Reader (读者管理)、Borrow-Lend(借阅管理)等。 1. Manage User:完成系统用户的增加、删除、修改、 查询等功能。 2. Manage Book:完成基本信息设置(图书类型设置、 借阅种类设置)和图书信息管理(图书信息设置、 图书信息查询)功能。 3. Manage Reader:完成读者办证、读者信息查询、 读者证挂失功能。 4. Borrow-Lend:完成借书、还书、续借、超期罚款、 图书预订、取消预订、图书挂失等功能。
GUIpackage
+ BookManage + Borrow-Lend + FineManage + Main + ReaderManage + SystemManage + login
login
Main
FineManage
SystemManage
ReaderManage
BookManage
为方便管理,设计2个包, Business Package(业务包)、 GUI Package(图形用户接口包)
2.绘制类图
Business Package
+ Admin + Administrator + Book + BookType + Borrow + BorrowType + Fine + Librarian + RaderType + Reader + Reserve + Store
“图书管理系统”中的类
序号
1 2
类名称
Admin Administrator
类说明
抽象出来的管理员 进行系统管理的管理员
3
4 5
Librarian
Reader ReaderType
进行读者管理、图书管理、借阅管理的图 书管理员
读者基本信息 读者类别信息
6
7 8
Book
BookType Borrow
申请预订图书 取消图书预订 根据需要进行图书信息查询 进行读者信息查询 申请续借图书
Reader (读者)
Cancle Reservation Query BookInfo Query ReaderInfo Renew Book
Manage User administrator Manage Reader
Brrow Book Return Book Renew Book Fine Reserve Book Cancle Reservation Lose Book Lose ReaderCard
序号 19 20 21 22 23 24
参与者
用例名称 Login Reserve Book 登录系统
用例说明
6.按如下描述绘制出“自制机器人系统”的类图 这张图的焦点在那些让机器人在路上行走的机制 所对应的类上。通过分析可以发现一个虚类Motor 和两个由它派生出来的类:SteeringMotor和 MainMotor。这两个类都是从父类Motor继承了 5个方法:move()、stop()、resetConter()、status() Distance()。这两个类又是另一个类Driver的一部分。 类PathAgent和Driver有一个一对一的关系, 类PathAgent和CollisionSensor有1对n的关系。
Lose ReaderCard
图书管理员Manage Reader 子用例图
Fine <<extend>>
Borrow Book Reserve Book
Return Book Query BookInfo Librarian
Lose Book
Renew Book
Set Book Type Set Borrow Type Set BookInfo
部分文档描述: 系统为每个读者建立一个账户,并给读者发放读者证, (可以提供读者证号、读者姓名),账户中存储读者 的个人信息、借阅信息以及预订信息等,持有读者证 可以借阅图书、返还图书、查询图书信息、预订图书 和取消预订。 在借阅图书时,需要输入读者所借阅的图书名、 ISBN号,然后输入读者的读者证号和姓名,完成后 提交所填表格,系统验证读者是否有效。如果读者 有效,借阅请求被接受,系统查询读者所借阅的图书 是否存在。若存在,则读者可借出图书,系统记录借阅 记录,如果读者所借阅的图书已被借出,读者还可预订
2.每个HouseKeeper都有一个Manager负责,有的 Manager可能负责多个HouseKeeper,有的Manager 可能一个HouseKeeper都没有,下面哪幅图适合描述 类HouseKeeper和类Manager的关系? A
HouseKeeper
0..n 1
Manager
B
HouseKeeper