UML9对象图和包图.ppt_第1页
UML9对象图和包图.ppt_第2页
UML9对象图和包图.ppt_第3页
UML9对象图和包图.ppt_第4页
UML9对象图和包图.ppt_第5页
免费预览已结束,剩余21页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、系统分析及模块设计,9.对象图和包图,第9课时,纲要,重点 对象图的概念 包图的概念 目的 了解对象图和包图在实际中的应用,2,9.1什么是对象,对象是指某个事物,大多对应于真实世界中的某个客观主体 但有些对象在真实世界中没有直接的对应物,是人们对某个事物的一种抽象描述 综上,对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,3,9.2 对象的作用,对象是问题域或实现域中某些事物的一个抽象,它反映该事物在系统中需要保存的信息和发挥的作用 对象是一组属性和有权对这些属性进行操作的一组服务的封装体 所有的对象都是有唯一标识的独立实体 对象间的区别是由它们固有的存在性所决定的,与他们

2、的特征是否相同无关,4,9.3对象的基本特征,对象的基本特性:对象的属性和行为 属性描述类的基本特征,比如车的颜色、称身长度等 行为描述类具有的功能,比如车的启动、行驶等 对象是类的实例化,所有的操作都是针对对象进行的 类为对象提供模版 任何对象都是某个类的实例,5,9.4 对象图的概念1,对象图示仅包括各种对象的类图 对象图是从实际的或原型化的情景来表达的 对象图显示了一组对象和他们之间的关系,描述了参与一个交互的各个对象在交互过程中某一时刻的状态,可以看做是类图在某一时刻的实例,描述系统中各种对象(类的实例)及对象间的各种静态关系,6,9.4 对象图的概念2,对象图一般是在类图中实现的,不

3、是一个单独的图 对象图是用于研究和测试的主要工具 对象图可以用于通过记录问题域中的示例来解决问题 对象图可用在分析和设计过程中,以验证类图的准确性,7,9.5 对象的表示,对象图中,使用一个矩形区域来描述一种类型的对象的各种属性所需的特定信息,这个矩形包括三个部分 1.名称分区 包括对象的名称和对象所属类的名称 2.属性分区 包含付给该对象的各种属性的所有值,并为每个属性命名和赋值 3.操作分区 包含特点类类型的对象所支持的每个行为的定义。同一个类的每个对象都有相同的操作,8,类图,9.6对象图的元素,对象图仅包含两个元素:对象和链接 对象:是从类实例化的真实实体,是对象类型的定义 链接:是根

4、据关联创建的,是关系类型的定义 链接描述 了两个对象间的关系,关联定义了关系的类型和管理关系的规则,9,9.7对象图,对象图是表示在某一时刻一组对象,以及它们之间的关系的图。(它包含带有值的对象,而非描述符) 在图形上,对象图由节点,以及连接这些节点的连线组成 节点可以使对象也可以是类 连线表示对象间的关系,10,如果协作图实例化了,则产生对象图 (协作图可以表示一个可多次实例化的对象及其关系的总体模型,协作图包含对象和链的描述符类元角色和联系角色) 对象图不显示系统的演化过程。(可用带消息的协作图或用顺序图表示一次交互),9.8 对象图的用处,对象图主要用于: 捕获实例和连接 在分析和设计阶

5、段创建 捕获交互的静态部分 举例说明数据/对象结构 详细描述瞬态图 由分析人员、设计人员和代码实现人员开发,11,9.9 对象图的建模过程,对象图的建模过程如下: 1.识别将要使用的建模机制 2.对于各种机制,识别参与协作的类、接口和其他元素,同时识别各事物间的关系 3.考虑贯穿机制的脚本,冻结某一时刻的脚本,并且汇报给每个参与这个机制的对象 4.按照需要显露出每个这样的对象的状态和属性值,以便理解脚本 5.显露出这些对象间的链,以描述对象之间关联的实例,12,脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。同时“脚本”又是编剧术语名词,故

