21、现实世界基本概念及其向UML的映射

现实世界基本概念及其向UML的映射

1. 数据流与控制流

1.1 数据流

数据流是指数据、信息、对象在数据存储、处理过程和终结点之间的流动。在对象技术中,数据流的概念被对象流所取代。在UML中,没有“数据流”元类,但在“基本活动”包中定义了“对象流”元类,并在“完整活动”包中进行了细化。

1.2 控制流

控制流的概念存在于一些面向实时系统开发的方法中,例如SART(结构化实时分析)。在UML的“基本活动”包中定义了“控制流”元类,它表示“在前一个活动节点完成后启动下一个活动节点的边”。

2. 过程建模示例及向UML图的转换

2.1 订单处理过程建模示例

为了说明过程建模中的概念,如过程、数据存储、终结点(外部实体)、数据流和控制流,我们选择经典的“订单处理”示例。在这个示例中,使用圆形表示过程,这种图过去通常被称为:
1. 气泡图
2. 气泡图表
3. 数据流图(DFD)
4. 过程模型
5. 工作流图
6. 功能模型

有些方法使用圆角矩形代替圆形,但只要概念相同,这些图都属于同一类型。终结点“客户”重复出现两次,这是为了避免绘制复杂的连接。终结点被视为订单处理系统的外部实体,其内容不能被更改。虚线箭头表示控制流,实线箭头表示数据流。数据存储在本应用中称为“存储库”,用两条水平条表示,它可以代表对象存储库(如仓库)或数据库(如客户信息存储库、订单存储库、发票存储库和库存数据库)。

2.2 从DFD转换为活动图的难点

从数据流图(DFD)转换为活动图并非直接可行,存

相关推荐

21、UML 在系统工程与需求建模中的应用

本文深入探讨了统一建模语言(UML)在系统工程与需求建模中的关键作用。内容涵盖UML信息模型的构建、Profile定义与实现模型的应用、需求工程的基础流程及多种需求捕获方法。重点解析了用例图在需求分析中的核心地位,包括参与者与用例的关系、用例的细化与优化,并结合数据分析与决策支持,提升需求管理的科学性。通过一个在线购物系统的综合案例,展示了UML在需求分析、系统设计、实现测试等阶段的全流程应用。最后提出重视需求工程、合理使用UML工具、加强团队协作和持续学习的建议,旨在帮助项目团队更高效地运用UML技术,确

u0v1w2x3的博客 42

21、使用UML状态机和Ada 2005实现反应式系统

本文探讨了使用UML状态机和Ada 2005实现反应式系统的方法,提出了一套基于模型驱动工程的开源FSM生成框架,支持从SCXML和XMI格式的UML模型自动生成高质量Ada代码。文章分析了不同设计模式在实现状态机时的优劣,指出状态模式最适合处理UML状态机中的事件层次与动态行为,并通过电梯系统的实例展示了建模与代码生成过程。最终目标是提高反应式系统开发的正确性、效率与可维护性。

p8q9r0的博客 44

17、从嵌入式系统的UML模型生成VHDL源代码

本文介绍了从嵌入式系统的UML模型生成VHDL源代码的方法,重点探讨了基于GenERTiCA工具的映射规则和实现过程。通过将UML元素(如类、属性、方法)映射到VHDL结构(如实体、端口、进程),实现从面向对象的建模语言到硬件描述语言的转换。文章详细阐述了基于脚本的代码生成机制,并通过一个自动阀门系统的案例研究验证了该方法的可行性。结果表明,该方法在简单系统中可以生成100%的必要代码,并具有扩展到复杂系统和多语言生成的潜力。

mqtt6iot的博客 77

Flutter 中使用蓝牙插件报错,说没有权限怎么解决

2、在build.grale里面更改一下版本号,我修改的是targetSdkVersion这个版本号,需要根据你自己的版本进行更改,记得更改之后先flutter clean一下再run。搞了一晚上,没搞出来,第二天用同事手机测试发现他手机可以,我手机还是不行,才发现是Android版本问题,需要修改两处地方。废话不多说,咱先看报错信息。

zzj17637822814的博客 2288

Halcon-AOI外观缺陷检测系列

Halcon-AOI外观缺陷检测系列

Jumy_S的博客 1664

当windows安装git时出现以下错误提示

Windows安装Git时出现多个系统配置设置失败错误(exit code 4294967295),提示包括无法设置textconv、LFS过滤器和SSL等配置项。关键问题在于scalar.exe版本不兼容,系统提示"该版本的scalar.exe与你运行的Windows版本不兼容"。解决方案是检查程序版本是否正确,下载与Windows系统兼容的正确版本重新安装即可。

沧澜的博客 1874

本地如何安装midscene.js运行环境

手把手教你本地安装midscene.js运行环境

实践助梦想成长 2607

FPGA串口通信----uart(一)

通过PLL锁相环IP的使用,可以输入时钟进行分频,倍频,也可以产生多路时钟输出信号。外部提供晶振的原因:①Fpga电路大多数需要时序分析②晶振在Fpga内部占空间大,所以放置于外部PCB板上Uart异步传输速率不能很快的原因:考虑到工程实际问题,假如时钟周期大(传输速率慢的话),采取到数据电平变化的边沿时刻的概率会小很多,这样数据也很准确,通常uart适用于2M.

mvpkuku的博客 968

史上最全的Logisim运算器实验教程(基于华中科技大学计算机组成原理实验)

本博客是实现了Logisim的运算器设计,有具体的运算器设计的思路和运算器设计的电路,适合一步一步的按照思路做。

qq_62325622的博客 4万+

C语言编写Picard迭代和牛顿迭代法

为了完成学校计算方法的作业,花了两个多星期将所有实验报告编写出来,看到同桌找代码的辛苦,优快云也没有这类代码,我只是一时兴起,想分享我写的代码与大家共飨,有错误还请多多指正,代码都不难,也是为了让优快云帮我保存下,我辛辛苦苦做出来的,倘若能给别人带来一丝一毫的帮助,我都万分荣幸。 1:什么是Picard迭代 先弄一个满足f(x) = 0的函数将其转化为x= 正在上传… 重新上传 取消 ...

mohenxiang的博客 4699

《手把手教你YOLOv9实战》,改进专栏目录

为了提供友好的操作效果,本专栏将会手把手搭建可视化界面,我将用PyQt5 搭建一个可视化界面,可视化界面能够实现基本的图像加载与检测功能,如支持视频、摄像头,还支持更换不同的 YOLOv9 模型,并适应不同领域(如口罩检测系统、人脸检测系统、工业缺陷检测系统等),界面灵活、功能强大。通过YOLOv9加以改进设计,形成新的算法框架,一起水科研和论文,专栏会一直持续更新中,本专栏适合目标检测、分割、分类。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 2147

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: 35、构建 Azure 无服务器应用:逻辑应用与函数应用实战
下一篇: 4、机器学习模型的风险与攻击
Wind6
博客等级 码龄23年 41粉丝 1395原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值