SysML v2 Cheat Sheet Challenge Results

Edited (2025-10-28): added Udo Nink’s entry in the competition, which was previously missed due to hidden/collapsed LinkedIn comment. He reported 7 issues first which later were reported by others. All previously recognised winners and Udo will receive Syside Pro subscription licenses for their discoveries.

Several days ago, we announced a friendly MBSE community competition to improve the quality of the SysML v2 educational resource (a cheat sheet) provided by a big established SysML tool vendor. Today, we close this competition and share with you all the findings and results.

This public contest sparked wide and deep discussions on what ‘correct’ and ‘incorrect’ means in the context of SysMLv2 use. We are particularly grateful for Michael Jastram’s contribution to this conversation for identifying and classifying types of correctness (read about it here if you missed it: https://www.se-trends.de/en/sysml-v2-correctness/).

In summary, there were 11 issues discovered in total (9 of which were reported by the community members on LinkedIn). The majority of these – 9 issues – can be considered as syntax issues that would have been automatically discovered, had Syside been used to check model syntax for validity. Learning from mistakes? Start using Syside — for free.

Here is the summary of counts for issue discoveries:

For each issue discovered, we are providing a 3-month subscription of our Syside Pro suite to the participants. Congratulations to the winners and thanks to everyone who constructively contributed to the SysML v2 Cheat Sheet Challenge!!!

Discovered issues in Dassault Systèmes cheat sheet

For the competition, the original version of Dassault Systèmes SysMLv2 Quick Sheet is used. See here for a high-resolution version.

Issue 1: Syntactic error of closing “*/” in the doc element

Reported by Florian Mayer (link)

Got one: Missing closing ” */ “.

Issue 2: Syntactic error in the Actions example

Reported by Florian Mayer (link)

Another one: there is one ::mission too much. Should be: “flow flow1 from ‘define mission’.mission to ‘fly mission’.mission;”

Issue 3: Syntactic issue of missing “Energy” definition

Reported by Florian Mayer (link )

“Energy” not defined

Issue 4: Syntactic issues in Structure example “flow of Energy”

Reported by Bence Graics (link)

“I usually see flows being used like this:

flow of Energy from sourceSocket to targetSocket

But if we want to use the approach shown in the cheat sheet, shouldn’t the `subsets` be `references` instead?

flow of Energy {

end ::> sourceSocket;

end ::> targetSocket;

}

See page 18 of the ‘Intro to the SysML v2 Language-Textual Notation:’ “Reference subsetting (references or ::>) relates feature to a connector ends. “Dot” notation specifies paths to nested features.”

Issue 5: Syntactic issue of missing part chargingStation

Reported by Florian Mayer (link )

“chargingStation” not defined.

Issue 6: Syntactic issue of multiline unrestricted names

Unrestricted declared names may not include non-printable characters such as backspace, tab, newline, unless escape sequence is used. See Section 7.2.3 (page 18) of OMG Language Specification (Part 1). 

Another instance of line break issue (in name ‘fly mission’):

Issue 7: Syntactic issue of missing a closing bracket

Missing closing bracket “}” for part usage simpleDrone.

Issue 8:  Syntactic issue of missing package import

Reported by Florian Mayer (link )

– Again, imports missing for SI

Issue 9: Syntactic issue of missing package import

Reported by Florian Mayer (link )

Missing import for statement “in attribute ‘camera on’ : Boolean”

Issue 10: Simplification mismatch in content

Reported by: Andreas Graf (link)

Not sure about the precision of the standard. But why do they have an “alias” membership on Architecture (to Battery) that is not reflected by text? Also, PartLibrary is omitted as a child of “Drone” in one of the graphical views. Might not be an error, but IMHO for cheatsheets, various views should be comparable.

Issue 11: Modelling style issue

Reported by: Christoph Brand (link)

“😭 Florian Mayer already found my findings.

But I really would like to have a Pro Suite License… 🤔

So maybe this:

There is an issue with ALL the codes: It’s not allowed to have empty { } without any token / identifier!

(I hope this finding will also be counted… 😁)”

Cookies

Learn SysML v2 through the Advent of SysML v2 Challenge!