Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Model Based System Engineering tutorial with ATM system
We have 6 steps. Step 1 is described in this page.
Step 1: define a requirement meta model
Step 2: import or reference system requirements
Step 3: refine system requirements through a SysML model
Step 4: allocate functions on components in SysML
Step 5: finalize traceability with subsystem requirements
Step 6: update requirements and analyse impacts
The goal of this first step is to define a classification of requirements: types and associated attributes, and scopes (levels). when this classification is done, we can import, create trace requirements and put elements in the classification.
Requirement meta model is a configuration. It is done in ReqCycle preferences. You can access preferences from top menu "ReqCycle" and sub menu "ReqCycle preferences".
Creation of a data model
Go to data models preferences and create a new requirement data model "MyReqDataModel" with "+" button
Creation of requirement typesl
Go to "RequirementTypes" preference (below data models) and select "MyReqDataModel" data model. Now create a new Requirement type "Functional" with "+" button
And continue by creating custom requirement attributes for type "Functional". Select "Functional" requirement type and then create new attribute with "+" button.
Create "revision" and "status" both of type "String" and "derived" of type "boolean".
Now let us create two other requirement types : "Safety" and "Security". For safety type, add same custom requirements than for functional, with additional "SafetyLevel" of type "String". For security type, add same custom requirements than for functional, with additional "SecurityLevel" of type "String".
Note: Enum types can be defined in ReqCycle and used as attribute types, but for now there are restrictions on enums for some requirement import wizards. So here we use "String" as a workaround. In future releases, we will be able to use enums.
Creation of requirement scopes
Go to "Scope" preference (below data models) and select "MyReqDataModel" data model. Now create a new scope "System" with "+" button
Note: we will create other scopes later in this tutorial, one for each subsystem.
Now apply all modifications by clicking "OK" button on the bottom part of the preferences.
ReqCycle informs that you it will restart. Say Yes.
After restart, go to ReqCycle preferences again and check that your data model is complete : three requirement types, one scope.