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)什么是封装?它有哪些好处?
封装就是把对象的状态和⾏为绑在⼀起的机制,使对象形成⼀个独⽴的整体,并且尽可能地隐藏对象
的内部细节。封装有两个含义;⼀是把对象的全部状态和⾏为结合在⼀起,形成⼀个不可分割的整体。对象的私有属性只能够由对象的⾏为来修改和读取。⼆是尽可能隐蔽对象的内部细节,与外界的联系只能够通过外部接⼝来实现。通过公共访问控制器来限制对象的私有属性,使⽤封装具有以下好处:避免对封装数据的未授权访问、帮助保护数据的完整性、当类的私有⽅法必须修改时,限制了在整个应⽤程序内的影响。
(4)什么是继承?它有哪些好处?
继承是指特出类的对象拥有其⼀般类的属性和⾏为。继承意味着“⾃动地拥有”,即在特殊类中不必重新对已经在⼀般类中定义过的属性和⾏为进⾏定义,⽽是特殊类⾃动地、隐含地拥有其⼀般类的属性和⾏为。通过继承可使派⽣类能够⽐不使⽤继承直接进⾏描述的类更加简洁、能够重⽤和扩展现有类库资源、使软件易于维护和修改。
(5)⾯向对象分析的过程有哪些?
⾯向对象的分析的过程包括:获取需求内容陈述、建⽴系统的对象模型结构、建⽴对象的动态
模型、建⽴系统功能建模。
视图包括哪几个视图(6)⾯向对象的设计有哪些准则?
⾯向对象设计的准则包括模块化、抽象、信息隐藏、低耦合和⾼内聚等。
(7)为什么要使⽤UML建模?
对象建模的⽬标就是要为正在开发的系统制定⼀个精确、简明和易理解的⾯向对象模型。UML 已经成为⼯业标准的对象建模语⾔。建模能够帮助开发组织者更好地对系统计划进⾏可视化,并帮助他们正确地进⾏构造,使开发⼯作进展的更快。
第2章UML概述
1. 填空题
(1)在UML中主要包括的视图为静态视图、⽤例视图、交互视图、状态机视图、活动视图、物理视图和模型管理视图。
(2)UML图包括:⽤例图、类图、序列图(顺序图)、状态图、活动图(协作图)、构件图(组件图)、和部署图(配置图)。
(3)⽤例视图描述了系统的参与者与系统进⾏交互的功能,是参与者所能观察和使⽤到的系统功能的模型图。⼀个⽤例是系统的⼀个功能单元,是系统参与者与系统之间进⾏的⼀次交互作⽤。
(4)状态机视图是通过对象的各种状态建⽴模型来描述对象随时间变化的动态⾏为,并且它是以独⽴的对象为中⼼进⾏描述的。
(5)⽤例图的主要⽬的是帮助开发团队以⼀种可视化的⽅式理解系统的功能需求,包括基于基本流程的“⾓⾊”关系,以及系统内⽤例之间的关系。
(6)在UML中定义了4种基本的⾯向对象的事物,分别是结构事物、⾏为事物、分组事物和注释事物(辅助事物)等。
2. 选择题
(1)UML图不包括D。
(A)⽤例图(B)类图
(C)状态图(D)流程图
(2)下列关于视图的说法不正确的是D。
(A)⽤例视图描述了系统的参与者与系统进⾏交互的功能
(B)交互视图描述了执⾏系统功能的各个⾓⾊之间相互传递消息的顺序关系
(C)状态机视图是通过对象的各种状态来建⽴模型来描述对象随时间变化的动态⾏为
(D)构件视图表⽰运⾏时的计算资源(例如计算机以及它们之间的连接)的物理布置(3)构件不包括C。
(A)源代码构件(B)⼆进制构件
(C)UML图(D)可执⾏构件
(4)下列关于互视图说法正确的是A。
(A)交互试图描述了执⾏系统功能的各个⾓⾊之间相互传递消息的顺序关系,是描绘系统中各个⾓⾊或功能交互的模型
(B)交互视图包含类图和顺序图
(C)交互视图的主要⽬的是帮助开发团队以⼀种可视化的⽅式理解系统的功能需求
(D)交互视图是参与者所能观察和使⽤到的系统功能的模型图
(5)下列关于对象约束语⾔的特性,说法不正确的是B。
(A)对象约束语⾔不仅是⼀种查询(Query)语⾔,同时还是⼀种约束(Constraint)语⾔(B)对象约束语⾔是⼀种弱类型的语⾔
(C)对象约束语⾔是基于数学的,但是却没有使⽤相关数学符号的内容
(D)对象约束语⾔也是⼀种声明式(Declarative)语⾔
3. 简答题
(1)简述UML的起源与发展。
(2)简述UML的⽬标
UML为⽤户提供了⼀种易⽤的、具有可视化的建模能⼒的语⾔,能够使⽤户使⽤该语⾔进⾏系统的开发⼯作,并且能够进⾏有意义的模型互换;为⾯向对象建模语⾔的核⼼概念提供可扩展性和规约机制;为理解建模语⾔提供⼀种形式化的基础;⿎励⾯向对象的各种⼯具市场的⽣长和繁荣;⽀持⾼级的开发概念,例如构件、协作、框架和模式等;集成优秀的实践成果和经验。
(3)在UML中包含哪些视图?这些视图都对应哪些图?
在UML 中主要包括的视图为静态视图、⽤例视图、交互视图、状态机视图、活动视图、部署视图和模型管理视图。静态视图包括类图;⽤例视图包括⽤例图;实现视图包括构件图;部署视图包括部署图;状态机视图包括状态机图;活动视图包括活地图;交互视图包括顺序图和协作图;模型管理视图包括类图。
(4)静态视图有什么作⽤?
静态视图是对在应⽤领域中的各种概念以及与系统实现相关的各种内部概念进⾏的建模。静态视图在UML中的作⽤包含三个⽅⾯:⾸先,静态视图是UML的基础。模型中静态视图的元素代表的是现实系统应⽤中有意义的概念,这些系统应⽤中的各种概念包括真实世界中的概念、抽象的概念、实现⽅⾯的概念和计算机领域的概念;其次,静态视图构造了这些概念对象的基本构造。在⾯向对象的系统中,将对象的数据结构和操作统⼀到⼀个独⽴的对象当中静态视图不仅包括所有的对象数据结构,同时也包括了对数据的操作;最后,静态视图也是建⽴其它动态视图的基础。静态视图将具体的数据操作使⽤离散的模型元素进⾏描述,尽管它不包括对具体动态⾏为细节的描述,但是它们是类所拥有并使⽤的元素,使⽤和数据同样的描述⽅式,只是在标识上进⾏区分。
(5)UML中都包含哪些图?简述这些图的作⽤。
最常⽤的UML图包括:⽤例图、类图、序列图、状态图、活地图、构件图和部署图。⽤例图的主要⽬
的是帮助开发团队以⼀种可视化的⽅式理解系统的功能需求,包括基于基本流程的“⾓⾊”关系,以及系统内⽤例之间的关系;类图显⽰了系统的静态结构,表⽰不同的实体(⼈、事物和数据)是如何彼此相关联的:序列图显⽰了⼀个具体⽤例或者⽤例的⼀部分的⼀个详细流程;状态图表⽰某个类所处的不同状态以及该类在这些状态中的转换过程;活地图是⽤来表⽰两个或者更多的对象之间在处理某个活动时的过程控制流程;构件图提供系统的物理视图,它是根据系统的代码构件显⽰系统代码的整个物理结构;部署图⽤于表⽰该软件系统如何部署到硬件环境中,它⽤于显⽰在系统中的不同构件在何处物理的运⾏,以及如何进⾏彼此的通信。
(6)简述包的作⽤?
包是⼀种在概念上的对UML模型中各个组成部分进⾏分组的机制。在包中可以包含有结构事物、⾏为事物和分组事物。包的使⽤⽐较⾃由,可以根据⾃⼰的需要划分系统中的各个部分,例如可以按外部Web服务的功能来划分这些Web服务。包是⽤来组织UML模型的基本分组事物,它也有变体,如框架、模型和⼦系统等。
(7)UML中的模型元素的关系主要有哪些?
UML中主要包含4种关系,分别是依赖、关联、泛化和实现:依赖关系指的是两个事物之间的⼀种语义关系,当其中⼀个事物(独⽴事物)发⽣变化就会影响另外⼀个事物(依赖事物)的语义;关联关系
是⼀种事物之间的结构关系,⽤它来描述⼀组链,链是对象之间的连接;泛化关系是事物之间的⼀种特殊/⼀般关系,特殊元素(⼦元素)的对象可替代⼀般元素(⽗元素)的对象,即在⾯向对象学中常常提起的继承;实现关系也是UML元素之间的⼀种语义关系,它描述了⼀组操作的规约和⼀组对操作的具体实现之间的语义关系。
(8)简述UML的公共机制。
在UML中,共有4种贯穿于整个统⼀建模语⾔并且⼀致应⽤的公共机制,这4种公共机制分别是规格说明、修饰、通⽤划分和扩展机制。通常会把规格说明、修饰和通⽤划分看作是UML的通⽤机制。其中扩展机制可以再划分为构造型、标记值和约
束。这4种公共机制的出现使得UML 更加详细的语义描述变得较为简单。对于系统的建模来说,拥有这些机制,可以构件出相对完备的
系统。
第3章Rational Rose 概述
1. 填空题
(1)使⽤Rational Rose建⽴的Rose模型中包括4种视图,分别是⽤例视图、逻辑视图、构件视图(组件视图)和部署视图(配置视图)。
(2)在⽤例视图中包括了系统中的所有参与者、⽤例和⽤例图,必要时还可以在⽤例视图中添加顺序图、协作图和类图等。
(3)逻辑视图关注系统如何实现⽤例中所描述的功能,主要是对系统功能性需求提供⽀持,即系统应该提供的功能。
(4)构件视图(组件视图)⽤来描述系统中的各个实现模块以及它们之间的依赖关系,包含模型代码库、执⾏⽂件、运⾏库和其他构件等信息。
(5)部署视图(配置视图)显⽰的是系统的实际部署情况,它是为了便于理解系统如何在⼀组处理节点上的物理分布,⽽在分析和设计中使⽤的构架视图。
2. 选择题
(1)Rational Rose的代码⽣成功能可以针对不同类型的⽬标语⾔⽣成相应的代码Rational Rose 企业版默认⽀持的⽬标语⾔不包括D。
(A)Java (B)CORBA
(C)Visual Basic (D)C#
(2)下⾯不是Rational Rose 中的试图是C。
(A)⽤例视图(B)部署视图
(C)数据视图(D)逻辑视图
(3)Rational Rose建模⼯具可以执⾏以下⼏项任务,其中不包括B。
(A)⾮⼀致性检查(B)⽣成Delphi语⾔代码
(C)报告功能(D)审查功能
(4)下列说法不正确的是B。
(A)在⽤例视图下可以创建类图
(B)在逻辑视图下可以创建构件图
(C)在逻辑视图下可以创建包
(D)在构建试图下可以创建构件
3. 简答题
(1)概述Rational Rose的起源与发展。
(2)Rational Rose为UML提供了哪些⽀持?
Rational Rose 建模⼯具能够为UML提供很好地⽀持,可以从以下6个⽅⾯进⾏说明;Rational Rose为UML提供了基本的绘图功能、提供存储库、提供导航功能、提供代码⽣成功能、提供逆向⼯程功能、提供模型互换功能。
(3)在Rational Rose中可以建⽴哪⼏种视图?这些视图都有哪些作⽤?
使⽤Rational Rose 建⽴的Rose模型中分别包括4种视图,分别是⽤例视图(Use Case View)、逻辑视图(Logical View)、构件视图(Component View)和部署视图(Deployment View):⽤例视图关注的是系统功能的⾼层抽象,适合于对系统进⾏分析和获取需求,⽽不关注于系统的具体实现⽅法;逻辑视图关注系统如何实现⽤例中所描述的功能,主要是对系统功能性需求提供⽀持,即在为⽤户提供服务⽅⾯系统所应该提供的功能;构件视图⽤来描述系统中的各个实现模块以及它们之间的依赖关系;部署视图显⽰的是系统的实际部署情况,它是为了便于理解系统如何在⼀组处理节点上的物
理分布,⽽在分
析和设计中使⽤构架视图。在系统中只包含有⼀个部署视图。
(4)结合附录A,在Rational Rose中试着绘制出⼀个类,添加相应的属性和⽅法,将其进⾏代码⽣成后查看⽣成的代码,并分析其结构。略。
第四章Rational统⼀过程
1.填空题
(1)Rational统⼀过程以⼀种能够被⼤多数项⽬和开发组织适应的形式建⽴起来,其所包含的6项最佳实践为迭代式软件开发、需求管理、基于构建的架构应⽤、建⽴可视化的软件模型、软件质量验证、软件变更控制。
(2)在Rational统⼀过程的开发流程中定义了“谁”“何时”“如何做”“某事”,并分别使⽤4种主要的建模元素来进⾏表达,他们是:⾓⾊、活动、产物和⼯作流。
(3)将迭代过程划分为4个连续的阶段,分别是:初始阶段、细化阶段、构造阶段、和移交阶段。(4)对于⼀个以架构为中⼼的开发组织,需要对架构的以下3个⽅⾯进⾏关注,这3个⽅⾯分别是:架构的⽬的、架构的表⽰和架构的过程。
2.选择题
(1)下⾯不是Rational统⼀过程包含的6项最佳实践的是A。
A.瀑布式软件开发
B.迭代式软件开发
C.基于构件的架构应⽤
D.软件质量验证
(2)⼀个有效的需求管理不包括的内容时D
A.能够应对复杂项⽬的需求
B.能够有良好的⽤户满意程度
C.尽可能的减少需求错误
D.减少开发者之间的交流
(3)迭代过程的4个阶段不包括B。
A.初始
B.分析
C.细化
D.构建
(4)⼀个以架构为中⼼的开发组织,不需要对架构的哪个⽅⾯进⾏关注B。
A.架构的⽬的
B.架构的绘制软件
C.架构的表⽰
D.架构的过程
3.简答题
(1)什么是Rational统⼀过程?试着对其进⾏简要介绍
Rational统⼀过程是⼀种软件⼯程过程;Rational统⼀过程是⼀个过程产品;Rational统⼀过程拥有⼀套⾃⼰的过程框架;Rational统⼀过程中包含了许多现代软件开发中的最佳实践。
(2)Rational统⼀过程的知识内容包括哪些⽅⾯?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论