徐风 陈暄《UML面向对象建模基础》课后习题答案

合集下载

UML软件建模教程课后习题及标准答案

UML软件建模教程课后习题及标准答案

UML软件建模教程课后习题及答案————————————————————————————————作者:————————————————————————————————日期:UML软件建模教程课后习题习题 1一、简答题1. 简述模型的作用。

答:现实系统的复杂性和内隐性,使得人们难于直接认识和把握,为了使得人们能够直观和明了地认识和把握现实系统,就需要借助于模型。

2. 软件模型有什么特征?答:建模对象特殊,复杂性,多样性3. 软件建模技术有哪些因素?答:软件建模方法,软件建模过程,软件建模语言,软件建模工具4. 软件模型包括哪些方面的内容?答:从模型所反映的侧面看:功能模型,非功能模型,数据模型,对象模型,过程模型,状态模型,交互模型,架构模型,界面模型等;从软件开发工作看:业务模型,需求模型,分析模型,设计模型,测试模型等。

5. 软件建模工具应该具有哪些基本功能?答:软件模型的生成和编辑,软件模型的质量保障,软件模型管理等二、填空题1、模型是对现实的(抽象)和模拟,是对现实系统(本质)特征的一种抽象、简化和直观的描述。

2、模型具有(反映性)、直观性、(简化性)和抽象性等特征。

3、从抽象程度,可以把模型分为(概念模型)、逻辑模型和(物理模型)三种类型。

4、较之于其他模型,软件模型具有(建模对象特殊)、复杂性和(多样性)等特征。

5、软件模型是软件开发人员交流的(媒介),是软件升级和维护的(依据)。

6、软件建模技术的要素包括软件建模方法、(软件建模过程)、软件建模语言和(软件建模工具)。

7、从开发阶段看,软件建模有业务模型、(需求模型)、分析模型、(设计模型)和测试模型。

8、软件语言有软件需求定义语言、(软件设计语言)、软件建模语言、(软件结构描述语言)、软件程序设计语言等。

9、根据软件建模工具的独立性,把软件建模工具分为(独立软件)建模工具和(插件式软件)建模工具。

10、OMG在( 1997 )年把UML作为软件建模的标准,UML2.0版本是( 2005 )年颁布的。

UML课后习题答案

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) 构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系包含模型代码库、执行文件、运行库和其他构件等信息。

第四章(1)对象图的目的在于描述系统中参与交互的各个对象在同一时刻是如何运行的。

(2)链是两个或多个对象之间的独立连接,是关联的实例。

(3)在UML的图形表示中,类是由名字、属性和方法三个部分组成的。

(4)依赖关系使用一个从客户指南提供者的虚箭头来进行表示。

UML课后习题答案

UML课后习题答案

UML课后习题答案⼀、填空1. 如果要把众多的事物进⾏归纳和分类,那么所依据的⾯向对象特性是抽象。

2. ⾯向对象中的表⽰层⽤于提供给⽤户使⽤和显⽰的界⾯。

3. UML中的元元模型层位于结构的最上层,是组成UML最基本的元素,代表要定义的所有事物。

4. 在UML2.0中⽤来表⽰类、组件、协作等模型元素内部结构的是组合结构。

5. UML中的实现关系使⽤⼀条空⼼三⾓作为箭头和虚线作为其图形表⽰。

1. ⽤例图的标准关系有扩展、泛化关系、关联关系。

2. ⽤例图的组成有关系、系统、参与者和⽤例。

3. 在UML中,⽤例⽤⼀个圆形来表⽰。

4. 泛化关系使⽤⼀条实线和⼀个三⾓箭头来边接⽤例。

1.类图是⾯向对象系统建模中最常⽤和最基本的图之⼀。

2. 泛化约束可以分为不完我约束、完全约束、解体约束和重叠约束。

3. UML规范中定义了4种基本的依赖类型,它们分别是使⽤依赖、抽象依赖、绑定依赖和授权依赖。

