UML与SYSML的关系

这篇具有很好参考价值的文章主要介绍了UML与SYSML的关系。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

UML与SysML的联系

UML(统一建模语言)和SysML(系统建模语言)是两种与建模相关的语言,它们之间存在联系和区别。

SysML的图分类如下图所示。
UML与SYSML的关系,MBSE,uml,sysml

联系

  • SysML是基于UML的,它重用了UML 2的子集,并提供了额外的扩展来满足系统工程领域的需求。
  • SysML保留了UML的一些建模构造,并将其称为UML4SysML子集。
  • UML和SysML都提供了一种通用的建模语言,用于描述系统的结构、行为和交互。
  • UML和SysML都使用图形符号和规则来表示系统的各个方面,以帮助开发人员和设计师进行系统建模和分析。

区别

  • UML是一种更通用的建模语言,可应用于各种软件系统的建模和设计,重点是面向对象分析与设计。
  • SysML是一种专门用于系统工程领域的建模语言,强调系统的结构、行为和交互的建模和分析。
  • SysML在重用了UML的基础上,提供了额外的建模构造和扩展,以满足系统工程领域的特定需求。
  • SysML包括了UML的一部分构造,并引入了一些新的构造和替代构造,以更好地支持系统工程的需求。

设计原则

SysML的基本设计原则如下:

  • 需求驱动:SysML旨在满足UML for SE RFP的需求。
  • UML重用:SysML在尽可能的情况下重用UML,以满足RFP的需求。当需要进行修改时,SysML会尽量减少对底层语言的更改。因此,对于支持UML 2的供应商来说,实施SysML相对容易。
  • UML扩展:SysML根据RFP的需求对UML进行扩展。主要的扩展机制是UML 2的配置机制,在第17条“Profiles & Model Libraries”中进一步进行了详细说明。
  • 分区:包是这个国际标准中的基本分区单位。包将模型元素分组成逻辑集合,以最小化它们之间的循环依赖。
  • 层次结构:SysML包被指定为UML元模型的扩展层。
  • 互操作性:SysML继承了UML的XMI交换能力。SysML还旨在通过ISO 10303-233数据交换标准来支持与其他工程工具的互操作性。

SysML提供了三个模型库:

  • PrimitiveValueTypes(原始值类型)
  • UnitAndQuantityKind(单位和量纲类型)
  • ControlValues(控制值类型)

架构

SysML与UML 2之间的关系如下图所示。SysML扩展了UML 2的StandardProfile,其中的Trace和Refine stereotypes为SysML中的需求追踪提供了基础。

虽然SysML由于包导入的传递性间接导入了UML 2的PrimitiveTypes库,但SysML提供了一个PrimitiveValueTypes模型库,系统工程师可以通过SysML的ValueType stereotype来扩展它。在本文档的其余部分,对Boolean、Integer、Real和String的未限定引用应按如下方式解释:

  • 在SysML Stereotype定义的上下文中,名称引用了UML 2 PrimitiveTypes库中UML::PrimitiveType的定义。
  • 在其他上下文中,名称引用了SysML PrimitiveValueTypes库中UML::DataType的SysML::ValueType stereotype的定义。

UML与SYSML的关系,MBSE,uml,sysml

SysML的设计方法是重用UML的子集,并创建扩展来支持满足UML for SE RFP中需求的特定概念。如下图所示的SysML包结构:SysML Extension of UMLFigure包含一组与SysML中扩展的概念领域对应的包。

UML与SYSML的关系,MBSE,uml,sysml

SysML的包扩展了UML如下:

  • SysML::Model Elements扩展了Classification、Common Structure。
  • SysML::Blocks扩展了Classification、Structured Classifiers、Common Structure、Simple Classifiers。
  • SysML::ConstraintBlocks扩展了Structured Classifiers。
  • SysML::Ports and Flows扩展了Actions、Common Behavior、Classification。
  • SysML::Activities扩展了Activities。
  • SysML::Allocations扩展了Common Structure、Activities。
  • SysML::Requirements扩展了Common Structure、Classification、Common Behavior、Structured Classifiers。
  • SysML::DeprecatedElements扩展了Common Structure、Simple Classifiers、Classification、Structured Classifiers、Actions和SysML Item Flows。

下图显示了本国际标准中非规范的包,这些包依赖于SysML和UML。请注意,QUDV和ISO-80000库在本规范的非规范附录中进行了描述。

UML与SYSML的关系,MBSE,uml,sysml

