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架构(转载)
任何真正的世界系统是由不同的用户使用.用户可以是开发人员,测试人员,商务人士,分析师和等等.所以在设计一个系统的体系结构是用不同的角度心态.最重要的部分是从不同的观看者的角度来看,以可视化的系统.我们 ...
随机推荐
- 将所有程序设置XML集中到一个单独XML配置文件的方法:使用appSettings元素的configSource元素
在.NET程序中,程序的配置文件默认都会放在程序根目录下的web.config(网站程序)或App.config(控制台等程序),在该配置文件中可以定义若干程序配置信息. 在此以网站程序为例,首先将下 ...
- cordova插件iOS平台实战开发注意点
cordova插件是其设计理念的精髓部分,创建并使用自定义插件也是一件比较容易的事.但在这个过程中也容易进入一些误区或者有一些错误的理解,下面从笔者实际开发中遇到的问题出发,对其中的一些注意点和重要概 ...
- Qt 之 去除窗口部件被选中后的焦点虚线框(设置Qt::NoFocus即可)
http://blog.csdn.net/goforwardtostep/article/details/53420529
- DOCTYPE、指定语言、字符集
<!DOCTYPE html> 在HTML的最开始部分声明DOCTYPE文档类型,可以让浏览器或其他用户代理知道你要使用的Html语言类型:无论你打算使用何种类型的HTML语言,DOCTY ...
- C++内嵌汇编代码,简单文件加密
#include <iostream> #include <fstream> using namespace std; int main(int argc, char* arg ...
- javascript正则表达式(一)
元字符 ( [ { \ ^ $ | ) ? * + . 预定义的特殊字符 字符 正则 描述 \t /\t/ 制表符 \n /\n/ 制表符 \r /\r/ 回车符 \f /\f/ 换页符 \a /\a ...
- 深入理解Redis主键失效原理及实现机制
http://blog.jobbole.com/71095/ 对于缓存失效,不同的缓存有不同的处理机制,可以说是大同中有小异,作者通过对Redis 文档与相关源码的仔细研读,为大家详细剖析了 Redi ...
- iOS系统自带正则表达式简单运用
//组装一个字符串,把里面的网址解析出来 NSString *urlString = @"sfdshttp://www.baidu.com"; NSError *error; // ...
- iOS:app直播---原理篇
[如何快速的开发一个完整的iOS直播app](原理篇) 转载自简书@袁峥Seemygo:http://www.jianshu.com/p/7b2f1df74420 一.个人见解(直播难与易) 直播 ...
- PHP如何解决网站大流量与高并发的问题
首先,确认服务器硬件是否足够支持当前的流量. 普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么优化都不可能彻 ...