SysML Plugin TWRT Documentation
On this page
Systems Modeling Language (SysML) captures systems design as descriptive and analytical system models, which relate text requirements to the design and provide a baseline for analysis and verification. With the system parameter calculated, you can verify the system requirement and decide whether it is satisfied. The modeling tool enables you to perform this verification automatically.
Before performing the automatic Requirements verification, you need to get ready.
To get ready for automated Requirements verification
Create a Satisfy relationship from the Value Property to the Requirement.
The Value Property captures the system parameter whose value determines whether the system requirement is satisfied.
Do one of the following:
If the Underline Patterns in Requirement Text option is enabled, the condition pattern in the Requirement text is underlined. Move the mouse pointer over it to see the expression in the tooltip. If correct, you are ready to perform the automatic Requirement verification.
You are now ready to perform the automatic Requirement verification.
The automated Requirements verification analysis can be done directly in the Requirement Table. The analysis evaluates whether the property's value that satisfies the Requirement falls within a range of upper and lower bounds extracted from the Requirement text. Additionally, the automatically calculated margin value helps to determine how close the system model is to fulfilling Requirements.
To perform automated Requirements verification
Set the context element (i.e., a Block as the table context) to perform the context-specific analysis.
The Requirement Table with the Property, Bounds, Value, and Margin columns is created, and passing/failing Requirements are marked (see an image below).
Verification context in tables
Requirements verification limitations
Table context specification limits
The table context should be specified with a Block that is recursively composed of no more than 10,000 parts. Otherwise, the Property, Value, and Margin columns are displayed as empty, and the verification analysis is not performed. In such a case, error icons are displayed in the column headers (see image below).
Requirements refined by Constraint Blocks
The Requirements Verification analysis in the Requirement Table considers constraints extracted directly from the Requirement text only, meaning that the analysis cannot be performed for Requirements refined by Constraint Blocks.
Simulation configuration option
If an Instance is defined as the Requirement Table context, the Requirements verification analysis does not consider the Simulation configuration option Remember Failure Status.
You can also carry out Requirements verification analysis in an Instance table. While the verification in a Requirement table allows you to perform the analysis for a single instance set as the context, the verification in an Instance table allows you to perform the analysis for multiple instances simultaneously via the Enable Patterns-Based Verification option. In an Instance table, the columns represent the properties provided by the classifier specified for the table, and the appropriate cells display the property values specified in the instances you choose to display in the table.
To perform automated Requirements verification in Instance Table
With the help of simulation, you can perform automatic Requirements verification.
To perform automatic Requirements verification, you must have the Cameo Simulation Toolkit installed. How to install >>
To perform automatic Requirements verification using simulation
In the Question dialog, click Yes to load the validation rules and validate the model before the simulation or No to simulate the model without validating it.
Additional features of Cameo Simulation Toolkit
When you perform Requirements verification using simulation, you can export the simulated runtime values to Instance Specifications. The verification data (the constraint, requirement, timestamp, margin, and status) is stored within tagged values of the «VerificationStatus» stereotype, which is applied to the slot values of the exported Instance Specifications.
The table below lists the tagged values of the «VerificationStatus» stereotype.
Tag | Description |
|---|---|
| constraint | The name of the constraint against which a value is tested. |
| margin | The result of comparing the tested value (for a property that satisfies a requirement) with the requirement boundary. |
requirement | The name of the requirement against which a value is tested. |
status | The verification result (pass or fail). |
| timestamp | The timestamp of the first recorded failure. |
Once the instances are enriched with verification-specific data (exported runtime values), you can use them in either Instance or Requirement tables to review the verification results. But before that, you need to ensure that the Enable Patterns-Based Verification option is turned off.
By default, the Enable Patterns-Based Verification option is enabled in Requirement tables and disabled in Instance tables. Make sure to enable/disable it based on the type of verification you want to display.
To learn more, see the Enable Patterns-Based Verification option page.