4. 组合关系⽤来描述整体与部分,但是部分不能离开整体⽽单独存在,当整体类被销毁部分类将同时被销毁。

5.组合关系和聚合关系都是⼀种特殊的关联关系,它们都描述了整体与部分的关系。

1.对象图描述了参与交互的各个对象在交互过程中某⼀时刻的状态。

2. 存在于时间和空间的具体实体是⽤来描述对象的。

3. 对象除了⽤于数据外,还可以拥有各种关系,这些关系被称为链。

4. 使⽤包以及类所绘制的图形就叫包图。

5. 包图的常⽤关系包括依赖关系和泛化关系,其中依赖关系⼜包括<> 依赖和<>依赖。

1. UML中活动图的核以元素是活动,它使⽤圆⾓矩形表⽰。

2. 活动图中的活动结点有3种类型,其中控制结点可以包含开始状态。

3. 在⼀个活动图中可以有⼀个开始状态。

有多个结束状态。

4. 在活动图中使⽤分叉与汇合来描述并⾏的⾏为。

5. ⼀个异常处理器包含⼀个异常处理执⾏体和⼀个异常类型。

1. 顺序图是⼀种通信集合。

2. ⽣命线有激活和休眠两种状态。

UML课后习题答案

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) 构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系包含模型代码库、执行文件、运行库和其他构件等信息。

第四章(1)对象图的目的在于描述系统中参与交互的各个对象在同一时刻是如何运行的。

(2)链是两个或多个对象之间的独立连接,是关联的实例。

(3)在UML的图形表示中,类是由名字、属性和方法三个部分组成的。

(4)依赖关系使用一个从客户指南提供者的虚箭头来进行表示。

UML课后习题答案

UML课后习题答案
(4)活动图中的初始状态使用黑色实心圆表示。
(5)泳道技术将是一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门、他们完成组内的活动。
第九章
1.uml的交互图中,强调对象之间关系和消息传递的是(协作图)。
2.(结构图)的作用体现在显示对象及其交互关系的空间组织结构。
3.在协作图中的(链)是两个或多个对象之间的(连接)关联的实例。
(5)序列图中的对象的表示形式使用包围名称的矩形框来标记,所显示的对象及其类的名称带有下划线,两者用冒号隔开
第八章
(1)活动图是模型中的整体单元,表示一个程序或工作流,常用于计算机流程和工作流程建模。
(2)动作状态是原子性的动作或操作的执行状态,它不能被外部事件的转换中断。
(3)活动状态可以有内部转换,可以有出口动作和入口动作。
第四章
(1)对象图的目的在于描述系统中参与交互的各个对象在同一时刻是如何运行的。
(2)链是两个或多个对象之间的独立连接,是关联的实例。
(3)在UML的图形表示中,类是由名字、属性和方法三个部分组成的。
(4)依赖关系使用一个从客户指南提供者的虚箭头来进行表示。
(5)在接口中包含一系列操作但是不包含属性,并且它没有对外界可见的关联。
填空题
第一章
(1)统一建模语言UML是绘制软件蓝图的标准工具语言,可以对软件系统产品进行说明、可视化、构造和编制文档。
(2)UML在实际软件项目中,可以用于构造各种类型系统的业务模型和软件模型。
(3)软件的开发模式有瀑布模型、喷泉模型、基于构件的开发模型和XP方法。
(4)面向对象程序的三大要素是多态、封装和继承。(抽象)
(5)瀑布模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题。

UML课后习题答案

