解析Rose中不同类型UML组件图

开发 架构
UML组件图你是否熟悉,本文就向大家介绍一下,UML组件图(ComponentDiagram)描述了软件的各种组件和它们之间的依赖关系。

UML组件图中通常包含3种元素:组件(Component)、接口(Interface)和依赖(Dependency)。每个组件实现一些接口,并使用另一些接口。

UML组件图概述

组件图(ComponentDiagram)描述了软件的各种组件和它们之间的依赖关系。组件图中通常包含3种元素:组件(Component)、接口(Interface)和依赖(Dependency)。每个组件实现一些接口,并使用另一些接口。

组件

UML组件图中组件是定义了良好接口的物理实现单元,是系统中可替换的物理部件。一般情况下,组件表示将类、接口等逻辑元素打包而形成的物理模块。一个组件包含它所实现的一个或多个逻辑类的相关信息,创建了一个从逻辑视图到组件视图的映射。

在UML中,组件用一个左侧带有两个突出小矩形的矩形来表示,如下图:

1、名称

组件的名称是一个字符串,位于组件图的内部。组件的名称有两种:简单名和路径名。通常,UML图中的组件只显示其名称,但是也可以用标记值或表示组件细节的附加栏加以修饰。

2、组件的种类

UML组件图中有3种类型的组件:配置组件(DeploymentComponent)、工作产品组件(Workproductcomponent)和执行组件(ExecutionComponent)

(1)、配置组件是运行系统需要配置的组件,是形成可执行文件的基础。操作系统、Java虚拟机和数据库管理系统都属于配置组件。

(2)、工作产品组件包括模型、源代码和用于创建配置组件的数据文件,它们是配置组件的来源。工作产品组件包括UML图、Java类和JAR文件、动态链接库(dll)和数据库表等。

(3)、执行组件是在运行时创建的组件,是最终可运行的系统产生的允许结果。EJB、Servlets、HTML和XML文档、COM+和.Net组件以及CORBA组件都是执行组件的例子。

3、Rose中不同类型UML组件图的图标表示

(1)、组件

Rose中的组件即一般意义上的组件。也可以用构造型来指定组件类型(如ActiveX、Applet、Application、DLL和Executable等)。

(2)、子程序规范

子程序规范(SubprogramSpecification)通常是一组子程序集合名,子程序中不包括类定义。下图给出了两种表示子程序规范的图标:

 

(3)、子程序体

下图给出了两种表示子程序体的图标:

 (4)、主程序

主程序是包含程序根的文件。#p#

(5)、包规范

包是类的实现方法。包规范(PackageSpecification)是类的头文件,包含类中函数的原型信息。在C++中,包规范就是.h文件。

(6)、包体

包体(PackageBody)包含类操作代码。在C++中,包体就是.cpp文件。

(7)、任务规范

UML组件图中任务表示具有独立控制线程的包。可执行文件通常表示为扩展名为.exe的任务规范。

(8)、任务体

下图是两种表示任务体的图标。

(9)、数据库

数据库可能含有一个或几个结构。

(10)、虚包

下图是两种表示虚包的图标。

(11)、虚子程序

下图是两种表示虚子程序的图标。

 接口

UML组件图中接口和组件之间的关系分为两种:实现关系(Realization)和依赖关系(Dependency)。接口和组件之间用实线连接表示实现关系,用虚线连接表示依赖关系。

组件的接口分为两种:导入接口和导出接口。其中导入接口供访问操作的组件使用,导出接口由提供操作的组件提供。上图中,接口对于组件Component是导出接口,对于组件Component2来说是导入接口。

依赖关系

UML组件图用依赖关系表示各组件之间存在的关系类型。组件图中的依赖关系是由客户指向提供者的虚线箭头。客户组件依赖于提供者组件,提供者组件只在开发时存在,运行时则不存在。

【编辑推荐】

  1. 全面认识UML组件图
  2. 术语汇编 UML组件图解析
  3. 学习笔记 UML建模技术的组成部分
  4. UML组件图详解
  5. PowerDesigner UML建模技术简介


 

责任编辑:佚名 来源: uml.org.cn
相关推荐

2010-06-11 10:31:19

UML部署图

2009-04-23 14:24:36

UML建模组件图

2010-07-02 09:21:34

UML部署图

2010-07-06 16:19:56

UML图形

2010-06-28 09:44:48

UML建模工具Rose

2010-06-28 15:41:17

UML图类型

2011-03-30 08:27:48

C#

2010-07-02 10:25:50

UML模型图

2010-07-08 16:07:02

UML组件图

2010-06-28 10:11:11

UML建模工具-Rat

2011-07-08 09:24:59

网络自动化虚拟化

2010-07-06 13:04:33

UML系统组件图

2023-03-24 16:21:08

2010-06-18 14:56:15

UML综合实例

2010-07-06 15:57:58

UML图形

2010-07-01 16:02:48

UML组件图

2010-07-12 10:25:44

UML类图

2010-07-02 09:54:38

UML部署图

2010-06-29 14:03:46

UML组成

2010-12-16 10:54:07

SSL VPNVPN
点赞
收藏

51CTO技术栈公众号