Book a Demo

Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Prev Next

Introducing Requirement Diagrams

A Requirement diagram provides a way of visualizing Requirements and their connections. It is not just the relationship between any two Requirements, but the relationships between Requirements and other types of element such as Use Case, Activity and Block that can be visualized on these diagrams. Two of the elements provided in the Toolbox are:

  • Requirement
  • Test Case

These elements can be connected to each other, or to other elements, creating rich expressions.

In this diagram we see a Requirement that has been connected to a Block using a Satisfy relationship, which describes how other elements will ensure that the Requirement's intent is met. The Block has an alternative image defined, this being the image of a robot.

Again, the number of relationships is quite limited, but each has specific meaning in the diagram.

  • Containment
  • Trace
  • Copy
  • Derive
  • Verify
  • Refine
  • Satisfy

As with all SysML elements, there is both a graphical and a textual aspect to the elements. The Requirement has two properties defined:

  • id - a unique identifier for the Requirement
  • Text - a textual description of the Requirement

Any number of Requirement diagrams can be created to describe the needs and concerns of stakeholders and others. For more information see the SysML Requirements Modeling topic.

Creating Requirement Diagrams

A Requirement diagram can be created from a number of places in the User Interface, such as:

  • Design ribbon - 'Add Diagram' icon on the 'Diagram' panel
  • Browser window Toolbar - 'New Diagram' icon
  • Browser window context menu - 'Add Diagram' option

We will use the Design ribbon to create a Requirement diagram. Firstly, select the location in the Browser window where you want the Requirement diagram to be created. As with all diagrams, this can be either a Package or an element, but it is common to insert Requirement diagrams into a Package. Once the Package location has been selected in the Browser window, click on the ribbon option 'Design > Diagram > Add Diagram'.

Diagram panel of the Design ribbon in Sparx Systems Enterprise Architect.

This option opens the 'New Diagram' dialog, allowing you to re-name the diagram - the name initially defaults to the name of the Package or element that contains the diagram. When you select the SysML Perspective and the version of SysML, a list of diagrams will be displayed, allowing you to select the Requirement diagram. You click on the OK button to create a new Requirement diagram in the specified location in the Browser window. The Diagram View will be opened, allowing you to start adding elements and connectors that describe the Requirements and their relationships. Enterprise Architect will also display the 'Requirements' page of the Toolbox, which contains the elements and relationships defined by the SysML specification to be applicable for constructing Requirement diagrams. Any number of other Toolbox pages can be opened as required, in addition to the 'Common' elements and 'Common Relationships' Toolbox pages that are displayed by default.

The most important elements and connectors used with the Requirement diagram are:

Elements

  • Requirement - used to define a Requirement
  • Test Case - used to describe a Test

Connectors

  • Containment - used to provide additional information that helps clarify the Requirement
  • Trace - used to connect a Requirement to any other modeling element
  • Copy - used to show that one Requirement is a copy of another
  • Derive - used to describe the fact that one Requirement is based on or is an extension or derivation of another Requirement
  • Verify - used to indicate that a Requirement has been fulfilled
  • Refine - used to add refinement or additional information that helps clarify the Requirement
  • Satisfy - used to show that one or more model elements in the architecture or design fulfills the notion expressed in the Requirement

Requirement Extensions

  • Extended Requirement - used for extended Requirements
  • Functional Requirement - used for Requirements related to function
  • Interface Requirement - used for Requirements related to Interfaces
  • Performance Requirement - used for Requirements related to performance
  • Physical Requirement - used for Requirements related to physical aspects of a system
  • Design Requirement - used for Requirements related to design

Elements can be added to the diagram by dragging-and-dropping them from the Toolbox into the Diagram View. Relationships can be created by first selecting the required relationship in the toolbox and then dragging-and-dropping between a source and target element. It is common not to create Requirement diagrams that simply list the Requirements but rather to create diagrams that show the relationships between any two Requirements or the relationships the Requirements have with other elements such as Use Cases, Activities and Blocks.