Structural Diagrams: Block Definition Diagrams

SysML Structural Diagram Types

Structural Related

9 SysML Diagrams Taxonomy: Highlighting the Block Definition Diagram (bdd)

Definitions of a Block Definition Diagram (bdd)?

What is a SysML Block Definition diagram?  Several Different Definitions from the Experts


Definition 1: 

"The block definition diagram is used to define blocks in terms of their features and their structural relationships with other blocks." 

( A Practical Guide to SysML, Friedenthal pg 116)


Definition 2:

Block Definition Diagram (bdd): A Block Definition Diagram is a static structural diagram that shows system components, their contents (Properties, Behaviors, Constraints), Interfaces, and relationships.  -Source & More Info

Source & More Info


Definition 3:

The Block Definition diagram is the most widely-used of the SysML diagrams; it is used to model Blocks, their relationships to other elements (including other Blocks) and their features in the form of Properties, Operations and Receptions. Blocks are modular units of system description and provide a way of modeling systems as a graph or tree of modular units. Other elements, such as Constraint Blocks and Properties, can also appear on the diagram and help describe the system being modeled. 

Source & More Info


Definition 4: 

The Block Definition Diagram is a general-purpose diagram that can be used to describe the structural aspects of a system.

Source & More Info

Block Definition Diagram (bdd) Example

SysML Block Definition Diagram (bdd) Satellite Example with Cameo Default Color Scheme

In this example, we have 5 blocks.  There are 4 composition relationships between the "Satellite Subsystem" and it's respective subsystems: Propulsion, Instruments, Control, and Power System.  The blocks are elements of definition.  By adding the composition relationships to the Satellite Subsystem, part properties are created.  The part properties within this diagram are shown right above the subsystem level block.  The part properties are Pro1, Ins1, Con1 and Pay1.  Part properties are elements of usage.  This diagram is basically a BOM.

The coloring scheme of the diagram above is the SysML representation within the Cameo tool.  The diagrams below are excerpts from "OMG Systems Modeling Language (OMG SysML) Version 1.4 and will give examples about the syntax of the language.  Download the book here.  For more helpful resources, go here.

SysML Block Definition Diagram (bdd) SUV Power Subsystem Example with Directed Aggregation and Directed Composition Relationships Example

The diagram above will show the difference between the directed aggregation and the directed composition relationship.

When to use a bdd

Definition 1:

Block Definition diagrams are often the starting point for creating other diagrams, such as Internal Block diagrams, Parametric diagrams and Activity diagrams. Features that appear on the Block Definition diagram, such as Parts and Ports, typically form the basis for modeling in these other diagrams.  Enterprise Architect's Synchronize Structural Elements feature can be used to populate Internal Block diagrams and Parametric diagrams using information from your Block Definition diagram. 

Source & More Info

Definition 2:

Block Definition Diagram answer the question: "What is the system's structure?"

System decomposition begins by decomposing the system into cohesive, well defined subsystems.  Block definition diagrams provide the definition and relationships between the blocks, that is, the blueprints of the physical or virtual system parts.  Block definition diagrams graphically define the product breakdown structure in terms of SysML Associations.  Block definition diagrams are used for defining blocks, communication engines for stakeholders, depicting hierarchy in the system, defining the scope of the design space.  

Consistency & Completeness check: Are all elements from higher level design consistent?  Are all elements from functional analysis added?

What is the Purpose of a bdd? 

The purpose of Block Definition Diagrams is to specify system static structures that be used for Control Objects, Data Objects, and Interface Objects. When properly applied (See Usage Notes below) Block diagrams are recursively scalable and mathematically (parametrically) simulatable (See Executable Semantics below.)

https://sysml.org/sysml-faq/what-is-block-definition-diagram.html


Cameo bdd Toolbar

Cameo Vertical Toolbar for the Block Definition Diagram (bdd)

Elements Within a Block Definition Diagram

Block

The fundamental structural element.  Please refer to Structural Diagrams for more information on this element.


Directed Composition Association: 

Relationship between parent and child block which can be stated as Parent “has a” Child.  Relates a whole and its parts, arrow on part.


Directed Aggregation Association: 

Represents a particular structure (block) that’s external is related to a block.  Unlike the part properties, the reference block is owned by something else.  Referenced and shared properties are constructed  using the particular relationship.  Elements related by this relationship will be modeled as a dashed line within an internal block diagram.


Multiplicity: 

A constraint on the number of instance(s) that a part property can represent (the quantity).  If nothing is defined the default is 1.  0 = none, 0..* = any number, 1 = exactly 1, 1..* = at least 1, N = exactly N,  0..1 = Optional Part


Generalization Association: 

A relationship between the general (arrowhead) and specific (tail of arrow).  Generalization conveys inheritance between elements.  Can be read as IMU “is a type of” Navigation Sensor.

Elements Within a Block Definition Diagram

Block

The fundamental structural element within SysML.  Please refer to Structural Diagrams for more information on this element.


Directed Composition Association: 

Relationship between parent and child block which can be stated as Parent “has a” Child.  Relates a whole, filled in diamond side, and its parts, open ended arrow side.


Directed Aggregation Association: 

Represents a particular structure (block) that’s external is related to a block.  Unlike the part properties, the reference block is owned by something else.  Referenced and shared properties are constructed  using the particular relationship.  The directed aggregation relationship is depicted with an open ended diamond on the parent side and an open ended arrow on the child side.  Elements related by this relationship will be modeled as a dashed line within an internal block diagram (seen as a reference property and not a part property).  


Multiplicity: 

A constraint on the number of instance(s) that a part property can represent (the quantity).  If nothing is defined the default is 1.  0 = none, 0..* = any number, 1 = exactly 1, 1..* = at least 1, N = exactly N,  0..1 = Optional Part


Generalization Association: 

A relationship between the general (arrowhead) and specific (tail of arrow).  Generalization conveys inheritance between elements.  Can be read as IMU “is a type of” Navigation Sensor.


Constraint Block:

This is a special type of block which can hold expressions and equations.  Constraint blocks are often used in the context of system design and analysis, where they are used to capture requirements and constraints that must be satisfied by the system being modeled.  Constraint blocks are typically represented graphically using a block symbol with the stereotype "<<constraintBlock>>".