OMG System Modeling Language (Version 2.0 beta 2)

第六章:介绍

Clause 7 describes SysML from a user point of view. Its subclauses describe the modeling constructs in SysML, including for each a general overview, related abstract syntax diagrams and a description of the textual and graphical notation. The overviews in this clause should be considered informative. The abstract syntax and notation subclauses, however, are normative, including descriptions of the processing of the textual notation and its relationship to the graphical notation and the abstract syntax.

第七章是从用户的视角描述的SysML。 每个子章节描述了SysML的构造,包括一个总体视角、相关抽象语法图、一个文本表示和一个图形表示。这部分内容应该是“信息性的”。

Clause 8 provides the normative specification of the metamodel that defines the SysML language. This includes the concrete syntax (textual and graphical notations), the abstract syntax and the semantics for the language. The SysML abstract syntax and semantics are formally extensions of the Kernel abstract syntax and semantics provided by KerML (as discussed in 6.1 ). However, this clause does not cover details of the Kernel metamodel, which are included by normative reference to the KerML specification.

第八章提供了定义SysML语言的元模型的标准说明。 包括具体语法(本文和图形表示)、抽象语法和语言语义。SysML的抽象语法和寓意是KerML的扩展。

Clause 9 specifies a set of model libraries defined in SysML itself. The Systems Library extends the Kernel Library in order to provide systems-modeling-specific semantics to SysML language constructs. The Domain Libraries provide domain-specific models on which users can draw when creating their own models. Each model library is described with a set of subclauses that covers each of the top-level packages in the model library, referred to as its library models.

第九章介绍了SysML的模型库。 为了提供构造SysML语言架构系统建模的具体语义,系统库扩展了Kernel库。领域库提供了特定领域模型,使得用户能在创建自己的模型时候进行加工。每个模型库都由对应的library model子章节包描述。

第七章:语言描述

SysML直接继承的KerML的部分(对应原文7.2-7.6节):

  • Elements和Relationships:定义模型的基本图形结构。
  • Dependencies:建模元素之间的关系。
  • Annotations:为一个模型附加元模型,包括评论和文字表示。
  • Namespaces:包含和命名元素。
  • Packages:组织模型中的元素。
  • Specialization:元素的专业化(可以理解为某种描述细化),包括subclassification子分类、subsetting子集、redefinition重定义和featureTyping特征类型。
  • Expressions:指代计算、案例结果、约束和形式化需求。和KerML规范的Expressions相等。

以下是建立在KerML基础上的建模结构(对应原文7.6-7.26节):

  • Definition和Usage:这两个是SysML语言的基本范式。一个概念能被define一次然后被用在不同的地方,一个usage可以被specialize。Variability表示定义或用例的变体。
  • Attributes和Enumerations:表示事物的属性性质信息。
  • Occurrences:用在时空场景下的建模,如时间段或者空间位置坐标。
  • Individuals:对个例进行建模。
  • 对structure结构进行建模,包括分解、互联、分类等:
    • Items:表示过程、流程或者一个系统的项目。
    • Parts:结构的基本单元。
    • Ports:用于parts连接用的端点/端口。
    • Connections和Interfaces:parts和ports内在连接的表示形式。
    • Allocations:通过一个元素实现对另一个元素的责任/功能分配。
  • 对Behavior表现进行建模,描述parts的内在行为:
    • Actions:动作是由part执行的,包括时序和内在items流。
    • States和Transitions:状态机由part表示的,转换存在与状态之间,这两者外加动作都能在一个状态或者一个转换期间执行/运行。
  • Calculations:建模计算是一种参数化表示,能够用于评估生成的具体结果。
  • Constraints:建模约束是一种条件,可以被定量为是或否,也可以被假设被是或否。
  • Requriements:建模需求是一种特殊的constraint,它包含一个subject,subject满足之后才能成为一个有效的解决方案。
  • Cases:建模案例用来定义一系列步骤,这些步骤被用来生成相关预期subject结果、可能的外部actors角色或者实现一个具体的objective目标。
    • Analysis Cases:分析一个subject用的actions。
    • Verification Cases:验证一个需求如何被subject满足。
    • Use Cases:用来衡量好处的一种行为。
  • Viewpoints和Views:建模视点反应了利益攸关者的关注信息,视角反应了满足特定视点的检索和检索结果。
  • Metadata:用来标记其他SysML语言创建的模型。

第八章:元模型

  • Concrete Syntax具体语法:包括用于描述文本语序的文本语法和用于视图的图形符号。两种表示法均可以独立描述一个完整模型。
  • Abstract Syntax抽象语法:抽象语法被specified as指定为MOF模型(Meta-Object Facility,元对象工具)。抽象语法为具体语法提供基础,使得模型可以在不同的表示形式之间转换,同时保持其语义完整性。在SysML v2中,抽象语法通过KerML进行定义,提供了统一的元模型结构,支持系统工程建模的各个方面。
  • Semantics语义:是基于KerML构建的。
    (具体语法是比较直观的,就是建模时候的文本规则;抽象语法和语义这两者介绍得比较繁琐,但是没看出来在实际建模中的含义…有待讨论)

SysML中的关键词:

about abstract accept action actor after alias all allocate allocation analysis and as assign assert assoc assume at attribute bind binding block by calc case comment concern connect connection constraint decide def default defined dependency derived do doc else end entry enum event exhibit exit expose filter first flow for fork frame from hastype if implies import in include individual inout interface istype item join language loop merge message metadata nonunique not objective occurrence of or ordered out package parallel part perform port private protected public readonly redefines ref references render rendering rep require requirement return satisfy send snapshot specializes stakeholder state subject subsets succession then timeslice to transition until use variant variation verification verify via view viewpoint when while xor

特殊字符:

  • DEFINED_BY = ‘:’ | ‘defined’ ‘by’
  • SPECIALIZES = ‘:>’ | ‘specializes’
  • SUBSETS = ‘:>’ | ‘subsets’
  • REFERENCES = ‘::>’ | ‘references’
  • REDEFINES = ‘:>>’ | ‘redefines’