概述
组件图(Component Diagram)描述了软件的各种组件和它们之间的依赖关系。组件图中通常包含3种元素:组件(Component)、接口(Interface)和依赖(Dependency)。每个组件实现一些接口,并使用另一些接口。
组件
组件是定义了良好接口的物理实现单元,是系统中可替换的物理部件。一般情况下,组件表示将类、接口等逻辑元素打包而形成的物理模块。一个组件包含它所实现的一个或多个逻辑类的相关信息,创建了一个从逻辑视图到组件视图的映射。
在UML中,组件用一个左侧带有两个突出小矩形的矩形来表示,如下图:
1、名称
组件的名称是一个字符串,位于组件图的内部。组件的名称有两种:简单名和路径名。通常,UML图中的组件只显示其名称,但是也可以用标记值或表示组件细节的附加栏加以修饰。
2、组件的种类
有3种类型的组件:配置组件(Deployment Component)、工作产品组件(Work product component)和执行组件(Execution Component)
(1)、配置组件是运行系统需要配置的组件,是形成可执行文件的基础。操作系统、Java虚拟机和数据库管理系统都属于配置组件。
(2)、工作产品组件包括模型、源代码和用于创建配置组件的数据文件,它们是配置组件的来源。工作产品组件包括UML图、Java类和JAR文件、动态链接库(dll)和数据库表等。
(3)、执行组件是在运行时创建的组件,是最终可运行的系统产生的允许结果。EJB、Servlets、HTML和XML文档、COM+和.Net组件以及CORBA组件都是执行组件的例子。
3、Rose中不同类型组件的图标表示
(1)、组件
Rose中的组件即一般意义上的组件。也可以用构造型来指定组件类型(如ActiveX、Applet、Application、DLL和Executable等)。如图所示
(2)、子程序规范
子程序规范(Subprogram Specification)通常是一组子程序集合名,子程序中不包括类定义。下图给出了两种表示子程序规范的图标:
(3)、子程序体
下图给出了两种表示子程序体的图标:
(4)、主程序
主程序是包含程序根的文件。
(5)、包规范
包是类的实现方法。包规范(Package Specification)是类的头文件,包含类中函数的原型信息。在C++中,包规范就是.h文件。
(6)、包体
包体(Package Body)包含类操作代码。在C++中,包体就是.cpp文件。
(7)、任务规范
任务表示具有独立控制线程的包。可执行文件通常表示为扩展名为.exe的任务规范。
(8)、任务体
下图是两种表示任务体的图标。
(9)、数据库
数据库可能含有一个或几个结构。
(10)、虚包
下图是两种表示虚包的图标。
(11)、虚子程序
下图是两种表示虚子程序的图标。
接口
接口和组件之间的关系分为两种:实现关系(Realization)和依赖关系(Dependency)。接口和组件之间用实线连接表示实现关系,用虚线连接表示依赖关系。
组件的接口分为两种:导入接口和导出接口。其中导入接口供访问操作的组件使用,导出接口由提供操作的组件提供。上图中,接口对于组件Component是导出接口,对于组件Component2来说是导入接口。
依赖关系
组件图用依赖关系表示各组件之间存在的关系类型。组件图中的依赖关系是由客户指向提供者的虚线箭头。客户组件依赖于提供者组件,提供者组件只在开发时存在,运行时则不存在。
相关推荐
"UML组件图和部署图" UML(Unified Modeling Language)是一种通用的建模语言,用于描述、设计和实现软件系统。UML组件图和部署图是UML中的两个重要图形,它们用于描述系统的结构和部署方式。 组件图是一种静态...
_UML组件图与部署图
图的目的组件图的主要目的是显示系统组件间的结构关系。在UML1.1中,一个组件表现了实施项目,如文件和可运行的程序。不幸地,这与组件这个术语更为普遍的用法、指象COM组件这样的东西相冲突。随着时间的推移及UML的...
UML 基础组件图 UML 组件图是一种结构图,用于显示系统组件之间的结构关系。在 UML 2 中,组件被认为是独立的,在一个系统或子系统中的封装单位,提供一个或多个接口。组件图的主要目的是显示系统组件之间的结构...
《学生管理系统UML图详解》 学生管理系统是一个广泛应用于高校、培训机构等教育机构的信息管理系统,其目的是为了方便地管理学生信息、课程安排、成绩记录、考勤情况等。本篇文章将详细探讨基于Reational Software...
**UML笔记3:组件图与配置图详解** 在软件工程中,统一建模语言(UML)是一种标准的建模方法,用于描述系统的设计、结构和行为。本笔记将聚焦于UML中的两个关键图表——组件图和配置图,它们在系统分析和设计过程中...
Axure UML组件库正是将UML概念融入到Axure中的一个重要资源,允许设计师更便捷地构建与UML相关的原型。 **UML RPLIB组件库** "RPLIB"在这里可能指的是“Resource Package Library”,即资源包库。Axure UML RPLIB...
本系统通过多种UML(统一建模语言)图表来描述其设计和功能,包括用例图、类图、顺序图、协作图、状态图、组件图和部署图。 1. **用例图**:用例图展示了系统的参与者(如学生、教师、管理员)与系统提供的服务之间...
包含UML活动图(流程图)、泳道图、状态图、用例图、类图、时序图六类常用图表元件及示例图,可快速、便捷地在Axure中进行产品建模分析。基于Axure的UML绘图元件库。可用于绘制UML用例图、流程图、时序图、泳道图、...
UML(统一建模语言)是一种用于软件设计的建模语言,其基本模型元素包括:用例图、类图、序列图、协作图、状态图、活动图、组件图、配置图、数据模型图等。 知识点3:系统需求分析 系统需求分析是软件设计的重要...
图的目的组件图的主要目的是显示系统组件间的结构关系。在UML1.1中,一个组件表现了实施项目,如文件和可运行的程序。不幸地,这与组件这个术语更为普遍的用法、指象COM组件这样的东西相冲突。随着时间的推移及UML的...
UML对象组件和框架
这个文档包含了多种UML图,如用例图、状态图、类图、活动图、部署图、组件图、构件图和协作图,这些都是系统分析和设计过程中的关键工具。 首先,用例图(Use Case Diagram)描绘了系统的外部行为,展示了系统与...
基于Axure的UML绘图元件库。可用于绘制UML用例图、流程图、时序图、泳道图、状态机图、类图等。
详细介绍UML及软件开发过程,包括以下几部分内容:软件ch01开发过程概述、ch02 UML基础、ch03 UML用例图、ch04 UML类图、ch05 UML活动图、ch06 UML顺序图、ch07 UML协作图、ch08 UML状态图、ch09 UML组件图与部署图...
组件图描述了一个系统中的物理模块或组件以及它们之间的依赖关系。`扩展组件.gif`可能显示了组件的实例和它们的接口、依赖关系等。 8. **部署图 (Deployment Diagram)**: 部署图展示了硬件设备和运行在上面的...
首先,UML的核心是其图形表示法,它包括多种图表类型,如类图、对象图、序列图、协作图、状态图、活动图和组件图。这些图表共同为软件设计提供了全面的视角,涵盖了系统的所有关键方面。 1. **类图**:在UML中,...
"UML组件图.doc"这份文档将详细介绍UML中的组件图,它是用来表示软件系统中物理部署的模块或组件以及它们之间的关系。组件图可以帮助我们理解系统的模块化结构,便于代码的组织和维护。 "UML基础.doc"文档则涵盖了...
"8UML组件图与部署图.ppt"涵盖了组件图和部署图。组件图描述软件系统的内部结构,展示软件组件的物理组织和依赖关系;部署图则展示了运行时的硬件和软件配置,包括处理器、网络连接以及运行在其中的软件组件。 通过...
**UML笔记2:状态图、活动图、协作图、组件图、配置图详解** **一、状态图(State Diagram)** 状态图是UML(统一建模语言)中用于描述对象在其生命周期中的行为,特别是在不同状态之间的转换。它显示了一个对象...