Specialized requirement types

You can specify specialized requirements types by using the subtyping features of stereotypes. Systems engineers often employ use-case diagrams to define requirements.

The following example of these stereotypes can be examined in the System Samples directory in the SysMLHandset project.

Requirements diagram with subtyping features of stereotypes
  • <<extend>> shows that a requirement expands or provides more detailed view of another requirement. (See Req 4.2 and 4.1 in the example.)
  • <<derive>> shows a relationship between two requirements and supplies additional details. A derive requirement often reflects assumptions about the implementation of the system. (In the diagram, the arrow direction is from the derived to the original requirement.)
  • <<composite>> requirements are the subrequirements within the overall requirements hierarchy. With this structure a complex requirement can be decomposed into its containing child requirements.
  • <<satisfy>> relationship identifies the system or other model element intended to satisfy or fulfill the requirement. (In the diagram, the arrow direction is from the satisfying to the satisfied.)
  • <<verify>> shows the relationship between a requirement and its test case. A test case is typically expressed as an activity or interaction diagram.
  • <<refine>> relationship shows how a model element or set of elements further explains a requirement.
  • <<trace>> requirement relationship provides a general-purpose relationship between a requirement and any other model element. The semantics of <<trace>> do not include real constraints and, as a result, is not used with any of the other requirements relationships listed previously.
As a systems engineers to employ use-case diagrams to define requirements, for example, provides the following advantages:
  • Naming system capabilities to add specificity to design work
  • Showing important user interactions with the system to consider in the design
  • Returning a result visible to one or more actors
  • Organizing requirements by the use cases to recognize possible design flaws early in the design process
  • Assisting project planning by revealing important relationships in the use cases