Block Definition Diagram (BDD)

 

In SysML, blocks are generic units – systems, components, items, conceptual entities, and logical abstractions. Block definition diagrams (BDDs) are used to define blocks in terms of their structure, classification, and behavior. The BDD is available for entities in the Component class (as well as any other subclasses of ImplementationUnit).

 

When put into practice and mapped to our STRATA methodology, blocks are used to represent implementation units (hardware, software, and people). Block definition diagrams are used to define the composition and the classification of implementation units.

 

The BDD represents the composition structure of systems, components, items, conceptual entities, and logical abstractions as well as the inheritance structure of systems, components, items, conceptual entities, and logical abstractions. In addition to the appropriate line decorations to reflect specialization (open triangle), aggregation (open diamond), and composition (filled diamond), the BDD displays part roles and part multiplicity. Optionally, the diagram can display the relationship names on the connection lines to increase the communication value.

 

 

The BDD can optionally show ports on nodes in their nested structure. This allows you to visually represent both the components and their available connection ports.

The BDD uses a structured layout with specific movement rules for each node.

 

Multiple node representations are supported by block diagrams. In addition to the entity name, you will frequently see some combination of the following fields:

 

 

   

 NOTE:

A good reference for further information on BDDs is chapter 7 of A Practical Guide to SysML: The Systems Modeling Language by Sanford Friedenthal, Alan Moore, and Rick Steiner (2012).

Toolbox Properties

In addition to the classic diagram options, the BDD settings include:

Toolbox Insert

The constructs and key entities tabs allow you to quickly develop your block definition, while the all entities tab enables you to relate your blocks to the remainder of your system definition.

 

Constructs

Utilities

 Key Entities

All Entities - all classes and entities in the system model, allowing you to drag any entity on top of a diagram node to establish relationships with the balance of your system model.

Context Menu Commands

Tips and Tricks

To communicate the full technical depth of the block structure, BDDs classically include far more content per node than other diagrams. Make liberal use of the ability to specify different icon templates for each node, using more complete templates where operations/values/ports are desired and lesser templates where they are not. Not only does this tighten the diagram, it helps focus attention on the critical aspects you are seeking to emphasize.