第七章 块为结构建模 P3|系统建模语言SysML实用指南学习

本文主要是介绍第七章 块为结构建模 P3|系统建模语言SysML实用指南学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

仅供个人学习记录

块行为建模

块提供了行为情境,行为这个 SysML 词条覆盖了块如何处理输如/输出和其内部状态改变的所有描述。
块可以指定某个行为作为其主行为或者分类器行为,该行为在块实例化后启动执行。其他行为可以指定为方法,提供了处理服务请求的细节。这两类行为也可以反过来引发块的其他行为。
行为拥有参数,这些参数用于行为执行之前 、之后、正在执行时将项传人行为或传出行为。

SysML中有如下三种主要行为形式:

  • 活动:将输人转换为输出
  • 状态机:用于描述块如何响应事件
  • 交互:描述了块组成间如何通过消息相互作用

SysML 识别了语言中的其他两种行为形式

  • 非透明行为opaque behavior在一些 SysML 外部语言中以文本形式表示。
  • 功能行为function behavior与非透明行为类似,增加了不允许直接影响归属块状态且仅能通过参数通信的约束。功能行为通常用于定义数学函数。

块主行为建模

块的主行为main behavior也成为分类器行为classifier behavior,起始于块生命周期的开始,通常在块生命周期的终点终止(也可以在终点前终止)。依赖于块的性质,分类器行为的形式选择可以是状态机(如果块主要是由事件驱动),也可以是活动(如果块主要用于将输入项转换成输出项)。

具体什么意思没看懂

块行为特性规范

块拥有描述能够响应何种请求的行为特性behavioral features,可以有关联的方法,该方法是当块处理对特征的请求时调用的行为。行为特征有操作和接受两种类型

操作operation是由同步请求触发的行为特性(当请求者等待响应时),每个操作定义一组描述请求发出时传入自变量的参数parameter,或请求处理后传回自变量的参数/
操作可以由异步请求触发(请求者不等待响应时),可以没有自变量传回给请求方

接收reception信号signal相关联,信号定义了集的某个消息。信号的属性集表示消息的内容;接收的参数必须与相关联信号的属性相同。

操作和接收之间的主要区别时,操作可以由同步请求和异步请求触发,而接收只能由异步请求触发,

信号是用一个具有实线轮廓的矩形标识定义,在信号名称之前有关键词《signal》,如下形式标识属性:attribute name:attribute type [multiplicity]
信号分类层级

Status Report状态报告信号有三个属性report报告,他直接定义;log time日志时间,由它与Status Message关系得到;id由它到System Message系统消息得到

操作和接收显示在标记为operations的块单独分区中。操作表示为名称与参数的组合,以及可选的的返回类型,形式如下:
operation name(parameter list):return type
参数列表以冒号分隔,形式如下:
direction parameter name:parameter type
参数方法可以是输入输出

接收是其名称和参数列表的组合(接收的名称总是其关联信号的名称),表示为:
《signal》reception name(parameter list)

对于SysML1.3,块必须指定它对其定义的行为特性是提出请求还是处理请求。提供行为特性provided behavioral feature请求由定义块自己处理,由特性名前的关键词prov,提供行为特性provided behavioral feature表示它期望某个外部实体处理其对该特性所做的任何要求,特性名前的关键词reqd。关键词provreqd表示特性既是提供又是请求。行为特性既可以是请求也可以是提供。

我在实现的时候,体现不出来提供prov还是请求reqd

《signal》这个我也在operations里面加不出来

下图表示由Surveillance System和Command Center提供和请求的服务视图。它们都具有相同的接收集合,对应于上面的信号。
带有行为特性的块

块定义方法建模

某些块的行为仅对特殊激励响应,尤其是在请求是由提供行为特性产生情况下,这种行为称作方法method
SysML支持多态性polymorphism,多态性至多个不同的块可以响应相同激励,但每个都采用特殊的方法,按照特定的方式完成。

跨连接器的路由请求

行为特性的请求可以跨组成间和引用间的连接器通信。当某个块行为产生针对请求行为特性的请求时,请求跨连接器与另一端通信。
任何目标端都必须有一个带有兼容标志的同类型提供行为特性(如操作或接收)

然后讲了两个特性的信号必须满足一些准则

连接器可以跨链接路由

这篇关于第七章 块为结构建模 P3|系统建模语言SysML实用指南学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/389079

相关文章

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

Python中顺序结构和循环结构示例代码

《Python中顺序结构和循环结构示例代码》:本文主要介绍Python中的条件语句和循环语句,条件语句用于根据条件执行不同的代码块,循环语句用于重复执行一段代码,文章还详细说明了range函数的使... 目录一、条件语句(1)条件语句的定义(2)条件语句的语法(a)单分支 if(b)双分支 if-else(

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

SQL Server数据库迁移到MySQL的完整指南

《SQLServer数据库迁移到MySQL的完整指南》在企业应用开发中,数据库迁移是一个常见的需求,随着业务的发展,企业可能会从SQLServer转向MySQL,原因可能是成本、性能、跨平台兼容性等... 目录一、迁移前的准备工作1.1 确定迁移范围1.2 评估兼容性1.3 备份数据二、迁移工具的选择2.1

在 Windows 上安装 DeepSeek 的完整指南(最新推荐)

《在Windows上安装DeepSeek的完整指南(最新推荐)》在Windows上安装DeepSeek的完整指南,包括下载和安装Ollama、下载DeepSeekRXNUMX模型、运行Deep... 目录在www.chinasem.cn Windows 上安装 DeepSeek 的完整指南步骤 1:下载并安装

nginx-rtmp-module构建流媒体直播服务器实战指南

《nginx-rtmp-module构建流媒体直播服务器实战指南》本文主要介绍了nginx-rtmp-module构建流媒体直播服务器实战指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. RTMP协议介绍与应用RTMP协议的原理RTMP协议的应用RTMP与现代流媒体技术的关系2