SysML v2 Formalism

SysML v2 Formalism:
Requirements & Benefits
Formalism WG
June 6, 2017
Overview
• Language Definition Requirements & Benefits
• Language Feature Requirements
2
Overview
• Language Definition Requirements & Benefits
• Language Feature Requirements
3
Requirements Review (FML 1)
SysML v2 shall have a declarative semantics expressed in
mathematical logic and/or other semantics with a translation to
declarative semantics in mathematical logic.
Benefits:
1) Reduced ambiguity: Semantics expressed in natural language causes miscommunication
between users, and diverging implementations. This requirement (combined with S2)
enables vendors to build tools for model checking, execution/simulation, and analysis that
give the same results for the same models. Then users can learn a consistent SysML
semantics by using these services on their models.
2) More integrated language: Some engineering concepts are inherently different but must
be integrated, such as structure and behavior. This requires abstractions that apply to
both, but are not engineering-specific, i.e. mathematical, enabling SysML to integrate its
5
concepts better.
Requirements Review (FML 2)
SysML v2 semantics shall be modeled in domain-independent SysML
v2 model libraries that are automatically used when models are
created.
Benefits:
1) Makes the mathematical semantics of S1 accessible to non-mathematicians.
2) Simplifies the language when model libraries can be used without additional
abstract syntax (reduces the amount of abstract syntax).
3) Enables SysML to be improved and extended more easily by changes and
additions to model libraries, rather than always through abstract syntax.
9
Requirements Review (FML 3)
SysML v2 abstract syntax shall be independent of notation.
Benefits:
1) Support non-SysML visualizations: Engineers and project managers need a
wide variety of visualizations for information captured in models, including
non-SysML graphics, tables, and reports. SysML’s abstract syntax should not
inhibit creating these visualizations.
2) Simpler model and tool construction: Sometimes the same notion has
multiple standard notations in SysML, such as temporal precedence in
interations, state machines, and activities. The abstract syntax should
represent these notions once. This makes is it easier for modelers to keep
diagrams consistent and for vendors to construct tools that operate on
10
models (model checking, execution/simulation, analysis).
Requirements Review (FML 4)
SysML v2 syntax shall be modeled formally (including syntactic
constraints).
Benefits:
Reduced ambiguity: Syntax expressed in natural language, such as abstract
syntax constraints, causes miscommunication between users, and diverging
implementations. This requirement enables vendors to build tools for model
construction and checking that give the same results. Then users can learn
SysML consistently across tools.
11
Requirements Review (FML 5)
Any SysML v2 concrete syntax shall include a model and interchange
format/API for diagram/text information that is not included in the
abstract syntax, but is linked to the abstract syntax (e.g., DD).
Benefits:
Enables diagrams to look the same across tools, at least for those aspects that
modelers control (e.g., node positioning and line routing).
12
Requirements Review (FML 6)
All examples of notation in the SysML v2 specification shall be
accompanied by instances of the syntax models.
Benefits:
The Model Interchange Working Group (MIWG) found that most tool
interchange problems were due to differences in translating graphics to
instances of abstract syntax. Providing models for all diagrams in the
specification will help iron out these differences.
13
Requirements Review (FML 7)
Where SysML v2 is extensible, the syntax, semantics, and model
libraries shall all be extensible.
Benefits:
Language specification includes syntax, semantics, and vocabulary, so extending
a language requires all of these to be extensible.
14
Requirements Review (FML 8)
SysML v2 syntax shall be specified in a subset of SysML v2.
Benefits:
Enables SysML to be defined, implemented, and extended without learning a
separate language.
15
Overview
• Language Definition Requirements & Benefits
• Language Feature Requirements
16
Language Features Requirements
• Requirements on the language itself rather than how it is
defined.
• Inspired by formal approaches.
17
Requirements Review (FML 9)
SysML v2 shall support multiple and dynamic classification.
Benefits:
Simplifies models by
• Omitting blocks that only combine features of other blocks by generalization.
Individuals (real/simulated/M0 instances) are classified by those other blocks directly.
• Organizing features on separate blocks according to lifecycle stages. Classification of
individuals (real/simulated/M0 instances) changes over time.
SysML v1.x has these capabilities (e.g., on instance specifications).
18
Requirements Review (FML 10)
SysML v2 shall support graphical and textual definition of derived
properties and relationships.
Benefits:
Simplifies specifying derivations (not using constraint languages).
19
Requirements Review (FML 11)
SysML v2 shall distinguish features that allow reclassification of
individuals when feature constraints are violated (capabilities) from
those that do not.
Benefits:
Eliminates ambiguity about possible system behaviors.
22
Other Possible Requirements
Outside Formalism WG Scope
28
Requirements Proposal (1)
SysML v2 shall provide mechanisms to extend the language.
Benefits:
Simplifies integration of SysML v2 with other domains and architecture frameworks.
29
Requirements Proposal (2)
SysML v2 shall provide a mapping between the subset of SysML v2
used to define SysML v2 and (S)MOF.
Benefits:
Simplifies integration of SysML with other OMG languages. SMOF is included to support
dynamic and multiple classification of user model elements, which simplifies the metamodel
as well as extensions to it (see the Meta Extension Facility RFP).
30
Requirements Proposal (3)
SysML v2 shall provide a tool neutral format for export and import of
user models.
Benefits:
Enables exchanging models between tools, including across versions of tools and SysML.
31
Requirements Proposal (4)
SysML v2 shall be compatible with SysML 1.x.
Benefits:
Supports use of SysML v2 models in SysML v1 tools.
32
Requirements Proposal (5)
SysML v2 shall specify a model (and notation?) for model mappings
and transformations.
Benefits:
Simplifies integration of SysML with other modeling languages.
33
Questions/Comments?
34