UML组件图详解(作用组成及画法例子)

UML组件图详解(作用组成及画法例子)-mikechen

UML组件图定义

UML组件图,英文名Component Diagram,是用来描述组件与组件之间关系的一种UML图。

 

UML组件图作用

UML组件图的作用体现在如下4点:

① 组件图明确了系统设计,降低了沟通成本;

② 组件图可以用来显示组件之间的依赖关系,以及组件的接口和调用关系;

③ 有利于帮助工作组的其他人员理解系统;

④ 有利于软件系统的组件重用;

 

UML组件图组成

UML组件图中主要包含5种元素,即组件、接口和关系等。

UML组件图 = 构件(Component) + 接口(Interface) + 关系(Relationship) + 端口(Port) + 连接器(Connector)

 

1.组件

组件是系统设计的一个模块化部分,它隐藏了内部的实现,对外提供了一组接口。

如下图所示:

UML组件图详解(作用组成及画法例子)-mikechen

组件分为如下3种:

源代码组件:一个源代码文件或者与一个包对应的若干个源代码文件;

二进制组件:一个目标码文件,一个静态的或者动态的库文件;

可执行组件:在一台处理器上可运行的一个可执行的程序单位,即所谓可执行程序;

 

2.接口

对于一个组件而言,它有两类接口,提供接口与需求接口。

提供接口(Provided interface):顾名思义就是组件提供出去供组件使用方调用的接口 ,用直线关联到圆形符合的组件表示组件提供了对接口的实现。

需要接口(Required Interface ):就是组件需要外部提供的接口,用直线关联到半圆形的组件表示对接口的使用。

如下图所示:

UML组件图详解(作用组成及画法例子)-mikechen

 

3.关系

组件间的关系有两种:

1)依赖关系

依赖关系分为两种:

  • 一种是组件与需求接口之间建立依赖关系;
  • 另一种是组件与组件之间建立依赖关系;

2)泛化关系

组件与提供接口之间建立实现关系。

 

4.端口

端口 (port):端口 表明组件对外提供接口的交互点,和网络中的端口概念相似。

 

5.连接器

连接器是表示两个组件之间可以互相通讯的表达方式,而组件之间具体是通过什么方式通讯连接器并没有强调,有可能是组件间通过比如 http 通讯,也有可能共享变量、传参的方式通讯。

UML组件图详解(作用组成及画法例子)-mikechen

 

UML组件图例子

下图是一个统一搜索引擎的组件图,由一个前端的搜索框、后端提供了搜索服务和搜索内容的保存服务。

UML组件图详解(作用组成及画法例子)-mikechen

陈睿mikechen

10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复面试即可获取《史上最全阿里Java面试题总结》,后台回复架构,即可获取《阿里架构师进阶专题全部合集

评论交流
    说说你的看法