第七章 块为结构建模 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

相关文章

JDK21对虚拟线程的几种用法实践指南

《JDK21对虚拟线程的几种用法实践指南》虚拟线程是Java中的一种轻量级线程,由JVM管理,特别适合于I/O密集型任务,:本文主要介绍JDK21对虚拟线程的几种用法,文中通过代码介绍的非常详细,... 目录一、参考官方文档二、什么是虚拟线程三、几种用法1、Thread.ofVirtual().start(

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

使用Java填充Word模板的操作指南

《使用Java填充Word模板的操作指南》本文介绍了Java填充Word模板的实现方法,包括文本、列表和复选框的填充,首先通过Word域功能设置模板变量,然后使用poi-tl、aspose-words... 目录前言一、设置word模板普通字段列表字段复选框二、代码1. 引入POM2. 模板放入项目3.代码

5 种使用Python自动化处理PDF的实用方法介绍

《5种使用Python自动化处理PDF的实用方法介绍》自动化处理PDF文件已成为减少重复工作、提升工作效率的重要手段,本文将介绍五种实用方法,从内置工具到专业库,帮助你在Python中实现PDF任务... 目录使用内置库(os、subprocess)调用外部工具使用 PyPDF2 进行基本 PDF 操作使用

macOS彻底卸载Python的超完整指南(推荐!)

《macOS彻底卸载Python的超完整指南(推荐!)》随着python解释器的不断更新升级和项目开发需要,有时候会需要升级或者降级系统中的python的版本,系统中留存的Pytho版本如果没有卸载干... 目录MACOS 彻底卸载 python 的完整指南重要警告卸载前检查卸载方法(按安装方式)1. 卸载

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

Python动态处理文件编码的完整指南

《Python动态处理文件编码的完整指南》在Python文件处理的高级应用中,我们经常会遇到需要动态处理文件编码的场景,本文将深入探讨Python中动态处理文件编码的技术,有需要的小伙伴可以了解下... 目录引言一、理解python的文件编码体系1.1 Python的IO层次结构1.2 编码问题的常见场景二

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方