Adam,
Thanks for pointing out the double asterisk. I had missed that. Good. Something I need to be sure to point out in the beginner book. With that fixed, I get the correct (or almost correct) output from VIZ.
After thinking about what we want to explain for beginners, I decided to follow-up on the input from Kestutis and provide an item def to type the action parameters. Basically, the guidance will be:
- Action Flow - Type the parameters. No payload. This is consistent with SysML V1 object flows…and of course needs a proper “Type” (ie: item def) to do correctly.
- Flow Between Parts - Add a payload to the flow. This is roughly consistent with SysML V1 item flows… not exactly, but close. Ports get names, typing the port is optional.
With those two changes, my VIZ output now matches and looks nice:
Unfortunately, these changes sent Tom Sawyer into outer space. First, visualizing the view:
Next, visualizing the entire model looks a little better…but still not wonderful:
At this point, however, Tom Sawyer is not high on my priority list for a Sensmetry book at the moment.
Thanks for the pointer to the meta article on package level usages. Of course, I understand the ontology and syntax reasoning completely. However, the need to wrap every usage in a dummy part def is a language design failure and not what the community was promised at the outset of the SysML V2 design effort.
The initial promise was something along the lines of: “It is going to be really simple. People who like concrete first approaches can just start out modeling with parts.” This promise seems to have fallen through the cracks along the way.
This sort of problem matters because in front-line, in-the-trenches MBSE, models are almost never fully complete. They are partial models made fairly quickly to illustrate a concept or help a team make a decision. The fully complete model suitable for formal logic processing is a rarity. Almost no real company will pay for this level of modeling. In the “Quick, partial model to help the humans communicate” world extra semantic noise that does not actually help the team understand stuff is a real problem.
At any rate, our readers are the guys standing in the mud at the railway construction site holding shovels and wrenches. Our goal is to show them a path through the semantic and ontology complexity to make some simple stuff that helps them get the job done.
I will think about it. We might have a footnote or a sidebar, but we are not going to write an entire book showing every single part usage wrapped in a definition just to make the semantics work. That would just convince readers that the technology is overly theoretical and not a match to their daily lives.
At any rate, thanks for the explanation of the double **. Now, I understand the point.
David Hetherington
Test-3310-Action-Succession-Flow.sysml (1.6 KB)