Overview of working with requirements (SysML)
After adding the SysML Profile to a model, you can add textual Requirements to your diagrams and show how those Requirements relate to the diagram items through the traceability relationship types. The SysML Profile also allows you to create Requirement Diagrams and Requirement Tables.
The SysML Profile creates a Requirements pane, so that you can easily work with the SysML items and diagrams you create, and explore their relationships with other Requirements and items in the model.
In addition, the SysML Profile creates context menu commands for creating Requirements, links and callouts on diagrams and generating satisfied and unsatisfied requirements reports.
To use the SysML Profile, you require a good working knowledge of SysML.
SysML panes
The SysML Profile creates two customized panes named Requirements and Requirements (Extensions).
Through the Requirements pane, you can work with the Requirements and their related items and relationships. The Requirements pane also lets you quickly navigate to Requirement Diagrams and Requirement Tables that have been created in the model.
If you expand a Stereotype folder in the Requirements pane, Modeler shows the diagrams or items that are typed by that Stereotype. In turn, you can expand a Requirement to view the items that relate to that Requirement through the traceability relationships.
The Requirements (Extensions) pane lists the non-normative Requirement extensions, that is, Design Constraints, Extended Requirements, Functional Requirements, Interface Requirements, Performance Requirements and Physical Requirements.
Note that you can show or hide the full names of items shown in profile panes through the Show Full Names in Profile Browsers command on the View menu.
Requirements
You can create Requirements through the context menu of the Model or a Package: right-click the item, and select New > SysML > Requirements > Requirement. You can also create a Requirement from a Requirement: right-click the Requirement, and select New > SysML > Requirement.
A requirement is a UML Class that is stereotyped by the «requirement» stereotype. You can create Requirement hierarchies by nesting requirements in the same way you would nest Classes.
When used on a diagram, a Requirement's notation is as follows:
You can show and hide compartments on a requirement to show properties and items that are linked through relationships such as satisfiedBy, verifiedBy and derivedFrom. To show or hide compartments, right-click the Requirement, click Show/Hide Compartments, and then select the check boxes associated with the compartments you want to show.
You can specify the default prefix and the number of digits used for new requirements.
Requirement extensions
The SysML Profile includes the following non-normative Requirement Extensions: Design Constraints, Extended Requirement, Functional Requirements, Interface Requirements, Performance Requirements and Physical Requirements.
The Requirement Extensions are subtypes of the standard Requirement item. The Requirement Extension items can be used in mostly the same way as Requirements, however, restrictions apply as to which items can be linked to a Requirement Extension through the Satisfy relationship.
For more information about Requirement Extensions, click here
Requirement diagrams
A Requirement Diagram allows you to show Requirement hierarchies, and Copy and Derive Reqt relationships between Requirements.
Requirements on diagrams
In addition to using the Requirement Diagram, you can drag a Requirement from an appropriate pane to most diagram types.
After adding a Requirement to a diagram, you can link the Requirement to model items on the diagram through the Refine, Satisfy and Verify link types.
SysML callouts
On a supported diagram you can create SysML callouts that are linked to any diagram items: right-click a diagram item, point to Add, and then click Callout Note.
When linked to a diagram item, a callout note can show compartments to display the values or linked items of the diagram item's tag definitions.
This is useful for showing items that are linked through SysML traceability relationships, as the SysML Profile sets up derived tag definitions that list items that are linked through these relationships. For example:
After adding a SysML callout note to a diagram, you can change which compartments are shown: right-click the callout note, and then click Show/Hide Compartments.
Requirements buttons
The SysML and UML Standard Profiles add buttons to the appropriate diagram tabs for creating and adding Requirements to diagrams, creating sub-requirement links, and creating the following relationships on diagrams: Copy, Derive Reqt, Refine, Satisfy, Trace and Verify relationships.
Requirement tables
When you open a Requirement Table, Modeler generates the table in HTML for viewing in your internet browser. Each time you open a Requirement Table, Modeler generates the table using the latest data from the model.
On creating a Requirement Table, the Requirement Table includes all Requirements in the model. You can specify which Packages are used to generate the Requirement Table. If you select specific Packages, only Requirements in those selected Packages (not their child Packages) are included in the Requirement Table: to specify Packages, right-click the Requirement Table, point to Links, and then click Analyzed Packages.
By default, the Requirement Table shows the Name, id# and text of the each Requirement, along with a list of items that satisfy each Requirement. You can add additional columns to the table, such as, a column to list items that verify each Requirement: in Modeler, right-click the Requirement Table, point to Set, and then click Column Definitions.
Traceability matrices and tables
The SysML and UML Standard profiles provide the following traceability relationships:
Copy
Derive Reqt
Refine
Satisfy
Trace
Verify
Having defined traceability relationships in the model, you can generate Traceability Matrices and Traceability Tables to show traceability relationships between items in the model.
For more information about traceability matrices and tables, click here