UML课后习题答案
第七章
(1)在UML的表示中,交互图将交互关系表示为一个二维图。其中,纵向是时间轴,时间沿竖线向下延伸。横向代表了在协助中个独立对象的角色。
(2)序列图构成的对象是对象、生命线、激活和消息。
(3)分支指的是从同一点出发多个消息并指向不同的对象,根据条件是否互斥,可以有条件和并行两种。
(4)生命线是一条垂直的虚线,用来表示序列图中的对象在同一段时间内的存在。
第五章
1)包是用于把元素组织成组的通用机制。
(2)包的可见性关键字包括private、public和protect。
(3)包之间的关系总的来讲可以概括为依赖关系和嵌套关系。
(4)将系统分层很常用的一种方式是将系统分为用户界面层、业务逻辑层和数据访问层的
三层结构。
(5)包是包图中最重要的概念,它包含了一组模型元素。
(5)状态图是通过对象的各种状态来建立模型来描述对象的随时间变化的动态行为,并且它是独立的对象为中心进行描述。
第三章
(1)Rational Rose默认支持的目标语言主要包括Java、Visual Basic等。(C++,C#)
(2)部署视图显示的是系统的实际部署情况,它是为了便于理解系统如何在一组处
(3)对于一个以架构为中心的开发组织,需要对架构的目的、架构的表示和架构的过程方面进行关注。
(4)迭代式软件开发是能够通过一系列细化和若干个渐进的反复过程从而形成有效的解决方案的软件开发方式。
(5)Rational统一过程的开发过程使用一种二维结构来表达。
选择题
第一章
(1)对象程序的基本特征是(ABCD)
(5)序列图中的对象的表示形式使用包围名称的矩形框来标记,所显示的对象及其类的名称带有下划线,两者用冒号隔开

UML软件建模教程课后习题和答案

UML软件建模教程课后习题和答案

UML软件建模教程课后习题和答案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 )。

UML面向对象设计与分析 课后习题答案

UML面向对象设计与分析 课后习题答案

等。并使用建模活动图的五个步骤,逐步为用例建模活动图。
<<include>> OvertimeProcess
Librarian
Return Book <<include>>
DisplayLoans
图 4-33 还书用例
用户
系统
输入图书信息
显示过期信息 确定归还
查找该图书的借阅关系
查看是否有过 期的借阅关系
2.请求打印文件 17.出钞请求
5.控制打印
3.1.队列是否为空 3.2.添加到队列 4.返回打印文件
1.打印文件
Computer
PrintServer
Printer
Queue
3.根据 ATM 机上取款工作流的顺序图,为其建立通信图模型。
1.插入IC卡
读卡机
5.输入密码 10.输入取款请求 14.输入取款金额
Instructor
Tutor
1
1
Student
UnderGraduate
Graduate
Teacher
Professor
1 1
1 n
TeacherAssistant
2.根据用例图和系统需求描述创建类图。本练习将根据如下所示的系统需求和如图 3-63 所 示的用例图建模一个类图。
系统需求描述: (1)系统允许管理员通过从磁盘加载存货数据来运行存货清单报告。 (2)管理员通过从磁盘加载存货数据、向磁盘保存存货数据来更新存货清单。 (3)售货员做销售记录。 (4)电话操作员是处理电话订单的特殊售货员。 (5)任何类型的销售都需要更新存货清单。 (6)如果交易使用了信用卡,那么售货员需要核实信用卡。 (7)如果交易使用了支票,那么售货员需要核实支票。

UML系统建模基础教程 课后习题(1-6章)

UML系统建模基础教程 课后习题(1-6章)

习题一1.填空题(1)______ 是面向对象技术领域内占主导地位的标准建模语言,它统一了过去相互独立的数十种面向对象的建模语言共同存在的局面,形成了一个统一的,公共的,具有广泛适合性德建模语言。

(2)类的定义要包含_____、_____和_________要素。

(3)面向对象程序的三大要素是_____、________和__________。

(4)面向对象方法中的_____机制使子类可以自动地拥有(复制)父类全面属性和操作。

(5)面向对象的系统分析要确定的三个系统模型是______、_________和_______。

