UML: 部署图
说部署图之前,先看看某24小时便利店管理系统的网络拓扑结构图:

这个图描述了本系统的整体物理结构,从该图我们可以得到以下信息:
1.该便利店集团有总部和多个门店,总部管理财务、仓库、采购等事宜。
2.二级配送可能是该集团的一个子单位,也可能是第三方公司,其作用是及时配送货物到门店。
3.每个门店都有终端电脑,这些终端电脑通过互联网与总部的服务器、二级配送的服务器有联系。
4.财务、仓管、采购子系统在总部的局域网内的。
5.二级配送的客户端直接与二级配送的Server相连。
第1、2点是业务信息,第3、4、5点是技术信息。
分布式系统的整体规划是很重要的,要做好整体的系统规划,需要具备以下的知识:
1.掌握系统的需求。
2.掌握相关的开发技术。
3.熟悉网络知识、IT基础架构知识。
4.熟悉相关的硬件知识。
部署图的主要目的是在物理的层次上做整体的系统规划,上述的网络拓扑结构图,用部署图表示如下:

注意:标注及黄色底色的文字不是部署图的一部分,仅是用来说明而已。
部署图的基本要点如下:
1.实际环境中的一台电脑、服务器或者硬件设备,在部署图中可用节点(Node)来了表示,也就是图中的一个一个立体矩形框框。
2.每个节点有个名称,如图中的财务的PC、总部的Server等。
3.可以用标记(Tags)来详细说明每个节点的具体配置情况,如图中的总部的Sever,Number=1表示服务器数量只有一台,OS=Windows Server 2003则说明服务器采用Windows Server 2003为操作系统。
4.节点与节点之间,如果有物理联系,则直接拉线条,在线条上面写上连接的方式。如总部的Server与门店的PC是通过Internet来联系的,总部的Server与财务的PC是通过局域网来联系的。
部署图的语法不复杂,但要画好很不容易,实际工作中,我们往往会画出这样的部署图:

这样的放之四海而皆准的n层架构部署图,对实际项目工作没有任何实质指导意义。画出这样的“无用”部署图,往往是因为没有具备系统整体规划的相应知识。
另外要说明的是,部署图和组件图结合,能比较完整的体现出系统的架构设计。
UML: 部署图的更多相关文章
- Python设计模式 - UML - 部署图(Deployment Diagram)
简介 部署图也称配置图,用来显示系统中硬件和软件的物理架构.从中可以了解到软件和硬件组件之间的物理拓扑.连接关系以及处理节点的分布情况. 部署图建模步骤 - 找出需要进行部署的各类节点,如网络硬件设备 ...
- UML部署图
部署图与组件图密切相关,部署图是用来描述软件组件部署的硬件组件:而组件图是用来描述组件和显示了它们是如何在硬件中部署. 部署图通常用来帮助理解分布式系统,一个系统模型只有一个部署图. 部署图用于可视化 ...
- UML部署图(转载)
概述: 部署图用于可视化的软件组件部署的系统中的物理组件的拓扑结构. 因此,部署图是用来描述一个系统的静态部署视图.部署图由节点和它们之间的关系. 目的: 部署名称本身描述的原理图的目的.部署图用于描 ...
- UML部署图和图九组件图
前言 UML大部分描写叙述了逻辑和设计方面的信息.实现图用来描写叙述实现方面的信息.实现图包含部署图和构件图. 构件图 1. 概念 构件图从软件架构的角度来描写叙述一个系统的 ...
- UML——部署图
一.What 概念: 1.部署图:用来展示所开发系统的硬件配置和组成.软件布局的一个网络拓扑结构图. 2.组成元素:节点.连接.(补充:处理器.设备.节点属性和操作) 2.1节点(Node):是一个物 ...
- UML部署图介绍
https://www.w3cschool.cn/uml_tutorial/uml_tutorial-mi5w28ur.html
- UML基础与Rose建模实训教程
目 录 第1章 初识UML. 1 1.1 初识UML用例图... 1 1.2 初识UML类图... 3 第2章 Rational Rose工具... 6 2.1 安装与配置Rational Ro ...
- UML(统一建模语言)
需求分析阶段 用例图 定义:用例图并不是用来描述用例的.用例图的主要作用是:直观地描述系统对外提供的功能. 用例图的三个要素:角色.系统.用例 用例图的关系: 角色和用例的关系:有关和无关 用例和用例 ...
- UML架构(转载)
任何真正的世界系统是由不同的用户使用.用户可以是开发人员,测试人员,商务人士,分析师和等等.所以在设计一个系统的体系结构是用不同的角度心态.最重要的部分是从不同的观看者的角度来看,以可视化的系统.我们 ...
随机推荐
- Java 特殊性领会
1. 字符串比较绝对不能用 == 而必须是 xx.equals() 2. 多有对象new 后都是以引用的方式存在着 3. 数组list, map 类型都不能边用for 循环边删除,迭代器可以 eg: ...
- Cadstar格式导入功能
Cadstar格式导入功能 Skip to end of metadata Attachments:4 Added by Wenlong Hua, last edited by Wenlong ...
- centos的vi常用用法
centos的vi常用用法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- OpenSSL-for-IOS
http://download.csdn.net/download/kokjuis/9723109
- Tinyxml的简单应用
参考文章: 1-> http://www.cnblogs.com/phinecos/archive/2008/03/11/1100912.html 2-> http://blog.csdn ...
- linux下安装memcache以及开启memcache扩展
memcache 的工作就是在专门的机器的内存里维护一张巨大的hash表,来存储经常被读写的一些数组与文件,从而极大的提高网站的运行效率,减轻后端数据库的读写压力.在安装memcached之前需要安装 ...
- Xcode 之自己编译静态库
今天介绍下,如何利用Xcode,新建一个静态库,以及如何编译成i386.armv7.armv7s 等平台架构. 开发环境:MAC OS X 10.9.4 + Xcode 5.0.2 背景知识:库分两种 ...
- ArcGIS Engine开发之旅03--ArcGIS Engine中的控件
原文:ArcGIS Engine开发之旅03--ArcGIS Engine中的控件 制图控件,如MapControl.PageLayoutControl,其中MapControl控件主要用于地理数据的 ...
- LINQ to SQL系列四 使用inner join,outer join
先看一个最简单的inner join,在读取Student表时inner join Class表取的对应的Class信息: static void Main(string[] args) { usin ...
- (leetcode)Reverse Linked List 脑子已经僵住
Reverse a singly linked list. 参考http://www.2cto.com/kf/201110/106607.html 方法1: 讲每个节点的指针指向前面就可以. /** ...