SysML, UAF, UML, and UPDM Profiles > SysML profile > Requirements > Overview of working with requirements (SysML) > Requirement (SysML item)
  
Requirement (SysML item)
A Requirement specifies a capability or condition that must, or should, be satisfied. You specify the text of the Requirement in the Description property of the Requirement.
Modeler is integrated with the requirements management tools PTC Integrity Lifecycle Manager and IBM Rational DOORS. If you use a different requirements management tool and you want to integrate that tool with Modeler, you can create your own integration that makes use of the Modeler Automation Interface.
For more information Integration for PTC Integrity Lifecycle Manager, Integration for IBM Rational DOORS, and integrating Modeler with other requirement management tools, click here
Note that the Help files for Integration for PTC Integrity Lifecycle Manager and Integration for IBM Rational DOORS are installed only when their associated add-ins are installed.
Create a Requirement through a Modeler pane or a diagram:
In a Modeler pane, right-click the Model or the Package that is to own the Requirement, point to New, point to SysML, point to Requirements, and then click Requirement.
In a Modeler pane, right-click the Requirement or Requirement Extension that is to own the Requirement, point to New, point to SysML, and then click Requirement.
On a diagram, click the Requirement toolbar button, and then click in free space on the diagram.
Through the Requirement's property pages, you can specify the text of the Requirement through the Description property on the Text tab, and the id# property of the Requirement through the Requirement tab.
You can specify a default prefix and the number of digits used for new Requirements. How?
When shown on a diagram, a Requirement's notation is as follows:
You can show and hide compartments on a Requirement to show items related through traceability relationships, such as, satisfiedBy, verifiedBy and refinedBy compartments: right-click the Requirement, click Show/Hide Compartments, and then select the check boxes associated with the compartments you want to show. Note that empty compartments are not shown.
* 
SysML suggests that in the following example, ValueType1 tracesFrom Requirement1, and Requirement1 tracesTo ValueType1.
However, PTC's usability studies have shown that Systems Engineers find this unintuitive, so PTC has decided that for the preceding example, ValueType1 tracesTo Requirement1, and Requirement1 tracesFrom ValueType1.
When a Requirement is shown on a diagram, you can show the tracesFrom compartment.
View Requirements through the Requirements pane, expand the Requirement folder.
You can use the following relationships to link a Requirement to related Requirements and model items in the model:
Copy - Requirements that are the master or slave of the Requirement.
Derive Reqt - Requirements that derive or are derived from the Requirement.
Refine (UML Standard profile) - Requirements and items that refine the Requirement.
Satisfy - Items that satisfy the Requirement
Trace (UML Standard profile) - Requirements and items that trace the Requirement.
Verify - Items that verify the Requirement.
* 
If you are using the other SysML requirement relationships, you should not use the more generic trace link that is provided in the UML profile.
The preceding links can be created through appropriate panes, or through diagrams on which the Requirement and the associated item appear.
The SysML Profile includes non-normative Requirement Extensions. Tell me more...
A Requirement is a UML Class that is stereotyped by the «requirement» stereotype from the SysML profile.
The following sections provide information about how a Requirement is used in the model. For more information about a SysML diagram or item - click it.
Owned by
Model (UML item)
Package (UML item)
Requirement
Requirement Extensions
Owns
Allocate - the Allocate is owned jointly by the Requirement and the associated item. The access permissions you have to an Allocate are determined by the access permissions you have to the item that is allocated from - you require write access to both items to create or delete an Allocate.
Copy - the Copy relationship is owned jointly by the two Requirements it links. The access permissions you have to a Copy relationship are determined by the access permissions you have to the source Requirement.
Derive Reqt - the Derive Reqt relationship is owned jointly by the two Requirements it links. The access permissions you have to a Derive Reqt relationship are determined by the access permissions you have to the derived Requirement.
Problem
Rationale
Refine (UML Standard profile) - the Refine relationship is owned jointly by the Requirement and the associated item. The access permissions you have to a Refine relationship are determined by the access permissions you have to the refined item.
Requirement
Requirement Extensions
Satisfy - the Satisfy relationship is owned jointly by the Requirement and the associated item. The access permissions you have to a Satisfy relationship are determined by the access permissions you have to the associated item.
Trace (UML Standard profile) - the Trace relationship is owned jointly by the Requirement and the associated item. The access permissions you have to a Trace relationship are determined by the access permissions you have to the item that is traced from.
Verify - the Verify relationship is owned jointly by the Requirement and the associated item. The access permissions you have to a Verify relationship are determined by the access permissions you have to the associated item.
Shown on these diagrams
Requirements can be shown on most UML and SysML diagrams.
Block Definition Diagram
Internal Block Diagram
Parametric Diagram
Requirement Diagram
SysML Properties
allocatedFrom - lists source items that are linked through Allocate relationships (on Allocated tab when item is allocated).
allocatedTo - lists target items that are linked through Allocate relationships (on Allocated tab when item is allocated).
derived - lists source items that are linked through Derive Reqt relationships.
derivedFrom - lists target items that are linked through Derive Reqt relationships.
id# - A unique id for the Requirement, which may be an id assigned to the Requirement by an external requirements management tool.
IsDeletedInRequirementTool - specifies that the Requirement's associated item in PTC Integrity Lifecycle Manager or DOORS has been deleted (used by Integration for PTC Integrity Lifecycle Manager and Integration for IBM Rational DOORS).
isExternallyManaged - can be used to specify that the Requirement is managed by an external requirements management tool.
isInRequirementTool - specifies that the Requirement is associated with an item in PTC Integrity Lifecycle Manager or DOORS (used by Integration for PTC Integrity Lifecycle Manager and Integration for IBM Rational DOORS).
master - lists Requirements that are master Requirements, as defined through Copy relationships.
parentRequirement - lists the parent Requirement, if there is one.
problem - lists child Problems.
rationale - lists child Rationales.
refinedBy - lists source items that are linked through Refine relationships.
refines - lists target items that are linked through Refine relationships.
satisfiedBy - lists source items that are linked through Satisfy relationships.
satisfies - lists target items that are linked through Satisfy relationships.
slave - lists Requirements that are slave Requirements, as defined through Copy relationships.
subRequirement - lists child Requirements.
synchronizationStatus - can be used to specify the status of a Requirement when managed by an external requirements management tool.
tracesFrom - lists source items that are linked through Trace relationships.
tracesTo - lists target items that are linked through Trace relationships.
txt - derived from the Description property of the Requirement, but can be inherited from a master Requirement through the Copy relationship.
verifiedBy - lists source items that are linked through Verify relationships.
verifies - lists target items that are linked through Verify relationships.