Main Content

Organize and Link Requirements

The first step in model-based systems engineering (MBSE) design using System Composer™ is to set up requirements. Requirements are a collection of statements describing the desired behavior and characteristics of a system. Requirements ensure system design integrity and are achievable, verifiable, unambiguous, and consistent with each other. Each level of design should have appropriate requirements. This example has three sets of requirements.

  1. Stakeholder needs — A set of end-user needs. Stakeholders are interested in attributes of the mobile robot associated with endurance, payload, speed, autonomy, and reliability.

  2. System requirements — A set of requirements that are linked closely with system-level design. System requirements include the derived requirements that describe how the system responds to stakeholder needs.

  3. Implementation requirements — A set of requirements that specify subsystems in the model. Implementation requirements include specifications for the battery, structure, propulsion, path generation, position, controller, and component life for individual subsystems.

By linking one requirement set to another, each high-level requirement can be traced to implementation. As the MBSE design evolves, you can use iterative requirements analysis to enhance requirement traceability and coverage. You can use the Traceability Diagram to visualize requirement traceability. See Visualize Links with a Traceability Diagram (Simulink Requirements).

Link Stakeholder Requirements to System Requirements

To access the models and supporting files used in this example, see Simulate Mobile Robot with System Composer Workflow. After loading the example, run this code in the MATLAB® Command Window.

% Load systems in memory to view requirement links
systemcomposer.loadModel('scMobileRobotHardwareArchitecture');
systemcomposer.loadModel('scMobileRobotFunctionalArchitecture');

% Load the requirement sets into memory
slreq.load('scMobileRobotStakeholderNeeds');
slreq.load('scMobileRobotRequirements');
slreq.load('scMobileRobotSubsystemRequirements');

% Open the Requirements Editor
slreq.editor

The requirement sets open in the Requirements Editor. You can link stakeholder needs to derived requirements to keep track of high-level goals. The Mean Time Before Repair requirement, STAKEHOLDER-07, is refined by the Battery Life requirement, SYSTEM-REQ-09.

The Requirements Editor shows linked requirements.

You can set a specific link type. To change link types, in the Requirements Editor, select Show Links. Change the type of the Localization requirement link, SYSTEM-REQ-05, from Related to to Implements, for the Transportation requirement, STAKEHOLDER-04. For more information, see Link Types (Simulink Requirements).

Change requirement link from Related to into Implements.

To return to interacting with requirements, in the Requirements Editor, select Show Requirements. The Transportation stakeholder needs requirement, STAKEHOLDER-04, will be implemented by the Localization system requirement, SYSTEM-REQ-05. The robot must be able to determine its current position with a specified tolerance. Right-click SYSTEM-REQ-05 and select Select for Linking with Requirement. Then, right-click on STAKEHOLDER-04 and select Create a link from SYSTEM-REQ-05 to STAKEHOLDER-04.

For more information on linking requirements to components, see Link Requirements to Components.

See Also

Related Topics