2.选择题(1)如果对一个类的意义进行描述,那么应该采用()A.标记值B.规格描述C.注释D.构造型(2)建立对象的动态模型的步骤有()A.准备脚本B.确定事件C.构造类型图D.准备事件跟踪表(3)软件的开发模式有()A.瀑布模型B.xp开发模型C.喷泉模型D.构建开发模型(4)下列关于类和对象的关系说法正确的是()A.有些对象是不能被抽象成类的B.类给出了属于该类的全部对象的抽象定义C.类是对象集合的再抽象D.类是用来在内存中开辟一个数据区,存储新对象的属性(5)()模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题。

A.瀑布模型B.增量模型C.原型模型D.螺旋模型3.解答题(1)试述对象和类的关系。

(2)请简要叙述面向对象的概念。

(3)请简述面向对象设计的原则有哪些。

(4)软件开发的模式有几种?它们的优缺点各是什么?习题二1.填空题(1)UML中主要包括四种关系,分别是________、________、________和________。

(2)从可视化的角度对UML的概念和模型进行划分,可将UML的概念和模型分为________、________和________。

(3)物理视图包含两种视图,分别是________和________。

(4)常用的UML扩展机制分别是________、________和________。

UML面向对象建模基础答案(徐峰、陈暄-中国水利水电出版社)

UML面向对象建模基础答案(徐峰、陈暄-中国水利水电出版社)
6. UML是一种方法论吗?并简要说明理由。
UML不是方法论。它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。
7. 请简要说明UML和面向软件开发之间的关系。
UML和面向对象软件开发之间有很强的关联关系,甚至可以说是面向对象软件开发催生了UML。但是由于在UML的标准化和发展过程,有机地吸纳了业务建模、工作流建模、数据库建模等领域的标准规范,形成了一个适用性很强的标准。
4. 请说明蓝图和草图的区别,并简单描述其适用的场景。
蓝图一般是指采用CASE工具绘制的、正式的、规范的UML模型;而草图则通常是指手工绘制的、规范度较低的在纸张的UML模型。
对于局部的、重要性不高的、共享范围较小的UML模型,直接将草图扫描到电脑存档即可;对于全局的、重要性高的、高度共享的,在草图的基础上用CASE工具绘制成为正式的蓝图,并将其纳入统一的模型管理中
8. 标记值的作用是什么?它的表示法和约束的表示法有什么异同?在UML模型中如何区分它们?
标记值是用来为事物添加新特性的。约束的表示法和标记值法类似,都是使用花括号括起来的串来表示,不过它是不能够放在元素中的,而是放在相关的元素附近。
9. 构造型的作用是什么?如果我们采用一个自定义的图标来表示它,那么可能遇到的主要问题是什么?
UML面向对象建模基础(徐峰、陈暄)
第1章 UML概述
1. 请指出UML的三个主要的特性。
1)UML是一种语言
2)UML是用来建模的
3)UML是统一的标准
2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。
1)电路图:电子产品设计、生产、维修

UML课后习题答案

UML课后习题答案

填空题第一章(1)统一建模语言UML是绘制软件蓝图的标准工具语言,(2)UML(3)(4)(抽象)第二章(1) 在UML是UML常用的通用机制。

是UML常用的扩展机制。

的系统功能的模型图。

(5) 并且它是独立的对象为中心进行描述。

第三章(1)Rational Rose默认支持的目标语言主要包括C++,C#),它是为了便于理解系统如何在一组处理解节点上的物理分布,而在分析和设计中使用的架构视图。

(3)使用Rational Rose 生成代码的步骤包括选择待转换的目标模型、检查Java语言的语法错误、设置代码生成属性、生成代码。

(4)在用例视图中包括了系统中的所有参与者、用例和用例图,必要时还可以在其中添加顺序图、协作图、活动图和类图等。

(5) 构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系包含模型代码库、执行文件、运行库和其他构件等信息。

第四章(1)对象图的目的在于描述系统中参与交互的各个对象在同一时刻是如何运行的。

(2)链是两个或多个对象之间的独立连接,是关联的实例。

(3)在UML的图形表示中,类是由名字、属性和方法三个部分组成的。

(4)依赖关系使用一个从客户指南提供者的虚箭头来进行表示。

