Modeling Text-Based Requirements and Relationship to Design

Requirement = capability or condition that must be met by a system, or a performance condition the system must achieve; similar requirements are grouped into a specification; requirements can be shown graphically or tabular, or in compact graphical notations in any SysML diagram. Uses <<requirement>> model element;

[1] What is the abbreviation for a requirement diagram that appears in the diagram header?

req [package or requirement] Model Element Name [diagram name]

[2] Which kind of model element can the frame of a requirement diagram represent?

The diagram frame for a requirement diagram designates a model element type that can be a package or requirement. The requirements construct can be directly show on BDD, Package diagrams and Use Case diagrams.



[3] Which standard properties are expressed in a SysML requirement?


[4] Can you add additional properties and constraints to a requirement?

A requirements profile can be applied as follow:

– Categories should match specific application; includes descriptions, stereotype properties and constraints; additional categories can be added by further stereotyping the categories shown in table 12.1

– Apply more specialized requirement stereotype (functional, interface, performance, physical, design constraint) as applicable and ensure consistency

– Specific text requirement can include more than one requirement category, use stereotype in <<guillemets>> or a comma separated list


[5] What type of requirement relationships can only exist between requirements?

Defining, deriving, satisfying, verifying, refining, copying


[6] How do you read Figure 12.3 ?


*If model elements do not appear on the same diagram, they be shown using compartment or callout notation; direct notation is used to show derive requirements or satisfy


[7] How do you express the requirement relationship in Question 6 using callout notation?

Callout is depicted as comment symbol;


[8] How do you express the requirement relationship in Question 6 using compartment notation?


[9] How do you represent a «deriveReqt» relationship between Reqt A and Reqt B in a matrix?


[10] How do you represent the rationale for the derived requirement in Figure 12.14 that the derivation is based on the xyz analysis?

Rationale = is a sysml model elemnt that captures the reason for a particular design decision; can be used anywhere, not just requirements; problem = like rationale can be used anywhere and describes a specific problem needing solved; represented with a comment symbol and <<rationale>> keyword.


[11] What is a satisfy relationship used for? (Select from answers a–c.)


  1. to ensure a requirement is met
  2. to assert a requirement is met
  3. to more clearly express a requirement

satisfy = used to assert that a model element corresponding to the design satisfies the requirement; but its not the proof (as that is done in the verify relationship);


[12] What are the elements found on either end of a verify relationship?

Verifyrelationship = a requirement and a testcase that is used to verify the requirement; test case = any method for performing the verification – could be sequence diagram, activity, or state machine diagram;



Requirements table




Requirements Matrix


 [13] What is used as a basis for a derived relationship? (Select from answers a–c.)

  1. analysis
  2. design
  3. test case

derive relationship = between derived requirement and source requirement – based on analysis; the analysis can be described in <<rationale>>


[14] How would you decompose the requirement A into two requirements A.1 and A.2 using the containment relationship? ANS = Figure 12.11



Requirements containment hierarchy using a package




Refine relationship

Refine = relationship provides capability to reduce ambiguity; give clarification; whereas derive relationships are between requirements only, the refine relationship can be between requirement and any other model element.


[15] Which relationship would you use to relate a requirement to a document?

(Select from answers a–d.)

  1. deriveReqt
  2. satisfy
  3. verify
  4. trace


Trace relationship = general purpose relationship between requirement and any other model element;



Copy relationship = to support reuse; requirement from one namespace is copy to another;


[16] Why are requirements included in SysML? (This can be a discussion topic rather than a question.)