Sys ML v 2 Formalism Requirements Benefits Formalism
Sys. ML v 2 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) Sys. ML v 2 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 S 2) 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 Sys. ML 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 Sys. ML to integrate its 5 concepts better.
Requirements Review (FML 2) Sys. ML v 2 semantics shall be modeled in domain-independent Sys. ML v 2 model libraries that are automatically used when models are created. Benefits: 1) Makes the mathematical semantics of S 1 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 Sys. ML 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) Sys. ML v 2 abstract syntax shall be independent of notation. Benefits: 1) Support non-Sys. ML visualizations: Engineers and project managers need a wide variety of visualizations for information captured in models, including non-Sys. ML graphics, tables, and reports. Sys. ML’s abstract syntax should not inhibit creating these visualizations. 2) Simpler model and tool construction: Sometimes the same notion has multiple standard notations in Sys. ML, 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) Sys. ML v 2 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 Sys. ML consistently across tools. 11
Requirements Review (FML 5) Any Sys. ML v 2 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 Sys. ML v 2 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 Sys. ML v 2 is extensible, the syntax, semantics, and model libraries shall 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) Sys. ML v 2 syntax shall be specified in a subset of Sys. ML v 2. Benefits: Enables Sys. ML 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) Sys. ML v 2 shall support multiple and dynamic classification. Benefits: Simplifies models by • Omitting blocks that only combine features of other blocks by generalization. Individuals (real/simulated/M 0 instances) are classified by those other blocks directly. • Organizing features on separate blocks according to lifecycle stages. Classification of individuals (real/simulated/M 0 instances) changes over time. Sys. ML v 1. x has these capabilities (e. g. , on instance specifications). 18
Requirements Review (FML 10) Sys. ML v 2 shall support graphical and textual definition of derived properties and relationships. Benefits: Simplifies specifying derivations (not using constraint languages). 19
Requirements Review (FML 11) Sys. ML v 2 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) Sys. ML v 2 shall provide mechanisms to extend the language. Benefits: Simplifies integration of Sys. ML v 2 with other domains and architecture frameworks. 29
Requirements Proposal (2) Sys. ML v 2 shall provide a mapping between the subset of Sys. ML v 2 used to define Sys. ML v 2 and (S)MOF. Benefits: Simplifies integration of Sys. ML 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) Sys. ML v 2 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 Sys. ML. 31
Requirements Proposal (4) Sys. ML v 2 shall be compatible with Sys. ML 1. x. Benefits: Supports use of Sys. ML v 2 models in Sys. ML v 1 tools. 32
Requirements Proposal (5) Sys. ML v 2 shall specify a model (and notation? ) for model mappings and transformations. Benefits: Simplifies integration of Sys. ML with other modeling languages. 33
Questions/Comments? 34
- Slides: 23