SysML Internal Block Diagramz中ItemFlow可以convey的type

Question: 在构建Internal Block Diagram(IBD)的时候,发现ItemFlow似乎只能convey特定的Classifier(i.e., DataType, ValueType, Block, and Signal),而不能convey Primitive Type (i.e., Real, Integer, Boolean, and String)。然后就开始了探索之旅。

1. Concepts relationship: Classifier之间的关系

 如下所示的继承关系:

Classifier
   ├── DataType 如自定义的复合数据类型
   │      ├── PrimitiveType
   │      │       ├── Real
   │      │       ├── Integer
   │      │       ├── Boolean
   │      │       └── String
   │      └── (其他自定义的 DataType)
   ├── Class
   ├── Interface
   ├── Signal
   ├── Block (SysML) 表示更复杂的实体或组件
   └── ValueType (SysML) 如定义的物理量(带有单位和量纲的数值类型)

2. ItemFlow的conveyed item

ItemFlow表示两个连接点(分别属于两个模块)之间传递的物理项或信息项。它指定所传递的元素类型必须是Classifier或者其子类,包含DataType, ValueType, Block, Signal。

3. Primitive Type Definition and Application

在SysML和UML中, Primitive Types是一种特殊的DataType,通常用于表示最基础的数据(i.e., Real, Integer, Boolean, and String)。尽管它们是Classifier的子类型(e.g., 继承关系:Classifier-->DataType-->PrimitiveType-->Real),但是SysML明确地限制了Prrimitive Types的使用场景

  1. Primitive Types的意图,这些类型主要用于定义属性(properties)或操作(operations)的数据类型,而不是用于在ItemFlow中传递
  2. ItemFlow的语义要求:SysML设计中倾向于使用明确建模的DataType或ValueType,以便清晰地表达模型中的含义和物理量关系。ItemFlow表示两个连接点(分别属于两个模块)之间传递的物理项或信息项。它指定所传递的元素类型必须是Classifier或者其子类,包含DataType, ValueType, Block, Signal。

因此,在SysML IBD中,ItemFlow不允许直接传递 Primitive Types(如 Real、Integer、Boolean、String),而是需要通过更明确的 DataTypeValueType 来表示这些内容。

4. ItemFlow为什么允许使用Primitive Types

建模的严谨性和可读性

  • 使用Primitive Types作为conveyed内容,缺乏明确的语义和上下文。比如,Real或者Integer本身无法描述它表示什么物理量或者概念。
  • 使用ValueType或自定义的DataType可以为这些数据添加单位,量纲,描述或者约束条件。例如: 
  1.  定义一个ValueType为Length, 单位为米(m),量纲为长度
  2. 定义一个DateType为Position, 包含多个相关的坐标值

和SysML的建模目标一致

  • SysML的核心目标是支持系统工程和物理建模,需要在模型中体现清晰的系统属性和关系
  • 限制使用Primitive Types可以使得建模者更精确地定义数据的语义,而不是仅仅依赖基础数据类型

5. 如何处理Primitive Types的需求?(可以将Primitive Types 包装成自定义的 ValueTypeDataType)

如果确实需要在ItemFlow中传递与Primitive Types类似的内容,可以通过以下方式解决:

  1. 定义对应的ValueType
    # 将Real类型扩展为一个具有单位和量纲的ValueType,如Speed或者Temperature
    ValueType Speed {
         unit: m/s
         dimension: velocity
    }

  2. 定义对应的DataType
    # 定义一个DataType来传递复杂的数据结构,其中包含属性类型为Real, Integer等字段
    DataType Position{
        x: Real
        y: Real
        z: Real
    }

6. 总结

在SysML IBD中, ItemFlow的converyed的属性只能使用Classifier(i.e., DataType, ValueType, Block etc.),而不能直接使用UML的Primitive Types (i.e., Real, Integer, Boolean, String)。这种限制的目的是促进建模的严谨性和可读性。可以该将Primitive Types包装成自定义的ValueType或DataType来传递更清晰的语义信息.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

牛客网刷题 ——C语言初阶——BC112小乐乐求和

1.牛客网刷题 ——C语言初阶 牛客网:BC112小乐乐求和 小乐乐最近接触了求和符号Σ,他想计算的结果。但是小乐乐很笨,请你帮助他解答。 输入描述: 输入一个正整数n (1 ≤ n ≤ 109) 输出描述: 输出一个值,为求和结果。 示例1 输…

计算机操作系统与安全复习笔记

1 绪论 操作系统目标: 方便性; 有效性; 可扩充性; 开放性. 作用: 用户与计算机硬件系统之间的接口; 计算机资源的管理者; 实现了对计算机资源的抽象; 计算机工作流程的组织者. 多道程序设计: 内存中同时存放若干个作业, 使其共享系统资源且同时运行; 单处理机环境下宏观上并行…

数据结构(哈希表(下)方法讲解)

前言: 在前一部分中,我们探讨了哈希表的基本原理、设计思想、优势与挑战,并了解了它在实际项目中的应用场景。哈希表作为一种高效的数据结构,在查找、插入和删除等操作上具有显著优势,但要真正掌握它的使用&#xff0…

OCR实践-Table-Transformer

