Main Content

Track Requirements Implementation Progress

You can track the implementation progress of requirements by viewing the implementation status in the Requirements Editor. Requirements Toolbox™ checks each functional requirement in a requirement set to see if it has an implementation link and aggregates the results into a status that reflects the overall implementation progress of the requirement set.

In this step of the tutorial, you view the implementation status for the myAddReqs requirement set, change the link types for the MATLAB® code links to Implement, and justify the exclusion of requirements in myAddTestSpecification from the implementation status.

View Implementation Status

Open the myAdd project.

openProject("myAdd");

Open the myAddReqs requirement set in the Requirements Editor.

slreq.open("myAddReqs");

Enable the implementation status. In the View section, select Show Requirements > Tabular View, then select Columns > Implementation Status. Ensure that Requirements Toolbox is analyzing functional requirements for implementation links by clicking Refresh.

The implementation status for myAddReqs is shown in the Requirements Editor. The status bar is empty. The mouse points to the status bar and displays the tooltip.

The empty implementation status bar indicates that the requirements do not have implementation links. View detailed information about the implementation status by pointing to the implementation status bar for the requirement set. The tooltip indicates that the requirements are not implemented.

In Link Requirements to MATLAB Code, you created links between the requirements and the myAdd function that implements them, but the implementation status indicates that the requirements do not have implementation links. When you create links between requirements and MATLAB code, Requirements Toolbox sets the link type to Relate by default. The implementation status only checks for links with the type set to Implement.

Change Link Types

In the Requirements Editor, click Show Links. Select the first link in myAdd~m.slmx. In the right pane, under Properties, set Type to Implements.

In the Requirements Editor, link #! is selected in the myAdd~m link set. In the right pane, under Properties, the mouse points to the Implements menu item in the Type menu.

Set the link type to Implements for the other links in the link set, then save the link set. View the updated implementation status by clicking Show Requirements.

The blue color of the implementation status bar indicates that the requirements are implemented. The tooltip for the implementation status indicates that four of the requirements in myAddReqs have implementation links.

Justify Exclusion of Test Requirements

Open the myAddTestSpecification requirement set in the Requirements Editor.

slreq.open("myAddTestSpecification");

The test requirements in myAddTestSpecification do not specify behavior for the functional design, and therefore do not need to be implemented. Justify their exclusion from the implementation status by linking each requirement to a justification. Right-click requirement 1.1 and select Justification > Link with new Justification for implementation.

Requirements Toolbox adds a justification hierarchy to the myAddTestSpecification requirement set. Repeat this step for requirements 1.2 and 2.1–2.4, then save the requirement set.

The implementation status is shown for the myAddTestSpecification requirement set. The mouse points to the status bar and displays the tooltip.

The light blue color of the implementatin status bar indicates that the requirements are jusitified for exclusion from the implementation status. The tooltip for the implementation status bar for the requirement set indicates that six of the eight requirements in the requirement set are justified for exclusion from the implementation status.

Change Requirement Types

For the implementation status, Requirements Toolbox checks implementation links for requirements that have the type set to Functional. In myAddTestSpecification, the requirements with summaries Validity checks and Functional tests act as containers for the test requirements. However, their types are set to Functional, so they are included in the implementation status. Change the requirement type for both requirements by selecting the requirement in the Requirements Editor, and, in the right pane, under Properties, setting Type to Container. Save the requirement set.

In the Requirements Editor, requirement 1 in myAddTestSpecification is selected. In the right pane, under Properties, the Container menu item is selected in the Type menu.

The Requirements Editor excludes the container requirements from the implementation status. The tooltip indicates that the six functional requirements in the requirement set are justified.

The implementation status is shown and the mouse points to the status bar, displaying the tooltip.

See Also

Apps

Classes

Related Topics