热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python开发的程序需要uml图吗_Python设计模式UML部署图(DeploymentDiagram)

简介部署图也称配置图,用来显示系统中硬件和软件的物理架构。从中可以了解到软件和硬件组件之间的物理拓扑、连接关系以及处理节点的分布情况。部署图建模步骤-找出需要进行部署

简介

部署图也称配置图,用来显示系统中硬件和软件的物理架构。从中可以了解到软件和硬件组件之间的物理拓扑、连接关系以及处理节点的分布情况。

部署图建模步骤

- 找出需要进行部署的各类节点,如网络硬件设备、服务器硬件设备、及部署在硬件设备上的软件系统等

- 确定各类节点之间的连接关系及通信方式

- 从性能、可扩展性、可维护性、可移植性角度确定各类节点的数目和部署方式

- 绘制部署图,将artifact分配给各个节点

部署图主要元素

部署图中的主要元素有节点、物件和连接。其中节点根据其状态不同又有节点实例、节点容器等区别于节点的拓扑方式。

节点(Node):硬件设备或运行在硬件设备上的软件系统。

- UML表示

- 节点实例:节点的实例形式。格式为instance name: Node,与类实例格式相似,冒号前面可以有实例名称也可以没有实例名称

- 节点类型:根据节点是否能够进行

- 处理器:本身具有计算、执行等软件运行处理能力的节点

- 设备:本身不具有软件运行处理能力的节点

- 节点容器(Node as Container):一个节点可以包括其他的物件或节点,比如Artifact类型的库文件、可执行文件等。

物件(Artifact):UML部署图中的物件时软件开发过程中的产物,包括需求文档、源代码、库文件、可执行程序、库文件、用户手册等。

UML标识为 artifact &#43; 图标或 <> &#43; Name

连接(Association)&#xff1a;节点或物件之间的连线。见部署图主要关系部分

部署图主要关系

部署图中节点或物件之间存在依赖或关联关系。

依赖&#xff1a;节点的物件之间存在相互调用的弱关系

关联&#xff1a;节点间的通信方式。跟具体的协议有关&#xff0c;比如TCP/IP, ftp, http, soap, web service等

部署图示例

以订单-库存系统为例

部署图与组件图的区别

- 组件图侧重系统组件在软件层面的定义、结构及调用关系&#xff1b;部署图侧重系统组件在硬件层面的组织结构

- 组件图侧重描述哪个组件位于哪个模块或包以及各个组件的版本信息&#xff1b;部署图侧重描述哪个组件部署在哪个硬件设备上以及硬件设备之间的交互关系

- 组件图中的组件侧重源文件的模块化打包&#xff1b;部署图中的节点侧重组件的物理部署

- 组件图中的组件和部署图中的Artifact相对照

部署图与组件图的联系

- 组件图和部署图都是对系统实现的UML描述&#xff0c;联系起来对比使用&#xff0c;更易加深对整个系统架构的理解&#xff0c;一般来说大型项目两类图都需要

- 组件图和部署图包含相同的构成元素&#xff1a;组件、接口、组件间关系、组件通过提供接口向外部提供的服务、组件通过需求接口向外部请求的服务

- 组件图和部署图都包含关联、依赖关系

- 组件图和部署图都可以被嵌套、都可以参与外部和内部接口间的交互通信

部署图注意事项

- 一般部署图的绘画分为四阶段&#xff1a;

- 第一阶段确定需要进行部署的各类节点&#xff0c;如网络硬件设备、服务器硬件设备、及部署在硬件设备上的软件系统等

- 第二阶段侧重确定节点信息、节点关系、及连接方式

- 第三阶段把物件分配到节点

- 第四阶段根据性能、可靠性、可维护性、可移植性等确定各类节点的数目及拓扑方式

- 对于部署图来说&#xff0c;最有价值的就是节点上的物件信息

- 在UML1.x部署图规范中&#xff0c;组件图中的组件可以直接部署到节点中&#xff1b;在UML2.x规范中&#xff0c;组件图中的组件不能直接部署到节点&#xff0c;需要通过Artifact

