The Systems Modeling Language (SysML) has long been a cornerstone in systems engineering, providing a standardized notation for describing complex systems.
A final specification of the next generation SysML v2 is expected to be published in 2024.
In this article, we'll delve into the three key differences between SysML Version 2 and its predecessors.
One of the most noticeable changes in SysML Version 2 is its adoption of a new metamodel.
The SysML v2 metamodel extends the Kernel Modeling Language (KerML) metamodel. The older SysML v1 used a different foundation called the UML metamodel, which was mainly created for software modeling.
Picture 1: How it used to be: Connection between UML v2 and SysML v1
This new metamodel in SysML Version 2 gives a clear set of rules and better ways to show very detailed plans of how parts of a system work together. It also has a special way to add more domain specific extensions.
“The Kernel Modeling Language (KerML) is an application-independent modeling language with a well-grounded formal semantics for modeling existing or planned systems.” (https://www.omg.org/spec/KerML/). KerML is a new way of defining new modeling languages.
While SysML v1 allows only standardized graphical notation, SysML v2 introduces textual notation in addition to graphical notation. This approach gives you a whole new way to create or edit models, including the ability to do so in an automated manner.
Picture 2a: New Textual notation, OMG Systems Modeling Language (SysML) v2.0, Beta 1, Table 14. Actions – Representative Notation, p.92
Picture 2b: New Textual notation, OMG Systems Modeling Language (SysML) v2.0, Beta 1, Table 16. States – Representative Notation, p. 112
In addition to the introduction of the new textual notation, much will also change in the existing graphical notation. Below are new graphical ways to describe some relationships:
Picture 3: New intriguing graphic notations for relationships, OMG Systems Modeling Language (SysML) v2.0 Beta 1, 126.96.36.199 Definition and Usage Graphical Notation, p. 194
Even well-known UML use cases will no longer be represented graphically as ellipses, but rectangles.
Picture 4: SysML Use Cases represented as rectangles, OMG Systems Modeling Language (SysML) v2.0, Beta 1, Table 22. Use Cases – Representative Notation, p. 143
The standard SysML 2.0 API will serve as a programming interface for developers to interact with SysML 2.0 models programmatically using Create, Read, Update, Delete (CRUD) operations.
This should solve many of the problems with importing and exporting models, interacting with models, accessing models, and problems with portability and data integrity. It will also be much easier to resume SysML models.
Here are some functionalities that a SysML 2.0 API could provide:
There are MANY changes and new features in the new version of the SysML language.
Many elements of the language have been improved, integrated and cleaned up. We can see more consistency and coherence in the way the language is described. The Next Generation Systems Modeling Language (SysML v2) will be a game changer for the software industry.
However, it will take some time to fully adapt to the new reality. The SysML v2 specification suggests migration mechanisms that will streamline the process of migrating models from SysML v1 to SysML v2.
In any case, there is a lot of work and learning ahead of us before the new version of SysML becomes widely used and applicable.