前言 书接上文 OCR实践—PaddleOCR Table-Transformer 与 PubTables-1M table-transformer,来自微软,基于Detr,在PubTables1M 数据集上进行训练,模型是在提出数据集同时的工作, paper PubTables-1M: Towards comp…

【Maven】Maven打包机制详解

Maven打包的类型? 以下是几种常见的打包形式: 1、jar (Java Archive) 用途:用于包含 Java 类文件和其他资源(如属性文件、配置文件等)的库项目。特点: 可以被其他项目作为依赖引用。适合创建独立的应用程…

设备的分配与回收

目录 1、设备分配应考虑的因素 2、静态分配与动态分配 3、设备分配管理中的数据结构 (1)设备控制表 DCT (2)控制器控制表COCT (3)通道控制表CHCT (4)系统设备表SDT 4、分配过…

清空DNS 缓存

如果遇到修改了host文件,但是IP和域名的映射有问题的情况,可以尝试刷新DNS缓存。 ipconfig/flushdns win建加R建,然后输入cmd,然后回车 然后回车,或者点击确定按钮。 出现如下所示标识清空DNS 缓存成功。

Python使用requests_html库爬取掌阅书籍(附完整源码及使用说明)

教程概述 本教程先是幽络源初步教学分析掌阅书籍的网络结构,最后提供完整的爬取源码与使用说明,并展示结果,切记勿将本教程内容肆意非法使用。 原文链接:Python使用requests_html库爬取掌阅书籍(附完整源码及使用说明…

Java爬虫实战:深度解析VIP商品详情获取技术

在数字化时代,数据的价值不言而喻。对于电商平台而言,掌握VIP商品的详细信息是提升服务质量、优化用户体验的关键。然而,这些信息往往被复杂的网页结构和反爬虫策略所保护。本文将带你深入了解如何使用Java编写爬虫,以安全、高效地…

硬件开发笔记(三十二):TPS54331电源设计(五):原理图BOM表导出、元器件封装核对

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/144753092 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…

编程初学者使用 MariaDB 数据库反射生成

编程初学者使用 MariaDB 数据库反射生成 数据库反射生成,是动词算子式通用代码生成器提供的高级功能,可以利用已有的数据库,反射生成相应数据库的前端和后端项目。此功能自动化程度很高,并且支持完善的元数据和数据编辑&#xff…

机器人加装电主轴【铣削、钻孔、打磨、去毛刺】更高效

机器人加装电主轴进行铣削、钻孔、打磨、去毛刺等作业,展现出显著的优势,并能实现高效加工。 1. 高精度与高效率 电主轴特点:高速电主轴德国SycoTec的产品,转速可达100000rpm,功率范围广,精度≤1μm&#…

RCCL/NCCL中的Transports方式选择:P2P or SHM or NET

本篇文章主要总结以下在传输路径方式选择的时候,选择每一种方式应该满足的条件和优先度。 本文初步总结,之后还会进行更新,欢迎大家补充 源码位置:tools/topo_expl Topo结构: 初始化判断前 ret设置为0,代…

upload-labs关卡记录11

先上传一个一句话木马试试,居然可以上传成功,复制图片链接,在另一个窗口打开: 会发现,我们明明上传的是shell.php,但是这里就是没有了php,这样我们在执行我们相关的语句的时候就无法执行了: 就…

elementUI——upload限制图片或者文件只能上传一个——公开版

最近在写后台管理系统时,遇到一个需求,就是上传图片,有且仅能上传一张。 效果图如下: 功能描述:上传图片时,仅支持单选,如果上传图片成功后,展示图片,并隐藏添加图片的…

springboot餐厅点餐系统丨源码+数据库+万字文档+PPT

作者简介: 作者:学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等 文末获取“源码数据库万字文档PPT”,支持远程部署调试、运行安装。 技术框架 开发语言:Java 框架:springbo…

ArkTs组件(2)

一.下拉列表组件&#xff1a;Select 1.接口 Select(options: Array<SelectOption>) 参数名类型必填说明optionsArray<SelectOption>是设置下拉选项。 SelectOption对象说明 名称类型必填说明valueResourceStr是 下拉选项内容。 iconResourceStr否 下拉选项图片…

【MATLAB第110期】#保姆级教学 | 基于MATLAB的PAWN全局敏感性分析方法(无目标函数)含特征变量置信区间分析

【MATLAB第110期】#保姆级教学 | 基于MATLAB的PAWN全局敏感性分析方法&#xff08;无目标函数&#xff09;含特征变量置信区间分析 一、介绍 PAWN&#xff08;Probabilistic Analysis With Numerical Uncertainties&#xff09;是一种基于密度的全局敏感性分析&#xff08;Gl…

请购单一直提示需求部门不能为空无法提交

终于发现了它的逻辑。用户很多次反馈&#xff0c;提交请购单时&#xff0c;提示需求部门不能为空&#xff0c;既使选择了需求部门&#xff0c;保存时&#xff0c;神奇的是会清空掉部门的信息&#xff0c;提交时就会有错误提示出来。 原因&#xff1a;光选择单头上的需求部门是…

leetcode 面试经典 150 题:矩阵置零

链接矩阵置零题序号73题型二维数组解题方法标记数组法难度中等熟练度✅✅✅✅ 题目 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,1,1],[1,0,1]…