UML 基础: 组件图
级别: 初级
Donald Bell, IBM 全球服务, IBM
2005 年 2 月 15 日
来自 Rational Edge:这篇文章介绍组件图,一个在新的统一建模语言 2.0 中
规定的结构图。
该文是关于在统一建模语言
2.0
或
UML
中使用的基本图的一系列文章中的一
部分。在以前关于
UML
类图
中,我描述了类图的标记集如何作为所有
UML 2
结构图的基础。随着
UML 2
的轨迹,本文介绍组件图。
图的目的
组 件图的主要目的是显示系统组件间的结构关系。在 UML 1.1 中,一个组件
表现了实施项目,如文件和可运行的程序。不幸地,这与组件这个术语更为普
遍的用法、指象 COM 组件这样的东西相冲突。随着时间的推移及 UML 的连续
版本发布, UML 组件已经失去了最初的绝大部分含义。UML 2 正式改变了组
件概念的本质意思;在 UML 2 中,组件被认为是独立的,在一个系统或子系
统中的封装单位,提供一个或多个接口。虽然 UML 2 规范没有严格地声明它,
但是组件是呈现事物的更大的设计单元,这些事物一般将使用可更换的组件来
实现。但是,并不象在 UML 1. x 中,现在,组件必须有严格的逻辑,设计时
构造。主要思想是,你能容易地在你的设计中重用及/或替换一个不同的组件实
现,因为一个组件封装了行为,实现了 特定接口。
1
在以组件为基础的开发(CBD)中,组件图为架构师提供一个开始为解决方案
建模的自然形式。组件图允许一个架构师验证系统的必需功能是由组件实现的,
这样确保了最终系统将会被接受。
除此之外,组件图对于不同的小组是有用的交流工具。图可以呈现给关键项目
发起人及实现人员。通常,当组件图将系统的实现人员连接起来的时候,组件
图通常可以使项目发起人感到轻松,因为图展示了对将要被建立的整个系统的
早期理解。
开 发者发现组件图是有用的,因为组件图给他们提供了将要建立的系统的高层
次的架构视图,这将帮助开发者开始建立实现的路标,并决定关于任务分配及
(或)增进 需求技能。系统管理员发现组件图是有用的,因为他们可以获得将
运行于他们系统上的逻辑软件组件的早期视图。虽然系统管理员将无法从图上
确定物理设备或物理 的可执行程序,但是,他们仍然欢迎组件图,因为它较早