(5)在接口中包含一系列操作但是不包含属性,并且它没有对外界可见的关联。

第五章1)包是用于把元素组织成组的通用机制。

(2)包的可见性关键字包括private、public和protect。

(3)包之间的关系总的来讲可以概括为依赖关系和嵌套关系。

(4)将系统分层很常用的一种方式是将系统分为用户界面层、业务逻辑层和数据访问层的三层结构。

(5)包是包图中最重要的概念,它包含了一组模型元素。

第六章(1)图。

(3)(4)第七章(1)在UML的表示中,其中,(2)根据条件是否互斥,(4)(5)第八章表示一个程序或工作流,常用于计算机流程和工作流程建模。

(2)(4)每一组表示一个特定的类、人或部门、他们完成组内的活动。

UML课后习题答案

UML课后习题答案

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中,定义了四种基本的⾯向对象的事物,分别是结构事物、⾏为事物、分组事物和注释事物等。

UML面向对象分析与设计教程课后习题答案简答题部分

UML面向对象分析与设计教程课后习题答案简答题部分

简答题第一章1.面向对象设计的基本特征有哪些?这些特征对软件设计有何帮助?封装性继承性多态性在由封装,继承,多态所组成的环境中,程序员可以编写出比面向过程模型更健壮,更具扩展性的程序.经过仔细设计的类层次结构是重用代码的基础.封装能让程序员不必修改公有接口的代码即可实现程序的移植.多态能使程序员开发出简洁,易懂,易修改的代码.2.类与对象的区别是什么?类是抽象的,不具体的。

就像有些东西可以归为一类,比如说狗,猫,猪。

它们都是动物,我们就可以归为一类。

而猫,狗就是动物类中的一个对象。

3.什么是软件生命周期?生命周期包括几个阶段?软件的生命周期,亦称软件的生存周期。

它是按开发软件的规模和复杂程度,从时间上把软件开发的整个过程(从计划开发开始到软件报废为止的整个历史阶段)进行分解,形成相对独立的几个阶段,每个阶段又分解成几个具体的任务,然后按规定顺序依次完成各阶段的任务并规定一套标准的文档作为各个阶段的开发成果,最后生产出高质量的软件。

分为:一般分为定义,开发,维护三大阶段,定义阶段有可行性论证和开发计划,需求分析,开发阶段有概要设计,详细设计和编码,维护阶段有测试,运行维护4.面向对象与uml的关系?umL是统一建模图,用于便于描述类之间的关系等,是用来帮助你更好进行面向对象的设计。

5.面向对象设计与传统软件相比,有何优点?更有针对性更容易让客户满意减少修改提高效率第二章模型元素有哪些?UML中模型元素太多了,比如用例图中的元素有用例,角色,扩展关系,包含关系,类图中的元素有类,接口,关联等等,每一种框图都有各自独有的元素2.简述uml通用机制组成以及它的作用?一、修饰。

在使用UML语言建模时,可以将图形修饰附加到UML图中的模型元素上。

比如,当一个元素代表某种类型的时候,它的名称可以用粗体字形类显示;当同一元素表示该类型的实例时,该元素的名称用一条下划线修饰。

二、注释。

UML语言中用一条虚线将注释连接到它为之解释的或细化的元素上。

徐风 陈暄《UML面向对象建模基础》课后习题答案

徐风   陈暄《UML面向对象建模基础》课后习题答案

第1章UML概述1. 请指出UML的三个主要的特性。

1)UML是一种语言2)UML是用来建模的3)UML是统一的标准2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。

1)电路图:电子产品设计、生产、维修2)园区沙盘:直观、立体化地展示园区的景观、布局3)地图:导航、指路等3. 请简要说明建模的意义和建模的原则。

建议能够帮助我们按照实际情况或按我们需要的样式对系统进行可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系统构造的模板;对我们所做出的决策进行文档化在建模时应遵循以下原则:选择要创建什么模型对如何动手解决问题和如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度级别上表示;最好的模型是与现实相联系的;单个模型是不充分的。

