【UML用户指南】-33-对体系结构建模-系统和模型

news2024/9/24 15:18:30

目录

1、系统和子系统

2、模型和视图

3、跟踪

4、常用建模技术

4.1、对系统的体系结构建模

4.2、对系统的系统建模


 

模型是对现实世界的简化——即对系统的抽象,建立模型的目的是为了更好地理解系统。

1、系统和子系统

一个系统可能被分解成一组子系统,它是为实现某一目标而组织起来的元素的集合,并且它是由一组可能来自不同视角的模型来描述的。

 

8f4fe6ad8fc041b4a2ad5d22a099324b.png

上图所示,UML为系统和子系统提供了一个图形表示。这种表示法允许可视化地将系统分解为较小的子系统。在图形上,系统和子系统都被画成一个衍型化的构件的图标。模型和视图有专门的图形表示(而不是把它们画成衍型化的包)

在图形上,系统和子系统都画成一个衍型化的构件的图标。

系统和子系统之间的主要关系是组合。一个系统(整体)可以包含0个或多个子系统(部分)。子系统之间也可以建立泛化关系。利用泛化关系,可以对子系统族建模:其中的一些代表一般种类的系统,而另一些代表对这些系统的特定剪裁。这些子系统之间有各种各样的连接。

2、模型和视图

模型 (model)是对现实世界的简化,是对系统的抽象,建立模型的目的是为了更好地理解系统。

视图 (view)是模型的投影,它是从某个角度看模型或突出模型中的某一侧面,而忽略与这一侧面无关的实体。

模型拥有包

3、跟踪

用跟踪关系对存在于不同模型中的元素之间的概念关系建模

跟踪关系不能用来表达同一模型中元素之间的关系。

跟踪关系可被表示为衍型化的依赖关系。

跟踪关系:使用<<trace>> 衍型

分为:从需求跟踪到实现(以及二者之间的所有制品)和从版本跟踪到版本。

41f945686c1b4fca924af091cfcfa418.png

4、常用建模技术

4.1、对系统的体系结构建模

识别用来表示体系结构的视图。在多数情况下,这要包括用况视图、设计视图、交互视图、实现视图和部署视图

2e2b0908a4994c6bafa76ed85ae6128d.png

 

4.2、对系统的系统建模

某一抽象级别上的系统看起来像更高抽象级别上的一个子系统。同样,一个抽象级别上的子系统对于负责开发这个子系统的小组而言也可以看作是一个完整的系统。

所有的复杂系统都表现出这种层次性。当转向越来越复杂的系统时,将会发现有必要把它分解为子系统,各个子系统在一定程度上可以独立地开发并以迭代和增量的方式成长为整个系统。对子系统的开发看起来就像是对系统的开发。

对系统和子系统建模,要遵循如下策略。

识别系统中可以在一定程度上独立开发、发布和部署的主要功能部分。技术、政治、遗产系统及法律方面的因素往往会影响如何划分各子系统的边界。

对每个子系统,像对待整个系统那样,描述其语境;一个子系统周围的参与者也包括与它邻接的子系统,所以对每个子系统都要进行设计以便协作。

对于每个子系统,像对待整个系统一样对其体系结构建模。
 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1915151.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL超详细学习教程,2023年硬核学习路线

文章目录 前言1. 数据库的相关概念1.1 数据1.2 数据库1.3 数据库管理系统1.4 数据库系统1.5 SQL 2. MySQL数据库2.1 MySQL安装2.2 MySQL配置2.2.1 添加环境变量2.2.2 新建配置文件2.2.3 初始化MySQL2.2.4 注册MySQL服务2.2.5 启动MySQL服务 2.3 MySQL登录和退出2.4 MySQL卸载2.…

推荐3款电脑必备专业软件,错过拍大腿

SolveigMM Video Splitter SolveigMM Video Splitter是一款功能强大的视频编辑工具&#xff0c;主要用于视频的无损剪切和合并。该软件支持多种常见的视频格式&#xff0c;如AVI、WMV、ASF、MP3、WMA等。此外&#xff0c;它还支持AVCHD、MPEG-2、WebM、FLV等格式&#xff0c;并…

论文 | REACT: SYNERGIZING REASONING AND ACTING INLANGUAGE MODELS

本文首先认为&#xff0c;到目前为止&#xff0c;LLM 在语言理解方面令人印象深刻&#xff0c;它们已被用来生成 CoT&#xff08;思想链&#xff09;来解决一些问题&#xff0c;它们也被用于执行和计划生成。 尽管这两者是分开研究的&#xff0c;但本文旨在以交错的方式将推理…

JDBC编程的学习——MYsql版本

目录 前言 什么是JDBC ??? 前置准备 使用JDBC的五个关键步骤 1.建立与数据库的连接 2.创建具体的sql语句和Statement 3.执行SQL语句 4.处理结果集 5.释放资源 完整流程展示 前言 笔者在先前的博客就提过会写关于JDBC的内容 [Mysql] 的基础知识和sql 语句.教你速成…

python怎么调用cmd命令

关于python调用cmd命令&#xff1a; 1、python的OS模块 OS模块调用CMD命令有两种方式&#xff1a;os.popen()、os.system()都是用当前进程来调用。 OS.system是无法获取返回值的。当运行结束后接着往下面执行程序。用法如&#xff1a;OS.system("ipconfig"). OS.…

Invoice OCR

Invoice OCR 发票识别 其他类型ORC&#xff1a; DIPS_YTPC OCR-CSDN博客

【AI大模型】检索增强生成(RAG)模型在企业中的应用

