These may be addressed in later lessons, but after completing Lesson 1 I had two comments:
- The transformation at 5:00 in the video was very confusing. I assume you’re pasting in the body of a different version of the L01_ChristmasTree.sysml file?
- I would have liked more explanation about why certain parts were declared within the ChristmasTree part. For example, while a Christmas tree clearly owns a trunk, branches, needles (at least until they fall off), and possibly a stand, should the other parts be owned by ChristmasTree, or should they have a different relationship? For example, a string of lights would seem to have a valid existence even in the absence of a tree, since it could be strung on walls, other objects, etc. It may be that this approach was used to keep the example simple, but as a V1 user it threw me.
Hi Kennie,
Thank you for sharing your feedback!
- Yes, Kestutis just pasted a more detailed version of the model that he had prepared beforehand. You can find the model here: advent-of-sysml-v2/lesson01/models at main · sensmetry/advent-of-sysml-v2 · GitHub
- The
SensmetryChristmasTree model is simplified and used only as an introduction to how SysML v2 textual representation looks like.
The lights in this model is a part usage, indicating that this is specifically the instance of the lights that is on the tree. In this case, it is modeled without a preexisting definition, which is allowed.
If you wanted to model the general existence of lights, you could use a part definition. It would look something like this:
package L01_ChristmasTree {
part def Lights;
part def SensmetryChristmasTree {
part tree_lights : Lights[100];
}
}
More on definitions and usages is covered in Lesson 3.