今天给大家来讲解一下UML中的部署图(Deployment Diagram),也是整个uml系列内容的最后一讲。部署图与上篇文章介绍的『这就是UML!』系列内容第12讲:组件图都是对系统物理方面进行建模。
部署图用于描述系统硬件的物理拓扑结构以及在相关节点上运行的软件工件(artifacts)。工件是系统开发过程产生的具体的元素,如可执行文件、库、档案文件、数据库模式、配置文件等,构成的部署图的元素主要包括节点(node)和节点之间的关系(relationship)。
节点是系统部署的目标对象,其通常是硬件或软件的运行环境。每个节点都有自己的名称,如“Web服务器”,“数据库服务器”等,也可以在节点上进行其他信息的描述,如硬件的配置情况,软件环境的版本信息等。
1,UML1.x中的节点
在UML1.x中,节点被分为两类:处理器(processor)和设备(device)。
处理器是具有计算能力的节点,且一般可以运行软件,如服务器。设备指的是一些不具有计算能力的节点,它们可能作为一些输入输出设备或者本身是处理器的外部连接设备,如显示器、打印机、读卡器等。在UML中,两种节点分别使用下面的图形来表示:
处理器节点和设备节点
2,UML2.x中的节点
在UML2.x中,节点被分为设备和执行环境两种。设备是一个具有处理能力的物理计算资源的节点,可以在该节点上部署执行构件(artifacts)。设备也可能很复杂,如设备可能包含其它设备。设备使用带有<<device>>构造型的正方体或长方体来表示,如下图所示:
设备节点
上图是UML2.x中表示一个设备节点,其名称是“Application Server”(应用服务器)。在UML中没有为设备节点提供标准的构造型,用户可以根据实际情况选择一些非规范性的构造型,如:
· <<aplication server>>
· <<client workstation>>
· <<mobile device>>
· <<embedded device>>
设备节点也可使用用户自定义的图标,配置信息、构造型和标记值等可以添加到自定义图标和属性信息中。如下图是使用用户自定义图标表示设备节点的一个例子,该图中使用了构造型<<application server>>来给出设备的类别,并配以文字说明设备的名称和型号信息。
下图使用注释的方式给出设备节点的相关信息:
下图使用另外一种图标来表示数据库服务器的情形,使用构造型<<database server>>来描述节点,并使用文字给出设备名称和品牌:
下面使用用户自定义图标来表示智能手机的情形:
执行环境是一种软件节点,它为以可执行工件(artifacts)的形式部署在该节点上特定类型的组件提供一个可执行环境。在UML2.x中,执行环境节点以标准的构造型<<executionEnviroment>>来指定。
但这个构造型的名称有些冗长,UML也未提供其它标准构造型,在实际中可以使用一些非规范的构造型来表示实际的可执行环境,如:
· <<OS>>
· <<workflow engine>>
· <<database system>>
· <<J2EE container>>
· <<web server>>
· <<web browser>>
如下面两个例子:
节点之间的关系也称之为节点间的通信路径,其表示两个部署目标之间的关联关系,节点之间使用这种路径可以交换信号和消息。下图给出了两个设备节点之间的关联关系:
当部署目标为物理设备时,通信路径通常表示两个节点之间的物理连接。下图显示两个节点支架使用千兆以太网作为应用程序服务器和数据库服务器之间的通信路径:
当两个部署目标是执行环境节点时,通信路径通常是一些协议。下图表示了部署在两个设备节点中执行环境节点的关联关系。两个节点通过TCP/IP协议进行通信。同时,这幅图也表示出一个执行环境部署到一个设备节点上的情况:
在UML中,也可以使用文本列表的形式来表示在该节点上部署的工件(artifacts)。下图显示了执行环境.NET Framework 4.7中部署的工件情况:
部署情况也可以使用左上角带一个小分隔仓的矩形框架来表示,在分隔仓中标注dep(deployment的缩写形式)和部署的名称。下图中使用虚线箭头表示工件(artifacts)“Borrow.dll”部署到节点“.NET Framework 4.7”服务器上的,并在虚线箭头上标注<<deploy>>:
1,新建部署图文件
注册/登录ProcessOn后,进入个人文件页,点击【新建】按钮创建一个空白UML文件,如下图所示的操作:
创建空白UML文件
2,往编辑区添加节点
在编辑器左侧UML部署图中,选择“节点”,然后把它拖曳到右侧编辑区中来。在创建的同时,也可以给节点命名。
添加UML部署图节点
3,建立连接
实线表示节点之间的连接。在ProcessOn中可以直接从要连接的一个节点上点击鼠标后按住鼠标左键拖动到第二个节点上,并松开鼠标,这时就会建立了两个节点之间的连接。
建立连接
双击连接线,可以在方框内填写连接的名称以及连接的构造型。或者从编辑器左侧图形组件区拖拽文本元素到连接线的上方。如在“Name”里输入“1000 Base-T”,在“Stereotype”里输入“ethernet”,则会显示如下图所示的情形:
填写连接名称及构造型
下面给大家分享几个ProcessOn社区中优秀部署图模板:
图书馆借阅系统部署图
UML往期内容推荐