扩展机制

本国际标准使用以下机制来定义SysML的扩展:

  • UML stereotypes
  • UML diagram extensions
  • 模型库(model libraries)

SysML构造型通过扩展现有的UML 2构造型,并添加新的属性和约束,来定义新的建模构造。SysML图扩展定义了新的图形符号,补充了从UML 2重用的图形符号。SysML模型库描述了可重用的特定模型元素。附录E“非规范扩展”中还包括其他非规范的扩展。

SysML用户模型是通过实例化其元模型并应用SysML配置文件中指定的构造型来创建的,可以选择性地引用或子类化SysML模型库中的模型元素。第17条“配置文件和模型库”描述了如何应用配置文件和模型库,并说明了如何进一步扩展SysML。

以下metaclasses方便查询

UML2 metaclasses excluded from the UML4SysML subset

Artifact, ClassifierTemplateParameter, Collaboration, CollaborationUse,
CommunicationPath, Component, ComponentRealization,
ConnectableElementTemplateParameter, Deployment, DeploymentSpecification,
Device, ExceptionHandler, ExecutionEnvironment, ExpansionNode, ExpansionRegion,
Manifestation, Node, OperationTemplateParameter, ProtocolConformance,
ProtocolStateMachine, ProtocolTransition, QualifierValue,
ReadLinkObjectEndQualifierAction, RedefinableTemplateSignature, StringExpression,
TemplateBinding, TemplateParameter, TemplateParameterSubstitution,
TemplateSignature, UMLActivityDiagram, UMLAssociationEndLabel,
UMLAssociationOrConnectorOrLinkShape,
UMLAssociationOrConnectorOrLinkShapeKind, UMLBehaviorDiagram,
UMLClassDiagram, UMLClassifierShape, UMLCompartment,
UMLCompartmentableShape, UMLComponentDiagram,
UMLCompositeStructureDiagram, UMLDeploymentDiagram, UMLDiagram,
UMLDiagramElement, UMLDiagramWithAssociations, UMLEdge,
UMLInteractionDiagram, UMLInteractionDiagramKind, UMLInteractionTableLabel,
UMLKeywordLabel, UMLLabel, UMLMultiplicityLabel, UMLNameLabel,
UMLNavigabilityNotationKind, UMLObjectDiagram, UMLPackageDiagram,
UMLProfileDiagram, UMLRedefinesLabel, UMLShape, UMLStateMachineDiagram,
UMLStateShape, UMLStereotypePropertyValueLabel, UMLStructureDiagram,
UMLStyle, UMLTypedElementLabel, UMLUseCaseDiagram

UML 2 metaclasses and datatypes included in the UML4SysML subsetTable