6、事构成被称作脚本。 脚本是批处理文件的延伸,是一种纯文本保存的程序,一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。,9.10 类图和对象图的区别,13,9.11 包_1,包是一个容器,提供对UML元素进行分组的功能,主要表现在: 1.把一个大的系统分解为多个小的系统,分解式控制软件复杂性的重要手段 2.结构化方法中,对功能进行分解 3.面向对象中,将相关类放在一起,14,9.11包_2,包(Package)是对模型元素进行分组的机制,将模型元素划分为若干个子集 包可以拥有UML中的其他元素。 包中的元素有:类、接口、组件、结点、用例、协

7、作、图、包等 如果包被撤销,其中元素也要被撤销,15,9.12 包-3,包的作用不仅仅是为模型元素分组,还为所拥有的模型元素构造一个命名空间 包的名字是一个字符串,可分为简单名和路径名: 简单名是指包只含一个简单的名称 路径名指以包所位于的外围包的名字作为前缀 的包名 在一个包内部同一种元素的名称必须是唯一的,不同模型包的各个建模元素可以具有相同的名字(因为他们代表不同的建模元素) 实际建模中,最好将一个包内所有种类的元素的名称都设为唯一的,16,9.13包中元素的可见性,包中元素也具有可见性,包的可见性用来控制包外界元素对包内元素的可访问权限,分为3种: 公有访问(Public) 保护访问(

8、Protected) 私有访问(Private),17,9.14 包的关系,包之间的关系有两种 引入和访问依赖,用于在一个包中引入另一个包输出的元素。 引入(import)允许一个包中的元素单向访问另一个包中的元素。包中具有公共访问权限的内含元素成为输出(export)。一个包的输出部分仅对显式的引入这个包的其他包中的元素是可见的 泛化,用于说明包的家族,具有继承关系,18,9.15 创建和使用包时的原则,设计良好的包是高内聚、低耦合的,并且对其内容的访问有严格的控制 1.包的命名要简单、具有描述性 2.应用包是为了简化图 3.包应该连贯 4.在包上用版型注明构架层(比如user interf

9、ace,businese/domaIn,data,system等) 5.避免包间的循环依赖(造成包之间的紧密耦合) 6.包依赖应该反映内部关系,19,9.16 包的扩展,UML的扩展机制可以用于包。用标记值描述包的新特性,用构造型描述包的新种类。 UML为包定义了5种构造型 虚包(facade):描述只引用其他包内元素的包 框架(framework):描述主要由模式组成的包 桩(stub):描述作为另一个包的公共内容代理的包 子系统(subsystem):描述正在建模中的整个系统的独立部分的包 系统(system):描述正在建模中的整个系统的包,20,9.17 包图,一个包图可以由任何一种UM

10、L图组成,通常是UML用例图或UML类图 包被描述成文件夹,可以用于UML任何一种的图上 包图只是把某些类放在一个包中,因此可以看做是类图的一种 包图并非正式的UML图,21,9.18包图的用处,描述需求的高阶概述 描述设计的高阶概述 在逻辑上把一个复杂的图模块化 组织源代码,22,9.19 建立包的具体做法,1.分析系统模型元素(通常是对象类),把概念上或语义上相近的模型元素纳入一个包中 2.对于每一个包,标出其模型元素的可见性 3.确定包之间的依赖关系,尤其是输入依赖 4.确定包与包之间的泛化关系,确定包元素的多态性与重载 5.绘制包图 6.包图精化,23,9.20 类包图,创建类包图,主要是为了在逻辑上组织设计 1.把一个框架的所有类放在相同的包中 2.一般把相同继承层次的类放在相同的包中 3.彼此间有聚合或组合关系的类通常放在相同的包中 4.合作频繁的类,信息能通过顺序图和合作图反映出的类应当放在一个包中,24,创建组件图,以在物理上组织设计 如果组件比较接近技术(比如VB),应选择组件图来描述物理设计,而不是包图 把子包放在母包的下面 一般描述继承关系时,继承

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论