Webel: SysMLv1: Highly recommend creating a "focus" Block Definition Diagram (BDD) for each main Block with expanded feature details and relationships to at least nearest neighbours

Icon class
icon_class
far fa-sticky-note
icon_class_computed
far fa-sticky-note
Note kind
Policy level
SysMLv1.x keywords
Keywords
Click on the image to view it full size

The Webel focus BDD is a very powerful modelling strategy for SysMLv1 (the same idea works for PartDef in SysMLv2). Have one BDD per main Block, which its nearest neighbours show, and everything it needs to do its job. This is the place to show detailed documentation of Block, details of operation signatures etc.

A Webel focus BDD only shows minimal information about nearest neighbours, and usually only shows nearest neighbours to one degree. Only show features and additional information about nearest neighbours that are immediately relevant to its relevant collaborations with the focus Block.

Think of each main Block as a "little machine". Beyond structure, Behaviors such as Activities and StateMachines bring Blocks to life, offer an orthogonal view to the structural view, and introduce time-related aspects.

You can also show satisfaction of Requirements. You can show explicit Satisfy symbols, or you can use Edit Comparments to introduce a Satisfies element property, and then use the tool's context menu for navigation to satisfied Requirements. The same applies to other relationships such as Refine, Allocate etc.

The focus BDD shown is actually not typical of a Webel-style focus BDD as used on real projects, it just shows some of the things one might typically include. There are literally hundreds, maybe thousands, of examples of focus BDDs throughout this site.

Show ItemFlows on Associations to/from nearest neighbours! This provides a signal processing "context". See also the communications views providing a context for this contrived Block B under:

Once you've got your "focus" Block fleshed out a bit you can then start connecting things up: Don't forget to consider the relationship of your focus Block to nearest neighbours also in a Generalization hierarchy (noting as always that in SysML inheritance is NOT "evil"): Some people to work out of the IBDs directly, creating Type behind the scenes on the fly. However, that makes it harder to work on with Generalization, and IBDs can't show every kind of element needed for a good focus BDD.

Be mindful of navigation!

Webel very very strongly recommends that as soon as you create a focus BDD, immediately, as a strict habit, link the diagram to its Block (in MagicDraw/Cameo just drag the BDD element from the model browser onto the Block) AND always place at least one other Diagram symbol on the focus BDD to offer a navigation pathway up or across your model out of your diagram (you should not have to resort to the model browser to navigate your model):

The only good reasons to break the above policy are that you have special pedagogical or presentation reasons to do so OR where it might prevent package sharing.

BTW: The same recommendation holds for the main Classes when modelling software in UML.
Relates to
Related notes
Related notes (backlinks)
Related snippets (extracts)
Visit also
Visit also (backlinks)