对每个重要的系统最好用一组几乎独立的模型去处理4. 请说明蓝图和草图的区别,并简单描述其适用的场景。

蓝图一般是指采用CASE工具绘制的、正式的、规范的UML模型;而草图则通常是指手工绘制的、规范度较低的在纸张的UML模型。

对于局部的、重要性不高的、共享范围较小的UML模型,直接将草图扫描到电脑存档即可;对于全局的、重要性高的、高度共享的,在草图的基础上用CASE工具绘制成为正式的蓝图,并将其纳入统一的模型管理中5. 说明UML适用的建模领域,以及其作用和主要的参与人员。

⏹业务建模,用来加强对业务领域的了解,以领域专家为主,需求分析人员是主力,系统分析员、架构师可参与。

⏹需求模型,用来加强需求了解,便于技术决策,以需求分析人员为主,系统分析员是主力,领域专家提供指导,架构师和资深开发人员参与。

⏹设计模型:包括高层设计模型和详细设计模型。

高层设计模型以架构师为主,系统分析员从需求方面提供支持,资深开发人员从技术实现方面提供支持。

详细设计模型则以资深开发人员为主,架构师提供指导。

⏹实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架构师提供总体指导。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章UML概述1. 请指出UML的三个主要的特性。

1)UML是一种语言2)UML是用来建模的3)UML是统一的标准2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。

1)电路图:电子产品设计、生产、维修2)园区沙盘:直观、立体化地展示园区的景观、布局3)地图:导航、指路等3. 请简要说明建模的意义和建模的原则。

建议能够帮助我们按照实际情况或按我们需要的样式对系统进行可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系统构造的模板;对我们所做出的决策进行文档化在建模时应遵循以下原则:选择要创建什么模型对如何动手解决问题和如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度级别上表示;最好的模型是与现实相联系的;单个模型是不充分的。

对每个重要的系统最好用一组几乎独立的模型去处理4. 请说明蓝图和草图的区别,并简单描述其适用的场景。

蓝图一般是指采用CASE工具绘制的、正式的、规范的UML模型;而草图则通常是指手工绘制的、规范度较低的在纸张的UML模型。

对于局部的、重要性不高的、共享范围较小的UML模型,直接将草图扫描到电脑存档即可;对于全局的、重要性高的、高度共享的,在草图的基础上用CASE工具绘制成为正式的蓝图,并将其纳入统一的模型管理中5. 说明UML适用的建模领域,以及其作用和主要的参与人员。

⏹业务建模,用来加强对业务领域的了解,以领域专家为主,需求分析人员是主力,系统分析员、架构师可参与。

⏹需求模型,用来加强需求了解,便于技术决策,以需求分析人员为主,系统分析员是主力,领域专家提供指导,架构师和资深开发人员参与。

⏹设计模型:包括高层设计模型和详细设计模型。

高层设计模型以架构师为主,系统分析员从需求方面提供支持,资深开发人员从技术实现方面提供支持。

详细设计模型则以资深开发人员为主,架构师提供指导。

⏹实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架构师提供总体指导。

⏹数据库模型:架构师、数据库开发人员、资深开发人员(设计人员);以数据库开发人员为主,架构师提供指导,资深开发人员(设计人员)予以配合。

6. UML是一种方法论吗?并简要说明理由。

UML不是方法论。

它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。

7. 请简要说明UML和面向软件开发之间的关系。

UML和面向对象软件开发之间有很强的关联关系,甚至可以说是面向对象软件开发催生了UML。

但是由于在UML的标准化和发展过程,有机地吸纳了业务建模、工作流建模、数据库建模等领域的标准规范,形成了一个适用性很强的标准。

8. 请简要阐述在软件开发过程中使用UML的必要性以及好处。

