信息化发展48

news/2025/1/15 21:33:17/

UML

l 、统一建模语言( UML )是一种定义良好、易于表达、功能强大且普遍适用的建模语言, 它融入了软件工程领域的新思想、新方法和新技术, 它的作用域不限于支持OOA 和OOD , 还支持从需求分析开始的软件开发的全过程。
2 、从总体上来看, UML 的结构包括构造块、规则和公共机制三个部分。
3 、UML 中的事物
UML 中的事物也称为建模元素, 包括结构事物、行为事物(也称动作事物)、分组事物和注释事物(也称注解事物)。这些事物是UML 模型中最基本的00 构造块。
4 、UML 中的关系
UML 用关系把事物结合在一起, 主要有四种关系, 分别为:依赖: 依赖是两个事物之间的语义关系, 其中一个事物发生变化会影响另一个事物的语义。
1 )关联: 关联描述一组对象之间连接的结构关系。
2)泛化: 泛化是一般化和特殊化的关系, 描述特殊元素的对象可替换一般元素的对象。
3) 实现: 实现是类之间的语义关系, 其中的一个类指定了由另一个类保证执行的契约。
6 、UML 视图
UML 的5 个系统视图:

  1. 逻辑视图: 逻辑视图也称为设计视图, 它表示了设计模型中在架构方面具有重要意义的部分, 即类、子系统、包和用例实现的子集。
    2) 进程视图: 进程视图是可执行线程和进程作为活动类的建模, 它是逻辑视图的一次执行实例, 描述了并发与同步结构。
    3) 实现视图: 实现视图对组成基于系统的物理代码的又件和构件进行建模。
    部署视图: 部署视图把构件部署到一组物理节点上, 表示软件到硬件的映射和分布结构。
    5) 用例视图: 用例视图是最基本的需求分析模型。

面向对象分析

1 、OOA 模型独立于具体实现, 即不考虑与系统具体实现有关的因素, 这也是OOA和OOD 的区别之所在。OOA 的任务是“ 做什么” , OOD 的任务是“ 怎么做” 。
2 、面向对象分析阶段的核心工作是建立系统的用例模型与分析模型。趴在OOA 方法中, 构建用例模型一般需要经历四个阶段, 分别是识别参与者、合并需求获得用例、细化用例描述和调整用例模型, 其中前三个阶段是必须的。
4 、建立分析模型的过程大致包括定义概念类, 确定类之间的关系, 为类添加职责, 建立交互图等, 其中有学者将前三个步骤统称为类责任-协作者(C l ass-Respons ibili ty-Collaborator ,CRC)建模。类之间的主要关系有关联、依赖、泛化、聚合、组合和实现等。


http://www.ppmy.cn/news/1115956.html

相关文章

windows下flutter的环境安装

Flutter是谷歌出品的移动应用SDK,性能卓越、体验精美、跨平台、HotReload等等这些特点。 Dart是谷歌推出的编程语言。支持即时编译JIT(Just In Time)、HotReload(热加载)和事前编译AOT(Ahead of Time&…

杭州企业型通配符SSL数字证书

通配符SSL数字证书是众多数字证书产品中比较特殊的一款产品,在互联网安全领域,SSL数字证书是保障网站安全性的一种重要手段。而通配符SSL数字证书,更是其中的一种特殊类型,它允许用户对多个域名进行保护,只需一张证书即…

vue3中el-tree的使用及后端传参

实现效果&#xff1a; 如上图所示&#xff0c;实现el-tree的基本使用&#xff0c;回显及联调。 1.点击弹框弹出样式&#xff0c;node-key是id,与后端字段名对应 <Dialog v-model"menuVisible" title"菜单分配"><el-tree:data"treeData&qu…

【推荐】赴日IT课程 做赴日IT我该学什么?

许多想要做赴日IT的朋友问我说&#xff0c;我都该准备什么&#xff0c;或者我该学些什么才能达到可以做赴日程序员的水平呢&#xff1f;今天我就来跟大家聊一下这个问题。要说做准备&#xff0c;你需要有全日制大专及以上的学历才能获得赴日的资格&#xff0c;如果没有我们就先…

uni-app实现点击复制按钮 复制内容

注意:uni.setClipboardData({})里面的data参数必须是字符串类型这个是大坑 第一种 <view>{{orderId}}</view> //复制的内容 <button click"copy(orderId)">复制</button>copy(value) {uni.setClipboardData({data: value , // 这里是个坑接…

Pytorch实现LSTM预测模型并使用C++相应的ONNX模型推理

Pytorch实现RNN模型 代码 import torch import torch.nn as nnclass LSTM(nn.Module):def __init__(self, input_size, output_size, out_channels, num_layers, device):super(LSTM, self).__init__()self.device deviceself.input_size input_sizeself.hidden_size inpu…

element-table 行的拖拽更改顺序(无需下载sortableJs

样例展示&#xff1a;vueelement 通过阅读element文档我们发现element并不提供拖拽相关的api 本博客通过element提供的行类名 注册函数 实现行与行的拖拽 1.设置el-table 的行样式类名 这里是用的是 function <el-table:data"outputData":row-class-name&qu…

【算法挨揍日记】day06——1004. 最大连续1的个数 III、1658. 将 x 减到 0 的最小操作数

1004. 最大连续1的个数 III 1004. 最大连续1的个数 III 题目描述&#xff1a; 给定一个二进制数组 nums 和一个整数 k&#xff0c;如果可以翻转最多 k 个 0 &#xff0c;则返回 数组中连续 1 的最大个数 。 解题思路&#xff1a; 首先题目要我们求出的最多翻转k个0后&#x…