- 部署图中摆放元素时尽量避免线的交叉



推荐阅读
  • Web网络基础
    目录儿1使用HTTP协议访问Web2HTTP的诞生2.1因特网的起源2.2互联网、因特网与万维网2.3万维网与HTTP3网络基础TCPIP3.1TCPIP协议族3.2TCPIP的分 ... [详细]
  • PHP 5.4.8 编译安装指南
    本文详细介绍了如何在Linux环境下编译安装PHP 5.4.8,并配置为FastCGI模式运行。包括所需依赖包的安装、源代码下载、编译配置及启动服务等步骤。 ... [详细]
  • Nagios可视化插件开发指南 —— 配置详解
    本文详细介绍了Nagios监控系统的配置过程,包括数据库的选择与安装、Nagios插件的安装及配置文件的解析。同时,针对常见的配置错误提供了具体的解决方法。 ... [详细]
  • 深入解析Nacos服务自动注册机制
    本文将探讨Nacos服务自动注册的具体实现方法,特别是如何通过Spring事件机制完成服务注册。通过对Nacos源码的详细分析,帮助读者理解其背后的原理。 ... [详细]
  • SpringBoot底层注解用法及原理
    2.1、组件添加1、Configuration基本使用Full模式与Lite模式示例最佳实战配置类组件之间无依赖关系用Lite模式加速容器启动过程,减少判断配置类组 ... [详细]
  • 深入解析 Android 中的 ActivityGroup 实现
    本文详细探讨了如何在 Android 应用中使用 ActivityGroup 来实现类似微博客户端主界面的效果,并分析了 TabActivity 的局限性,推荐使用更为灵活的 ActivityGroup 方案。 ... [详细]
  • 深入理解SAP Fiori及其核心概念
    本文详细介绍了SAP Fiori的基本概念、发展历程、核心特性、应用类型、运行环境以及开发工具等,旨在帮助读者全面了解SAP Fiori的技术框架和应用场景。 ... [详细]
  • Apollo入门指南
    Apollo是一个分布式配置中心,由服务端和客户端组成,支持配置的集中管理和动态更新。 ... [详细]
  • J2EE平台集成了多种服务、API和协议,旨在支持基于Web的多层应用开发。本文将详细介绍J2EE平台中的13项关键技术规范,涵盖从数据库连接到事务处理等多个方面。 ... [详细]
  • 本文详细介绍了利用JavaScript实现的五种不同的网页弹出窗口技术,包括全屏窗口、全屏模式窗口、带收藏链接工具栏的窗口、网页对话框及HTA窗口。 ... [详细]
  • Kubernetes 实践指南:初次体验
    本文介绍了如何通过官方提供的简易示例,快速上手 Kubernetes (K8S),并深入理解其核心概念和操作流程。 ... [详细]
  • 本文通过对OkHttp源码的详细解读,旨在帮助读者理解其核心执行流程,特别是同步与异步请求的处理方式。文中不仅涵盖了基本的使用示例,还深入探讨了OkHttp的核心功能——拦截器链的工作原理。 ... [详细]
  • 微服务架构详解及其入门指南
    本文详细介绍了微服务的基本概念、发展历程、与传统架构的区别及优势,并探讨了适合采用微服务架构的场景。此外,文章还深入分析了几个主流的微服务开发框架,特别是Spring Cloud的组成和特点。 ... [详细]
  • 使用URLHttpConnection获取并展示图片至ImageView的方法
    本文介绍如何通过URLHttpConnection方式从网络加载图片,并将其显示在Android应用的ImageView组件上。包括布局文件和Java代码的具体实现。 ... [详细]
  • JobScheduler5.0源码分析
    0.JobScheduler执行代码mJobScheduler(JobScheduler)getSystemService(Context.JOB_SCHEDULER_SERVICE); ... [详细]
author-avatar
手机用户2602883245
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有