软件开发是一个很复杂的工程,而采用统一的建模语言来对软件进行描述能够使客户、涉众、开发人员对软件能够有更好的共识,也能够有效地降低复杂性。

第2章UML世界的构成1. UML是由哪三个部分组成的,请分别说明它们的作用。

⏹基本构造块:也就是建模元素,是模型的主体⏹UML规则:也就是支配基本构造块如何放在一起的规则⏹公共机制:运用于整个UML模型中的公共机制、扩展机制2. 请列举出三个以上UML中的事物构造块,并说明适合用来表示“系统向用户提供的功能”的构造块是什么。

结构事务、行为事物、分组事物、注释事务。

适合用来表示“系统向用户提供的功能”的构造块是用例。

3. 如果你想对一个类的意义进行描述,那么应该采用?请简要说明原因。

A. 标记值B. 规格描述C. 注释D.构造型C标记值是用来为事物添加新特性的;规格描述用来对构造块的语法和语义进行文字叙述,使得可视化视图和文字视图的分离;构造型是用来增加新事物的。

而对于类的意义进行简单描述,最合适的显然还是注释。

4. 图2-26所示的符号表示的是什么?它是关系构造块还是事物构造块?图2-26 示例符号扩展关系,是关系构造块。

5. 可以包含其它事物构造块的构造块是什么?它属于什么类型的事物构造块?可以包含其它事物构造块的构造块是包,它属于分组事物构造块。

6. 在UML中定义了哪几种可见性规则?其中package的含义是什么?定义了public、private、protected、package,package是指只有声明在同一个包中的元素才能够看到该元素。

7. 规格描述是一种事物构造块吗?如果不是,它是什么?它的作用是什么?规格描述不是事物构造块,它是UML四种公共机制之一,用来对构造块的语法和语义进行文字叙述,使得可视化视图和文字视图的分离。

8. 标记值的作用是什么?它的表示法和约束的表示法有什么异同?在UML模型中如何区分它们?标记值是用来为事物添加新特性的。

约束的表示法和标记值法类似,都是使用花括号括起来的串来表示,不过它是不能够放在元素中的,而是放在相关的元素附近。

9. 构造型的作用是什么?如果我们采用一个自定义的图标来表示它,那么可能遇到的主要问题是什么?构造型用来定义一些特定于某个领域或某个系统的构造块。

用自定义的图标有两个问题:一是容易产生歧义,二是建模工具难以支持。

10. 约束有两种表示法,它们分别是什么?约束的内容可以以自由形式的文本来表示,也可以使用UML的OCL(对象约束语言)来精确定义。

11. UML 2.0在UML 1的基础上新增了三种图,请指出它们的名称和作用。

1)复合结构图:描述类的运行时刻的分解2)定时图:描述对象之间的交互,重点在于定时3)交互概观图:是一种顺序图与活动图的混合12. 在UML 2.0中定义了四种交互图,其中强调对象调用顺序的是什么图?顺序图13. 交互概观图是哪两种图的综合。

顺序图与活动图14. 请绘制出类、用例和协作的图形符号。

15. 在RUP的“4+1”视图中,这个1表示的是什么,它有什么作用。

这个1是用例视图。

它是最基本的需求分析模型,是可被最终用户看到的系统行为的用例组成。

常用的模型包括用例图、交互图、状态图、活动图等16. 适用于模型管理的是哪张图。

包图第3章UML概述1. 绘制一个表示类的UML元素,并指出它主要包含哪三个部分。

类名、属性、操作2. 在对类名、属性/方法名时,通常会遵循什么样的规则?请举例说明。

对于类名通常采用CamelCase格式(大写字线开头、混合大小写,每个单词以大写开始,避免使用特殊符号),尽可能避免使用缩写,例如OrderDetail。

属性名也采用CamelCase格式,但为了与类名进行区别,通常首字母以小写开头,例如productId。

操作名的命名格式与属性名类似,不过通常是动词词组。

