Prev | Next |
Introducing Block Definition Diagrams
Blocks provide a unifying concept to describe the structure of an element or system, including:
- Systems
- Hardware
- Software
- Data
- Procedures
- Facilities
- People
Blocks can have multiple standard compartments that can be made visible on diagrams to describe the Block's characteristics, including:
- Properties (parts, references, values, ports)
- Operations
- Constraints
- Allocations from/to other model elements (such as Activities)
- Requirements that the Block satisfies
- User defined compartments
Any of the compartments can be suppressed. A separator line is not drawn for a missing compartment. If a compartment is suppressed, no inference can be drawn about the presence or absence of elements in it. In this diagram a Pendulum has been modeled and a number of compartments have been made visible in preparation to create a parametric simulation.

Additional compartments can be supplied as a tool extension to show other predefined or user-defined model properties (for example, to show business rules, responsibilities, variations, events handled, raised, and so on).
Each Block must have a non-null name that is unique within its namespace. The scope of a name is its containing Package and other Packages that can see the containing Package.
Creating a Block Definition Diagram
A Block Definition diagram can be created from a number of places in the User Interface by using any of these options:
- Design ribbon - Add icon on the Diagram Panel
- Browser window Toolbar - New Diagram icon
- Browser window Context Menu - Add Diagram
We will use the Design ribbon to create a Block Definition diagram. Firstly, select the location in the Browser window where you want the Block Definition diagram to be located. As with all diagrams, this can be under either a Package or an element, but it is common to insert Block Definition diagrams into a Package. Once the location has been selected in the Browser window, select the ribbon option:
Design > Diagram > Add

Selecting this option will open the 'New Diagram' dialog, allowing you to name the diagram. The name initially defaults to the name of the Package or element that contains the diagram. With the SysML perspective chosen and the version of SysML selected, a list of diagrams will be displayed; select the Block Definition diagram and click on the Diagram View will be opened allowing you to start adding elements and connectors that describe the Blocks and other important structural elements such as Ports, Interfaces and Value Types. Enterprise Architect will also display the 'Block Definition' pages of the Diagram Toolbox, which contain the elements and relationships defined by the SysML specification as applicable for constructing Block Definition diagrams. Any number of other Toolbox pages can be opened if required, in addition to the 'Common' elements and 'Common Relationships' pages that will always be available.
. A new Block Definition diagram will be created in the location selected in the Browser window. The
The most import elements and connectors that are used with the Block Definition diagram are:
Elements
- Block
- Constraint Block
- Value Type
- Property
- Unit
- Quantity Kind
- Proxy Port
- Full Port
Connectors
- Reference Association
- Part Association
- Shared Association
- Generalization
- Dependency
- Item Flow
Elements can be added to the diagram by drag-and-dropping them from the Toolbox onto the Diagram View. For more information see the Block Definition Diagram Help topic.
Creating a Block Element
Block elements, as with any other type of element, can be created using the 'Add Element' option on a Package context menu, or by using the 'SysML Block Definition' page of the Diagram Toolbox to place a Block on a Block Definition diagram (BDD).

It is common for Blocks to appear on multiple BDDs, where each diagram is designed to address the concerns of a particular stakeholder or stakeholder group. Enterprise Architect has a wide range of display options both at the level of individual Blocks (or any element) or at the level of the diagram. These can be used to decide, for example, which compartments to display or even which features to display for individual elements, There is also a wide range of generic element and diagram settings to style both the element and the diagram. For example, it is possible to set the element colors including fill, borders and text, or to change the appearance of an element by applying a graphical image that better conveys the Block's function. In this example, a modeler has decided to use an alternative image for a Spot Welding Robot to convey more clearly the automation taking place on the production line.