Abstraction, AcceptCallAction, AcceptEventAction, Action,
ActionExecutionSpecification, ActionInputPin, Activity, ActivityEdge, ActivityFinalNode,
ActivityGroup, ActivityNode, ActivityParameterNode, ActivityPartition, Actor,
AddStructuralFeatureValueAction, AddVariableValueAction, AggregationKind,
AnyReceiveEvent, Association, AssociationClass, Behavior,
BehaviorExecutionSpecification, BehavioralFeature, BehavioredClassifier,
BroadcastSignalAction, CallAction, CallBehaviorAction, CallConcurrencyKind,
CallEvent, CallOperationAction, CentralBufferNode, ChangeEvent, Class, Classifier,
Clause, ClearAssociationAction, ClearStructuralFeatureAction, ClearVariableAction,
CombinedFragment, Comment, ConditionalNode, ConnectableElement,
ConnectionPointReference, Connector, ConnectorEnd, ConnectorKind,
ConsiderIgnoreFragment, Constraint, Continuation, ControlFlow, ControlNode,
CreateLinkAction, CreateLinkObjectAction, CreateObjectAction, DataStoreNode,
DataType, DecisionNode, Dependency, DeployedArtifact, DeploymentTarget,
DestroyLinkAction, DestroyObjectAction, DestructionOccurrenceSpecification,
DirectedRelationship, Duration, DurationConstraint, DurationInterval,
DurationObservation, Element, ElementImport, EncapsulatedClassifier, Enumeration,
EnumerationLiteral, Event, ExecutableNode, ExecutionOccurrenceSpecification,
ExecutionSpecification, Expression, Extend, Extension, ExtensionEnd, ExtensionPoint,
Feature, FinalNode, FinalState, FlowFinalNode, ForkNode, FunctionBehavior, Gate,
GeneralOrdering, Generalization, GeneralizationSet, Image, Include, InformationFlow,
InformationItem, InitialNode, InputPin, InstanceSpecification, InstanceValue,
Interaction, InteractionConstraint, InteractionFragment, InteractionOperand,
InteractionOperatorKind, InteractionUse, Interface, InterfaceRealization,
InterruptibleActivityRegion, Interval, IntervalConstraint, InvocationAction, JoinNode,
Lifeline, LinkAction, LinkEndCreationData, LinkEndData, LinkEndDestructionData,
LiteralBoolean, LiteralInteger, LiteralNull, LiteralReal, LiteralSpecification, LiteralString,
LiteralUnlimitedNatural, LoopNode, MergeNode, Message, MessageEnd,
MessageEvent, MessageKind, MessageOccurrenceSpecification, MessageSort, Model,
MultiplicityElement, NamedElement, Namespace, ObjectFlow, ObjectNode,
ObjectNodeOrderingKind, Observation, OccurrenceSpecification, OpaqueAction,
OpaqueBehavior, OpaqueExpression, Operation, OutputPin, Package, PackageImport,
PackageMerge, PackageableElement, Parameter, ParameterDirectionKind,
ParameterEffectKind, ParameterSet, ParameterableElement, PartDecomposition, Pin,
Port, PrimitiveType, PrimitiveTypes::Boolean, PrimitiveTypes::Integer,
PrimitiveTypes::Real, PrimitiveTypes::String, PrimitiveTypes::UnlimitedNatural,
PrimitiveValueTypes::Boolean, Profile, ProfileApplication, Property, Pseudostate,
PseudostateKind, RaiseExceptionAction, ReadExtentAction,
ReadIsClassifiedObjectAction, ReadLinkAction, ReadLinkObjectEndAction,
ReadSelfAction, ReadStructuralFeatureAction, ReadVariableAction, Realization,
Reception, ReclassifyObjectAction, RedefinableElement, ReduceAction, Region,
Relationship, RemoveStructuralFeatureValueAction, RemoveVariableValueAction,
ReplyAction, SendObjectAction, SendSignalAction, SequenceNode, Signal,
SignalEvent, Slot, StartClassifierBehaviorAction, StartObjectBehaviorAction, State,
StateInvariant, StateMachine, Stereotype, StructuralFeature, StructuralFeatureAction,
StructuredActivityNode, StructuredClassifier, Substitution, TestIdentityAction,
TimeConstraint, TimeEvent, TimeExpression, TimeInterval, TimeObservation,
Transition, TransitionKind, Type, TypedElement, UnmarshallAction, Usage, UseCase,
ValuePin, ValueSpecification, ValueSpecificationAction, Variable,VariableAction,
Vertex, VisibilityKind, WriteLinkAction, WriteStructuralFeatureAction,
WriteVariableAction

SysML stereotypes, blocks, valuetypes, and datatypes

AcceptChangeStructuralFeatureEventAction, AdjunctProperty, Allocate,
AllocateActivityPartition, BindingConnector, Block, BoundReference,
ChangeStructuralFeatureEvent, ClassifierBehaviorProperty, Conform,
ConnectorProperty, ConstraintBlock, Continuous, ControlOperator, ControlValueKind,
Copy, DeriveReqt, DirectedFeature, DirectedRelationshipPropertyPath, Discrete,
DistributedProperty, ElementGroup, ElementPropertyPath, EndPathMultiplicity, Expose,
FeatureDirectionKind, FlowProperty, FullPort, InterfaceBlock,
InvocationOnNestedPortAction, ItemFlow, NestedConnectorEnd, NoBuffer, Optional,
Overwrite, ParticipantProperty, PrimitiveValueTypes::Boolean,
PrimitiveValueTypes::Complex, PrimitiveValueTypes::Integer,
PrimitiveValueTypes::Number, PrimitiveValueTypes::Real, PrimitiveValueTypes::String,
Probability, Problem, PropertySpecificType, ProxyPort, Rate, Rationale, Refine,
Requirement, Satisfy, Stakeholder, TestCase, Trace, TriggerOnNestedPort, ValueType,
VerdictKind, Verify, View, Viewpoint

参考:sysml-specification-1.6书中第四章

文章仅供学习参考使用,勿用做商业或其他违法活动文章来源地址https://www.toymoban.com/news/detail-565566.html