3. 假设类ClassB是ClassA的子类,其中ClassA的属性和方法如图3-30所示,则ClassB 能够访问的有哪些?子类只有private的成员无法访问,因此可以访问的属性有mem02和mem03,可以访问的方法有op1。

4. 在图3-31中,是一个仓库管理系统的类模型局部,其中IncomeOrder是指入库单,OrderItem是指入库中的每一项,Product则是产品信息。

请指出模型中的错误,说明原因并改正错误。

图3-30 ClassA表示图3-31 仓库管理系统类模型局部根据题意和模型不难得知,一个入库单是由多个入库单项(OrderItem)组成的,因此不可能只涉及一个产品,合理的方式应该是入每个入库单项(OrderItem)与产品一对一关联。

即应该绘制为:5. 在图3-32中是一个“涉税服务管理效能管理系统”中类模型的一个局部,请根据该图回答以下问题。

图3-32 涉税服务效能管理系统类模型局部⏹在描述“税务审批服务申请”时,它主要包含哪几个方面的内容?它有几种不同的类别?受理资料、受理提示、受理告知、纳税人、流转记录。

包括行政许可类申请、涉税服务类申请和行政审批类申请三类。

⏹对于每一条流转记录,可能与几个“税务审批服务申请”相关?与几个处理人相关?每条流转记录只和一个“税务审批服务申请”相关,只与一个处理人相关。

6. 在图3-32中,对于每个流转记录的处理人它的类型(窗口人员、核查人员、审批人员)是唯一的,也就是只可能取一种值。

请在图中加上表示这种规则的约束。

7. 后来,开发人员又在图3-32的基础上进行了一些修改,其中有一个局部修改成了如图3-33的内容。

请说明这些新增加的元素分别表示什么含义。

has是关联名称,表示这种关联是“拥有”关系。

“申请ID”是限定符,表示每一个流转记录只能用一个“申请ID”。

8. 根据对象所表示的内容不同,可以将对象分为哪两大类?请分别举出几个例子。

引用对象和值对象。

客户、产品、订单都是引用对象的例子,日期、重量、高度等对象都是典型的值对象。

9. 嵌套类的概念是什么意思?如果类Student包含类Score,请使用你学过的、支持嵌套类的面向对象编程语言将其表示出来。

将一个类的定义放在另一个类定义的内部。

public class Student {private class Score {…}}10. 请简要解释主动类的概念,并说明它建模的意义,并通过1-2个实例来说明,主动类可以用来表示哪些设计元素。

主动类的实例称为主动对象,一个主动对象拥有一个控制线程并且能够发起控制活动;它不在别的线程、堆栈或状态机内运行,具有独立的控制期。

从某种意义上说,它就是一个线程。

例如Socket服务器的监听线程就可以表示为主动类。

11. 以使用OCL语言来表示以下含义:⏹在类examinee(考生)中,字段result(成绩)的值大于零,小于75分(满分)。

examinee:result>0 and result<75⏹在类Order中,其包含的支付信息是用其它类来表示,要么是表示货到付款的类AfterBill,要么是网上转账的类BeforeBill。

AfterBill xor BeforBill12. 请简要说明类图的应用领域,并重点说明在软件系统建模应用时的三种模型的关键点及区别。

类图主要可以应用于业务性模型、软件系统模型和数据库逻辑模型。

类图应用于软件系统模型时,主要是用来构建领域模型、分析模型和设计模型:图3-33 修改后的模型局部⏹领域模型是从面向对象的视角看待现实世界的结果,也就是通过类图来描述现实世界中各种事物的关系。

因此在构建这个模型时,最主要的工作是找出相关的类,然后明明类之间的关联关系,必要时加入一些多重性描述和业务规则约束。

⏹分析模型和领域模型是很相近的,甚至可以说领域模型是一种全局的业务分析模型。

而在RUP中,分析模型主要是针对软件系统的分析,领域模型则更多是偏重对业务领域的分析。

⏹设计模型则是在分析模型的基础上添加设计元素的结果。

相关文档
最新文档