彩蛋 ChatGPT4相比于ChatGPT3.5,有着诸多不可比拟的优势&#xff0c;比如图片生成、图片内容解析、GPTS开发、更智能的语言理解能力等&#xff0c;但是在国内使用GPT4存在网络及充值障碍等问题&#xff0c;如果您对ChatGPT4.0感兴趣&#xff0c;可以私信博主为您解决账号和环境…

基于Make的c工程No compilation commands found报错

由于安装gcc时只安装了build-essential&#xff0c;没有将其添加到环境变量中&#xff0c;因此打开Make工程时&#xff0c;CLion会产生如下错误&#xff1a; 要解决这个问题&#xff0c;一个方法是将GCC添加到环境变量中&#xff0c;但是这个方法需要修改至少两个配置文件&…

校园外卖系统带万字文档在线外卖管理系统java项目java课程设计java毕业设计

文章目录 校园外卖系统一、项目演示二、项目介绍三、万字项目文档四、部分功能截图五、部分代码展示六、底部获取项目源码带万字文档&#xff08;9.9&#xffe5;带走&#xff09; 校园外卖系统 一、项目演示 校园外卖服务系统 二、项目介绍 语言&#xff1a;java 数据库&…

MySQL实现数据备份的方式可以基于哪几种?

MySQL 数据库实现数据备份的方式主要有以下几种&#xff1a; 物理备份 (Physical Backup)&#xff1a; 冷备份 (Cold Backup)&#xff1a;在数据库关闭的情况下&#xff0c;直接复制数据库文件&#xff08;数据文件、日志文件等&#xff09;。这种方式操作简单&#xff0c;但是…

pd虚拟机去虚拟化是什么意思?pd虚拟机去虚拟化教程 PD虚拟机优化设置

Parallels Desktop for Mac&#xff08;PD虚拟机&#xff09;去虚拟化是指在虚拟机&#xff08;Virtual Machine&#xff0c;简称 VM&#xff09;中禁用或减少虚拟化层的影响&#xff0c;使其表现更接近于物理机。这种操作通常用于提高虚拟机的性能或解决某些软件兼容性问题。具…

【BUG】Python3|COPY 指令合并 ts 文件为 mp4 文件时长不对(含三种可执行源代码和解决方法)

文章目录 前言源代码FFmpeg的安装1 下载2 安装 前言 参考&#xff1a; python 合并 ts 视频&#xff08;三种方法&#xff09;使用 FFmpeg 合并多个 ts 视频文件转为 mp4 格式 Windows 平台下&#xff0c;用 Python 合并 ts 文件为 mp4 文件常见的有三种方法&#xff1a; 调用…

系统数据加密传输的实现

文章目录 1、背景2、需求3、实现思路3.1 密码加密3.2 密码解密3.3 nacos密码加密 4、相关工具类4.1 非对称加密RSA4.2 对称加密AES4.3 Nacos加解密的实现&#xff1a;Jasypt 5、历史数据兼容处理 1、背景 用户在浏览器发送请求数据到后台系统&#xff0c;期间数据在网络传输&a…

osgverse浏览器端编译

目录 1 WSL安装(Windows subsystem for Linux)2 emsdk准备3 SetUp.sh安装(osgverse源码目录下)4 显示与问题 内容 WSL安装(Windows subsystem for Linux) 安装wsl&#xff1a;wsl --install 将版本设置为wsl1(因为版本2比版本1慢很多)&#xff1a;wsl --set-version ubuntu 1…

防火墙基础实验配置

一&#xff0c;实验拓扑 二&#xff0c;实验需求&#xff1a; 1.DMZ区内的服务器&#xff0c;办公区仅能在办公时间内&#xff08;9&#xff1a;00 - 18&#xff1a;00&#xff09;可以访问&#xff0c;生产区的设备全天可以访问 2.生产区不允许访问互联网&#xff0c;办公区…

迂回战术:“另类“全新安装 macOS 15 Sequoia beta2 的极简方法

概述 随着 WWDC 24 的胜利闭幕&#xff0c;Apple 平台上各种 beta 版的系统也都“跃跃欲出”&#xff0c;在 mac 上自然也不例外。 本次全新的 macOS 15 Sequoia&#xff08;红杉&#xff09;包含了诸多重磅升级&#xff0c;作为秃头开发者的我们怎么能不先睹为快呢&#xff1…

什么是边缘计算?创造一个更快、更智慧、更互联的世界

前言 如今&#xff0c;数十亿物联网传感器广泛部署在零售商店、城市街道、仓库和医院等各种场所&#xff0c;正在生成大量数据。从这些数据中更快地获得洞察&#xff0c;意味着可以改善服务、简化运营&#xff0c;甚至挽救生命。但要做到这一点&#xff0c;企业需要实时做出决策…

网络协议 — Keepalived 高可用方案

目录 文章目录 目录Keepalived 是实现了 VRRP 协议的软件Keepalived 的软件架构VRRP StackCheckersKeepalived 的配置Global configurationvrrp_scriptVRRP Configurationvrrp synchroization groupvrrp instancevirtual ip addressesvirtual routesLVS Configurationvirtual_s…

Day06-角色管理-员工管理

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1.编辑角色-进入行内编辑2.角色管理-行内编辑-数据缓存3.角色管理-编辑角色-确定取消4.角色管理-删除角色员工管理-页面结构6.员工管理-左侧树7.员工管理-选中首个节…

昇思学习打卡-14-ResNet50迁移学习

文章目录 数据集可视化预训练模型的使用部分实现 推理 迁移学习&#xff1a;在一个很大的数据集上训练得到一个预训练模型&#xff0c;然后使用该模型来初始化网络的权重参数或作为固定特征提取器应用于特定的任务中。本章学习使用的是前面学过的ResNet50&#xff0c;使用迁移学…