包图组件图部署图

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

标准元素: 标准元素
虚包(facade):描述一个只引用其他保内元素的包 框架(framework):描述一个主要由模式组成的包 桩(stub):描述一个作为另一个包的公共内容代理的包 子系统(subsystem):描述正在建模中的整个系统的独立部分的包 系统(system):描述正在建模中的整个系统的包
对成组的元素建模遵循的策略: 1)浏览特定体系结构视图中的建模元素,找出在概念和语义上相互接近的元 素所定义的组块 2)把每一个这样的组块放到一个包中 3)对每一个包找出可以在包外访问的元素,将这些元素标记为公有的,把其他 的元素标记为受保护的或是私有的.若不确定,就隐藏该元素 4)确定包与包之间的依赖关系,特别是引入依赖 5)确定包与包之间的泛化关系,以及包的多重性和重载 对体系结构视图建模: 对体系结构视图建模 视图是对系统组织及结构的描述,注重系统的特定方面.可以把系统分解为几乎 互不相关的包,每个包表达了一组体系结构上的重大决策,包都拥有与相应视图密切相关的所有抽象. 对体系结构视图建模遵循的策略: 1)找出问题语境中一组有意义的体系结构视图(设计视图、进程视图、实现视图、用 例视图) 2)找出对于可视化、详述、构造和文档化来说充分必要的元素和图,并将它们放到 合适包中。 3)如果必要,将这些元素进一步地组合到它们自己的包中 4)不同视图中的元素之间通常存在依赖关系。所以,一般要让系统层的所有视图对同层的其他 视图开放
与类的比较: 与类的比较:
相同点: 相同点:两者都有名称;都可以实现一组接口;都可以参与依赖关系;都可以被嵌套;都 可以有实例;都可以参与交互。 不同点: 不同点:类描述了软件设计的逻辑组织和意图,而组件则描述软件设计的物理实现,即每 个组件体现了系统设计中特定类的实现。
组件的种类: 组件的种类:
配置组件(Deployment Component):是运行系统需要配置的组件,是形成课执行文件的基 配置组件 础. 如:操作系统,Java虚拟机,数据库管理系统都属于配置组件 工作产品组件(Work Product Component):工作产品组件包括模型、源代码和用于创建配 工作产品组件 置组件的数据文件,它们是配置组件的来源。包括UML图,Java类和JAR文件、 动态链接库和数据库表等 执行组件(Execution Component):是在运行时创建的组件,是最终可运行的系统产生的允 执行组件 许结果. 如:HTML, XML文档,.NET组件
包规范(Package Specification):类的头文件,包含类中函数的原型信息 包规范
包体(Package Body):包含类操作代码 包体
不同类型组件
任务规范(Task Specification):任务表示具有独立控制线程的包. 任务规范 任务体(Task Body): 任务体
数据库(Database):可能含有一个或几个结构 数据库
关联关系(association)
配置用关联关系表示各节点之间通信路径
配置图的建模
配置图一般用于对系统的实现视图建模,建模的时候要找出系统中的节点以 配置图一般用于对系统的实现视图建模 建模的时候要找出系统中的节点以 及节点之间的关联关系 具体建模步骤: 1) 1)对系统中的节点建模 2)对节点之间的关联关系建模 3)对驻留在节点上的配置建模 4)对驻留在节点上的配置之间的依赖关系建模 5)对建模的结果进行精化和细化
3种元素 种元素: 种元素
组件(Component) 接口(Interface) 依赖关系(Dependency)
组件(Component)
概述: 概述 组件是定义了良好接口的物理实现单元,是系统中可替换的物理部件.一般情况下,组
件表示将类、接口等逻辑元素打包而形成的物理模块。组件可以是源代码组件、二进制组 件或一个可执行的组件。
组件图(Component Diagram)
背景: 背景:在软件建模的过程中,使用用例图可以推断系统希望的行为;使用类图
可以描述系统中的词汇;使用时序图、组件图、状态图和活动图可以说明这些词 汇中的事物如何相互作用以完成某些行为。在完成系统的逻辑设计之后,下一步 要定义设计的物理实现,如可执行文件、库、表、文件和文档等。对面向对象系 统的物理方面进行建模时要用到两种图:组件图和配置图。 概述: 概述:使用组件图能够可视化物理组件以及它们之间的关系,并描述其构造细节. 组件图描述了软件的各种组件和它们之间的依赖关系.在UML中,组件图是系统实 现视图的图形表示,而其中的一个组件图只能表示系统实现视图的一部分,也即任 何一个组件图都不能描述系统实现的所 有方面,只有系统中的组件组合起来 才能表示完整的系统实现视图
配置图包含两种元素: 节点(Node) 关联关系(Association)
节点(Node)
概述: 概述 节点是运行时代代表计算资源的物理元素. 节点与配置比较: 节点与配置比较
相同点:二者都有名称和关系,都可以有实例,都可以被嵌套,都可以参与 交互. 不同点:配置是参与系统执行的事物,而节点是执行配置的事物;配置表 示逻辑元素的物理包装,而节点表示配置的物理配置 名称: 名称 每一个节点都必须有一个区别于其他节点的名称.
虚包(Generic Package): 虚包
虚子程序(Generic Subprogram): 虚子程序
接口(Interface)
概述: 概述 在组件图中,组件可以通过其他组件的接口来使用其他组件中定义
的操作.通过使用命名的接口,可以避免在系统中各个组件之间直接发生依 赖关系,有利于组件的替换 接口和组件之间的关系: 实现关系(Realization): 依赖关系(Dependency): 组件接口的分类: 导入接口(import interface):供访问操作的组件使用 导出接口(export interface):由提供操作的组件提供
配置图(Deployment Diagram)
概述: 概述 使用配置图可以描述软件执行所需的处理器和设备的拓补结构.配
置图描述了运行软件的系统中硬件和软件的物理结构,即系统执行处理过 程中系统资源元素的配置情况以及软件到这些资源元素的映射.配置图可 以显示实际的计算机和设备(节点)以及它们之间的必要连接,也可以显示 连接的类型.此外,配置图还可以显示配置和配置之间的依赖关系,但是美 国配置必须存在于某些节点上.
不同类型组件
组件:一般意义上的组件,可以用构造型来指定组件类型 组件 子程序规范(Subprogram Specification):通常是一组子程序集合名,子程序中不包 括类定义
子程序体(Subprogram Body):
不同类型组件
主程序(Main Program):是包含程序根的文件 主程序
包(Package)
引入与输出:引入(import)允许一个包中的元素单向访问另一包中的元素 允许一个包中的元素单向访问另一包中的元素. 引入与输出 引入 允许一个包中的元素单向访问另一包中的元素
在UML中,用一个由构造型import修饰的依赖为 引入关系建模.通过把抽象包装秤有含义的组块, 然后用引入关系控制对它们的访问,就能控制 大量抽象的复杂性. 输出(export)就是包的公共部分 就是包的公共部分. 输出 就是包的公共部分 一个包输出的部分仅对显示地引入这个包 的其他包中的元素是可见的 注:引入和访问依赖是不可传递的.
依赖关系(Dependency)
组件图用依赖关系表示各组件之间存在的关系 类型.
组件图的建模技术
组件图一般用于对面向系统的物理方面的建模,建模的时候要找 出系统中存在的组件、接口以及组件之间的依赖关系。 具体建模步骤: 1)对系统的组件建模 2)对相应组件提供的接口建模 3)对组件之间的依赖关系建模 4)将逻辑设计映射成物理实现 5)对建模的结果进行精化和细化
wk.baidu.com 包之间的关系
引入和访问依赖: 引入和访问依赖
用于在一个包中引入另一个包输出的元素
泛化: 泛化
用于说明包的家族
包之间的泛化关系类似于类之间的泛化关系,而且包之间的泛化关系 也想类那样遵循替代原则,即特殊包可以应用到一般包被使用的地方
包图建模技术
对成组的元素建模: 对成组的元素建模 大多数情况下,包组合的是基本类型相同的元素,但是也可以组合不同种类的元素
节点的种类: 节点的种类
处理器(Processor):能够执行软件、具有计算能力的节点。 如服务器,工作站 设备(Device):没有计算能力的节点 如打印机,扫描仪 节点中的配置: 节点中的配置 配置图可以将节点和配置结合起来,以处理资源和软件实现之间 的关系.当配置驻留在某个节点时,可以将它建模在图上该节点的内部.
包图由包和包之间的关系组成的。 包图由包和包之间的关系组成的。
包(Package)
概述: 概述 包是将多个元素组织为语义相关的组的通用机制.一个包拥有或引用的模型
元素称为该包的内容.包仅在建模时有意义,而不必转换到可执行的系统中.实践中, 一般使用术语子系统(Subsystem)来描述包. 名称: 名称 与其他的建模元素一样,每个包都必须有一个与其他包想区别的名称. 拥有的元素: 拥有的元素 包可以拥有其他元素,这些元素可以是类、接口、组件、节点、协 作、用例和图,甚至可以是其他的包。拥有是一种组成关系,这就意味着模型元 素被声明在包中,若包被撤销,其中的元素也要被撤销。一个模型元素不能被一 个以上的包所拥有。 可见性: 可见性:包内元素可见性用来控制包外部的元素对保内元素的访问权限 公有的(public) + :此元素可以被任何引入该包的包中的元素访问 受保护的(protected) # :此元素可以被继承该包的包中的元素访问 私有的(private) - :此元素只能被同一个包的元素访问 注:若一个元素对一个包是可见的,那么这个元素对嵌套于该包内的所有包都是 可见的.被嵌套的包可以看到包含该包的包所能看到的所有事物.
包图(Package Diagram)
概述: 概述 所有复杂的系统都必须被分成几个小的单元,以便人们可以一次只
处理有限的信息,且在分别处理这些信息时不会互相干扰.包就是用于把建 模元素组织成组的通用机制.包图是维护和控制系统总体结构的重要建模 工具.对复杂系统进行建模时,经常需要处理大量的类、接口、组件、节点 和图,这时就有必要将这些元素进行分组,即把语义相近并倾向于同一 变化的元素组织起来加入同一个包中,以方便理解和处理整个模型。
相关文档
最新文档