《uml基础与rose建模实用课后习题及答案》由会员分享,可在线阅读,更多相关《uml基础与rose建模实用课后习题及答案(21页珍藏版)》请在金锄头文库上搜索。
1、UML基础与Rose建模实用教程课后习题及答案第1章 面向对象概述1. 填空题(1)软件对象可以这样定义:所谓软件对象,是一种将状态和行为有机结合起来形成的软件构造模型,它可以用来描述现实世界中的一个对象。(2)类是具有相同属性和操作的一组对象的组合,即抽象模型中的“类”描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。(3)面向对象程序的基本特征是抽象、封装、继承和多态。2. 选择题(1)可以认为对象是 ABC 。(A)某种可被人感知的事物(B)思维、感觉或动作所能作用的物质(C)思维、感觉或动作所能作用的精神体(D)不能被思维、感觉或动作作用的精神体(2)类的定义要包
2、含以下的要素 ABD 。(A)类的属性(B)类所要执行的操作(C)类的编号(D)属性的类型(3)面向对象程序的基本特征不包括 B 。(A)封装(B)多样性(C)抽象(D)继承(4)下列关于类与对象的关系的说法不正确的是 A 。(A)有些对象是不能被抽象成类的(B)类给出了属于该类的全部对象的抽象定义(C)类是对象集合的再抽象(D)类用来在内存中开辟一个数据区,并存储新对象的属性3. 简答题(1)什么是对象?试着列举三个现实中的例子。对象是某种可被人感知的事物,也可是思维、感觉或动作所能作用的物质或精神体,例如桌子.椅子.汽车等。(2)什么是抽象?抽象是对现实世界信息的简化。能够通过抽象将需要的
3、事物进行简化、将事物特征进行概括、将抽象模型组织为层次结构、使软件重用得以保证。(3)什么是封装?它有哪些好处?封装就是把对象的状态和行为绑在一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的内部细节。封装有两个含义;一是把对象的全部状态和行为结合在一起,形成一个不可分割的整体。对象的私有属性只能够由对象的行为来修改和读取。二是尽可能隐蔽对象的内部细节,与外界的联系只能够通过外部接口来实现。通过公共访问控制器来限制对象的私有属性,使用封装具有以下好处:避免对封装数据的未授权访问、帮助保护数据的完整性、当类的私有方法必须修改时,限制了在整个应用程序内的影响。(4)什么是继承?它有哪些好
4、处?继承是指特出类的对象拥有其一般类的属性和行为。继承意味着“自动地拥有”,即在特殊类中不必重新对已经在一般类中定义过的属性和行为进行定义,而是特殊类自动地、隐含地拥有其一般类的属性和行为。通过继承可使派生类能够比不使用继承直接进行描述的类更加简洁、能够重用和扩展现有类库资源、使软件易于维护和修改。(5)面向对象分析的过程有哪些?面向对象的分析的过程包括:获取需求内容陈述、建立系统的对象模型结构、建立对象的动态模型、建立系统功能建模。(6)面向对象的设计有哪些准则?面向对象设计的准则包括模块化、抽象、信息隐藏、低耦合和高内聚等。(7)为什么要使用UML建模?对象建模的目标就是要为正在开发的系统
5、制定一个精确、简明和易理解的面向对象模型。UML已经成为工业标准的对象建模语言。建模能够帮助开发组织者更好地对系统计划进行可视化,并帮助他们正确地进行构造,使开发工作进展的更快。第2章 UML概述1. 填空题(1)在UML中主要包括的视图为静态视图、用例视图、交互视图、状态机视图、活动视图、物理视图和模型管理视图。(2)UML图包括:用例图、类图、序列图(顺序图)、状态图、活动图(协作图)、构件图(组件图)、和部署图(配置图)。(3)用例视图描述了系统的参与者与系统进行交互的功能,是参与者所能观察和使用到的系统功能的模型图。一个用例是系统的一个功能单元,是系统参与者与系统之间进行的一次交互作用
6、。(4)状态机视图是通过对象的各种状态建立模型来描述对象随时间变化的动态行为,并且它是以独立的对象为中心进行描述的。(5)用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系,以及系统内用例之间的关系。(6)在UML中定义了4种基本的面向对象的事物,分别是结构事物、行为事物、分组事物和注释事物(辅助事物)等。2. 选择题(1)UML图不包括 D 。(A)用例图(B)类图(C)状态图(D)流程图(2)下列关于视图的说法不正确的是 D 。(A)用例视图描述了系统的参与者与系统进行交互的功能(B)交互视图描述了执行系统功能的各个角色之间相互传递消息的顺序
7、关系(C)状态机视图是通过对象的各种状态来建立模型来描述对象随时间变化的动态行为(D)构件视图表示运行时的计算资源(例如计算机以及它们之间的连接)的物理布置(3)构件不包括 C 。(A)源代码构件(B)二进制构件(C)UML图(D)可执行构件(4)下列关于互视图说法正确的是 A 。(A)交互试图描述了执行系统功能的各个角色之间相互传递消息的顺序关系,是描绘系统中各个角色或功能交互的模型(B)交互视图包含类图和顺序图(C)交互视图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求(D)交互视图是参与者所能观察和使用到的系统功能的模型图(5)下列关于对象约束语言的特性,说法不正确的是 B
8、 。 (A)对象约束语言不仅是一种查询(Query)语言,同时还是一种约束(Constraint)语言(B)对象约束语言是一种弱类型的语言(C)对象约束语言是基于数学的,但是却没有使用相关数学符号的内容(D)对象约束语言也是一种声明式(Declarative)语言3. 简答题(1)简述UML的起源与发展。(2)简述UML的目标UML为用户提供了一种易用的、具有可视化的建模能力的语言,能够使用户使用该语言进行系统的开发工作,并且能够进行有意义的模型互换;为面向对象建模语言的核心概念提供可扩展性和规约机制;为理解建模语言提供一种形式化的基础;鼓励面向对象的各种工具市场的生长和繁荣;支持高级的开发概
9、念,例如构件、协作、框架和模式等;集成优秀的实践成果和经验。(3)在UML中包含哪些视图?这些视图都对应哪些图?在UML 中主要包括的视图为静态视图、用例视图、交互视图、状态机视图、活动视图、部署视图和模型管理视图。静态视图包括类图;用例视图包括用例图;实现视图包括构件图;部署视图包括部署图;状态机视图包括状态机图;活动视图包括活地图;交互视图包括顺序图和协作图;模型管理视图包括类图。(4)静态视图有什么作用?静态视图是对在应用领域中的各种概念以及与系统实现相关的各种内部概念进行的建模。静态视图在UML中的作用包含三个方面:首先,静态视图是UML的基础。模型中静态视图的元素代表的是现实系统应用
10、中有意义的概念,这些系统应用中的各种概念包括真实世界中的概念、抽象的概念、实现方面的概念和计算机领域的概念;其次,静态视图构造了这些概念对象的基本构造。在面向对象的系统中,将对象的数据结构和操作统一到一个独立的对象当中静态视图不仅包括所有的对象数据结构,同时也包括了对数据的操作;最后,静态视图也是建立其它动态视图的基础。静态视图将具体的数据操作使用离散的模型元素进行描述,尽管它不包括对具体动态行为细节的描述,但是它们是类所拥有并使用的元素,使用和数据同样的描述方式,只是在标识上进行区分。(5)UML中都包含哪些图?简述这些图的作用。最常用的UML图包括:用例图、类图、序列图、状态图、活地图、构
11、件图和部署图。用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系,以及系统内用例之间的关系;类图显示了系统的静态结构,表示不同的实体(人、事物和数据)是如何彼此相关联的:序列图显示了一个具体用例或者用例的一部分的一个详细流程;状态图表示某个类所处的不同状态以及该类在这些状态中的转换过程;活地图是用来表示两个或者更多的对象之间在处理某个活动时的过程控制流程;构件图提供系统的物理视图,它是根据系统的代码构件显示系统代码的整个物理结构;部署图用于表示该软件系统如何部署到硬件环境中,它用于显示在系统中的不同构件在何处物理的运行,以及如何进行彼此的通信。(
12、6)简述包的作用?包是一种在概念上的对UML模型中各个组成部分进行分组的机制。在包中可以包含有结构事物、行为事物和分组事物。包的使用比较自由,可以根据自己的需要划分系统中的各个部分,例如可以按外部Web服务的功能来划分这些Web服务。包是用来组织UML模型的基本分组事物,它也有变体,如框架、模型和子系统等。(7)UML中的模型元素的关系主要有哪些?UML中主要包含4种关系,分别是依赖、关联、泛化和实现:依赖关系指的是两个事物之间的一种语义关系,当其中一个事物(独立事物)发生变化就会影响另外一个事物(依赖事物)的语义;关联关系是一种事物之间的结构关系,用它来描述一组链,链是对象之间的连接;泛化关
13、系是事物之间的一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象,即在面向对象学中常常提起的继承;实现关系也是UML元素之间的一种语义关系,它描述了一组操作的规约和一组对操作的具体实现之间的语义关系。(8)简述UML的公共机制。在UML中,共有4种贯穿于整个统一建模语言并且一致应用的公共机制,这4种公共机制分别是规格说明、修饰、通用划分和扩展机制。通常会把规格说明、修饰和通用划分看作是UML的通用机制。其中扩展机制可以再划分为构造型、标记值和约束。这4种公共机制的出现使得UML更加详细的语义描述变得较为简单。对于系统的建模来说,拥有这些机制,可以构件出相对完备的系统。第
14、3章 Rational Rose 概述1. 填空题(1)使用Rational Rose建立的Rose模型中包括4种视图,分别是用例视图、逻辑视图、构件视图(组件视图)和部署视图(配置视图)。(2)在用例视图中包括了系统中的所有参与者、用例和用例图,必要时还可以在用例视图中添加顺序图、协作图和类图等。(3)逻辑视图关注系统如何实现用例中所描述的功能,主要是对系统功能性需求提供支持,即系统应该提供的功能。(4)构件视图(组件视图)用来描述系统中的各个实现模块以及它们之间的依赖关系,包含模型代码库、执行文件、运行库和其他构件等信息。(5)部署视图(配置视图)显示的是系统的实际部署情况,它是为了便于理
15、解系统如何在一组处理节点上的物理分布,而在分析和设计中使用的构架视图。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提供了基本的绘