关键字:UML建模 部署图
二、结点和组件
一个结点,通常描述成一个立体的盒子,表示一个计算设备,一般是一个单独的硬件设备,例如一台电脑,网络路由器,主机,传感器,或个人数字助理(PDA)。 组件,描述为矩形,左侧面还伸出两个较小矩形,这和UML组件图上使用的符号是相同的,它表示软件的中间产物,例如文件、框架、或领域组件。
1.用描述性术语命名结点
??在图1中,你可以看到结点都有名称,例如client、Application Server、Database Server、和Mainframe。 所有的这些术语都需要即刻为组织内的开发人员所认可,因为这些条款都是他们日常使用的。 保持它的简单性。
2.仅仅建模重要的软件组件
虽然图1包含软件组件,但它没有描述每一个软件组件。 例如,客户机上很可能还安装有其他的软件组件,如操作系统和应用软件,但那些组件没有显示出来,因为它们已经离题了。 事实是每个结点也许有几十甚至几百的软件组件配置于其上,你的目标并不是描述所有的软件组件,而是只需要描述那些对系统的列节至关重要的组件。如果你需要探究软件组件间的关系,你应该创建一个UML组件图作为替代,遵循敏捷建模( AM) ( Ambler 2002)的应用"合适的Artifact"的实践。
3.为组件一致地应用一致版型
??在UML部署图上为组件应用和UML组件图中的相同的版型。
4.把可视化的版型应用到结点
??图2使用可视化的版型来描述结点描述结点,例如mobile PC是显示为一个笔记本,而databases则使用传统的数据库的圆筒符号来表示。 为UML部署图上应用可视化版型制定标准是不可能的,一般的经验法则是使用你看得到的适当的剪贴画。
三、依赖和通信关联
通信关联,经常称为连接,被描述为连接结点间的线条。组件间的依赖则被建模成虚线箭头,这和其他UML图上使用的符号是一样的。
1.用版型来注明通信协议
??通信关联支持一个或多个通信协议,每一个都应该使用一个UML版型来描述。 图1中你可以看到HTTP、JDBC、和web services协议,他们就是使用了这个方法。表1提供了一个典型的通信关联的版型列表,你的组织也许会想开发自己的特定标准。
表1.通用的版型为通信关联
版型????????含意
异步????????一个异步连接,也许经由一个消息总线或消息队列。
HTTP????????超文本传输协议,一个网际协议。
JDBC????????Java数据库连接,一套为数据库存取编写的Java API。
ODBC????????开放式数据库连接,一套微软的数据库存取应用编程接口。
RMI???????? 远程方法调用,一个Java的通信协议。
RPC???????? 经由远程过程调用的通信。
同步????????一个同步连接,发送器等待从接收器回来的反应。
web services????经由诸如SOAP和UDDI的Web Services协议的通信。
2.仅仅建模组件间的关键性依赖
??图1中配置在应用服务器上的领域组件间的依赖并没有被建模出来,因为它们和图并没有什么关系(而且它们最好是在UML组件图上建模具体的细节)。 然而,在数据库服务器上的组件间的依赖则被建模出来,因为它有助于展示数据库的访问。领域组件对数据库的方位是间接的,他们需要通过一个持久性框架,这是通用的架构最佳实践( Ambler 2001)。 遵循AM的实践,简单的描述建模。仅仅建模和手头的任务相关的信息。