《UML面向对象建模基础》部署图知识图谱Agenda•如何阅读部署图•如何绘制部署图•部署图应用说明•本章小结Agenda•如何阅读部署图•如何绘制部署图•部署图应用说明•本章小结阅读基本部署图部署图的主要元素•节点:它代表一个运行时的计算资源,例如一台计算机、一个工作站等其它设备•节点的概念和构件有许多相同之处,例如二者有多名称,都可以参与依赖、泛化和关联关系,都可以被嵌套,都可以有实例,都可以参与交互。但它们之间也存在明显的区别:构件是参与系统执行的事物,而节点是执行构件的事物;构件表示逻辑元素的物理打包,而节点表示构件的物理部署•本图中建模了四个节点:B/S客户端、C/S客户端、IIS服务器和数据库服务器部署图的主要元素•连接:节点之间最常见的关系就是关联关系(用一根实线表示)。为了更好地表示两个节点之间的关系,我们可以通过“约束”来对连接进行描述。源节点目标节点约束含义B/S客户端IIS服务器{HTTP+Network}网络连接,使用HTTP协议C/S客户端IIS服务器{HTTP+SOAP+Network}网连接,通过WebService访问服务IIS服务器数据库服务器{ADO.NET}.NET提供的数据库访问解决方案部署图的补充元素•处理器(《process》):具有处理能力的节点,即可以执行构件•设备(《device》):没有处理能力的节点,至少是不关心其处理能力的节点。例如打印机、IC卡读写器,如果我们的系统不考虑它们内部的芯片,就可建模为设备•节点属性和操作:可以为一个节点提供处理器速度、内存容量、网卡数量等属性,可以为其提供启动、关机等操作部署图的补充元素•自定义构造型图标Agenda•如何阅读部署图•如何绘制部署图•部署图应用说明•本章小结确定所需的节点和节点间的连接关系•IC卡读卡器:提供给员工刷卡用,它将收集刷卡的时间信息,传给应用系统,并存入数据库中•应用服务器:用来负责从IC卡读卡器中收集信息,并对管理人员提供员工设置、考勤查询等功能•数据库服务器:用来存储考勤数据,由于该系统比较小,因此在物理上可以与应用服务器合并•客户端软件:提供给管理人员使用,连接应用服务器,完成相应操作根据实现描述节点•客户端:需使用Windows操作系统,安装客户端软件(假设名为KaoQing.exe)•服务器:包含一个用Delphi开发的服务端软件(设为KqServer.exe),它需要与Access数据库交互(设为KaoQing.mdb),并且需要通过IC卡读卡器的驱动程序(假设名为cardReader.dll)来实现与IC卡读卡器通信•IC卡读写器:对于本系统而言,它是不执行构件的设备,不过为了方便员工,安装了3个。Agenda•如何阅读部署图•如何绘制部署图•部署图应用说明•本章小结部署图应用说明•部署图是一种分两阶段演化的,最初的部署图是在设计时,作为确定最终硬件构架过程的一部分而创建的,然后逐步地对它进行精化,从而得到一个或多个实例形式的部署图•设计阶段:焦点聚焦于节点或节点实例,以及它们之间的连接•实现阶段:焦点聚集于将物理构件分配给节点嵌入式系统建模•识别对于你的系统而言唯一的设备和节点;重点在于对处理器和设备之间的关系建模;可以考虑对处事器和设备采用更直观的图标客户机/服务器和分布式系统建模•当你开发的软件要运行在多台计算机上时,就必须决定如何将软件构件以合理的方式部署在各个节点。其中客户机/服务器结构就是一种典型的分布式系统模型,它包含三层B/S结构、两层C/S结构•除了客户机/服务器模型之外,对于大型分布式系统可能还包括负载均衡、集群等部署结构,部署图的引入都能够良好地对其进行表述Agenda•如何阅读部署图•如何绘制部署图•部署图应用说明•本章小结本章小结•首先结合一个“客户机/服务器系统”的例子说明了部署图中节点、连接以及节点中包含的元素的概念,并总结了部署图的阅读技巧•分别举例说明了部署图中处理器与设备、属性与操作以及自定义构造型图标等补充元素•结合一个“IC卡考勤系统”的例子,说明了如何分两步绘制一张体现系统物理结构的部署图•引申出了部署图的应用领域,并举例说明了除客户机/服务器系统之外的嵌入式系统建模方法