SysMLv1: TIP: You can strengthen the ill-defined semantics of Property 'aggregation' (an AggregationKind) by applying custom Stereotypes to a Property, documented with its intended use. Not perfect, but better than not. EXAMPLE: «assembled»

Icon class
far fa-sticky-note
far fa-sticky-note
Note kind
Policy level
UML keywords
Click on the image to view it full size

UML, which was not intended for systems engineering, has notoriously ill-defined semantics for Property::aggregation (an AggregationKind), especially the infamous 'shared' aggregation, which is also not well defined in SysMLv1 (which is UML-based), and has been banished completely in SysMLv2 (which is not UML-based).

You can strengthen the semantics somewhat though by applying well documented custom stereotypes to a Property.

For example, one might introduce «assembled» Assembled for a part property (which has 'composite' AggregationKind) in a physical «assembly» Assembly block being a type of (abstract) physical «part» Part block, where a physical «leaf» Leaf block is also special kind of (abstract) «part» Part block.

Note that in this example «assembly» , «leaf» and «part» represent something physical that has mass (hence the little atom icon). They are of a very different nature from other part properties elsewhere in the model.

The semantics can be strengthened for your own use by documenting the intended use clearly. You might also like to strengthen it further by using custom validation rules (worth learning in the MagicDraw/Cameo tools), such as enforcing that «assembled» may only be applied to a part property - which must be typed by a part property with 'composite' AggregationKind that is typed by a «part» Part (such as a «leaf» Leaf or «assembly» Assembly) - and further, that it may only be applied to a part property that has an «assembly» block as owner.

It's not perfect, you can contrive cases that break it, but it is certainly better than nothing! For example, you can then create a query view table for «assembled» Properties (only) to filter out other part properties in your model that have nothing to do with «assembly» Blocks (and don't represent something physical that has mass).

Dr Darren says:
See? Sometimes useful beats perfect!

Compare the «assembled» part property welded:Fixed «leaf» with the "shared" reference property tool:Loose «assembly», which could be, for example, a detachable robot tool.

Learn SysML for MBSE with the Webel IT Australia Live Online web seminar or On-Site course!

Please email or phone Webel IT Australia on +61 405 029 008 to arrange On-Site, Off-Site, or Live Online remote web training seminars and workshops.
Relates to
Related notes
Related notes (backlinks)
Related snippets (extracts)
Visit also
Visit also (backlinks)