到了这里,关于UML与SYSML的关系的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • UML中的assembly关系

            在UML(统一建模语言)中,\\\"assembly\\\"(组装)是一种表示组件之间关系的关联关系。组件是系统中可替换和独立的模块,可以通过组装来构建更大的系统。         当一个组件通过组装与另一个组件关联时,它表示一个组件依赖于另一个组件以实现某种功能。这

    2024年02月05日
    浏览(81)
  • 快速读懂UML类图,搞懂类之间的6大关系,轻松绘制UML类图

    一个合格的程序员,要想成长为一个高级工程师,不仅仅需要大量代码的编写,更需要对设计模式具有深入的了解和灵活的应用。从本篇文章开始,我将通过对【尚硅谷设计模式】视频课程的学习总结,尝试以最简单,最通俗易懂的方式完成对设计模式的讲解。 学习设计模式

    2024年02月07日
    浏览(73)
  • 深入理解UML中的继承关系

    在面向对象的设计中,继承关系是构建清晰、可维护系统的关键。统一建模语言(UML)提供了一种标准化的方法来可视化这些关系。本文将深入探讨UML中的继承关系,并探讨它如何在代码中体现。 继承关系在UML中用于表示一个类(子类)“继承”另一个类(父类)的属性和行

    2024年01月17日
    浏览(30)
  • 【软考】14.2 统一建模语言UML/事务关系图

    可视化的建模语言,非程序设计语言 UML的结构:构造块(事物、关系、图)、规则、公共机制 模型的事物 结构事物:静态 行为事物:动态 分组事物:组织 注释事物:解释 事物的关系 关联:现实生活中存在的最广泛的关系;分为组合和聚合,都是表示部分和整体的关系 组

    2024年02月07日
    浏览(31)
  • 第六章 包图组织模型|系统建模语言SysML实用指南学习

    仅供个人学习记录 包是容器的一个例子。包中的模型元素称为可封装元素,这些元素可以是包、用例和活动。由于包本身也是可封装元素,因此可以支持包层级。 每个有名称的模型元素也必须是命名空间的一份子,命名空间使得每个元素均能够通过名称被唯一识别。 有效的

    2024年02月05日
    浏览(40)
  • 第六章 块为结构建模 P1|系统建模语言SysML实用指南学习

    仅供个人学习记录 块是SysML结构中的模块单元,用于定义一类系统、部件、部件互连,或者是流经系统的项,也用于定义外部实体、概念实体或其他逻辑抽象 块定义图用于定义块以及块之间的相互关系,如层级关系,也用于规定块的实例,包括配置和数据值。内部块图用于根

    2024年02月05日
    浏览(31)
  • 什么是统一建模语言(UML)UML与UML类图的基本概念

    UML(统一建模语言)是一种通用的建模语言,用于描述软件系统的结构、行为和交互。它提供了一组符号和规则,用于创建可视化的图形模型,帮助开发人员、设计师和利益相关者之间进行沟通和理解。 UML起源于20世纪90年代初,由James Rumbaugh、Grady Booch和Ivar Jacobson等知名软件

    2024年02月16日
    浏览(42)
  • UML箭头汇总+IDEA绘制UML类图详细教程+chatGPT辅助生成UML类图教程

    参考:http://www.cnblogs.com/damsoft/archive/2016/10/24/5993602.html 1.UML简介 Unified Modeling Language (UML)又称统一建模语言或标准建模语言。 各个箭头的含义: 简单说就是以图形方式表现模型,根据不同模型进行分类,在UML 2.0中有13种图,以下是他们的主要用途简介: 1.用例图:对系统的使

    2024年02月03日
    浏览(32)
  • 【UML】浅谈为什么要有UML?

    上高中的时候,经常使用一些软件,觉得这些软件挺有意思的,就一直很好奇系统这个东西是怎么构建出来的。直到后来,大学的时候上了一门叫做系统分析与设计的课程,从UML开始再到用Spring Boot和Vue写一个系统,慢慢的有一点点的概念,但是还是感觉迷迷糊糊。研究生的

    2024年02月05日
    浏览(43)
  • UML时序图详解

    上篇文章,介绍了UML状态图,并通过visio绘制一个全自动洗衣机的UML状态图实例进行讲解。 本篇,来继续介绍UML中的另一种图——时序图。 时序图(Sequence Diagram),也叫 顺序图 ,或 序列图 ,是一种UML动态图。 UML具有许多不同类型的图表,包括: 静态图:用例图、类图、包图

    2024年02月05日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包