+49 (30) 467086-20 service@microtool.de
Products » objectiF RPM » Create and Execute an Extension Function » Extension „Update data to base requirements“

Extension „Update data to base requirements“

Starting with version 5.2.3, you can download the extension function from the Amazon cloud and use it in a project of your choice.

The extension function allows you to update the properties of one or more base requirements if the derived requirements have been changed.

The extension function is executed on a derived requirement of type Requirement. The base requirement is updated if it is in the state or changes to the state defined in the extension. By default, the description is then updated. Other parameters, such as priority, stability and commitment are predefined and only need to be selected if they are also to be adopted.

You can run the extension function with an action or you can create a command for the context menu.

You can use the extension function immediately after downloading.

Hint
Make sure that Node.js is enabled for the service in the Service Manager, otherwise the extension function cannot be executed.

Configure the extension function

With the extension function there are further parameters that can be transferred in addition to the description. To do this, you only need to select the desired parameter in the Value column. Use the last parameter Von Zustand (currentState) to define the state of the base requirement. If the requirement changes to that state, the extension function will be executed. Make sure that the state is specified correctly and that it exists in the state machine for requirements. If you don’t specify a value for the parameter or the state is incorrectly written, the base requirement will not be updated.

  1. Go to the package into which the extension function was imported.
  2. Choose Edit from the context menu of the extension function. 
  3. Switch to the Parameter tab and mark in the Value column what should be transferred. 
  4. The parameter von Zustand defines which state the base requirement must have. When the base requirement changes into this state, which is set up in the state machine, the extension function is executed and the properties are updated. By default, the value is definition ongoing. You can also enter another state. Make sure that this state exists for requirements in your project and that the state is typed correctly.
  1. Save the dialog with OK.
Define additional properties

If you want to transfer additional properties, you’ll need to extend the parameter and modify the schema. System properties are already contained in the extension schema and you only need to select them. User-defined properties will need to be created before you modify the schema. 

In this example, the planned workload (system property) is also to be transferred.

Adjust extension schema

First, the planned workload is set on the main stereotype. Then you go to the requirement type that is to transfer the property and define that the property can be edited. In this example, we do this for the basic requirement.

  1. Open the extension schema with Edit.

If you want to transfer additioanl properties, you’ll need to select them in the extension schema.

  1. To begin, expand the main stereotype Requirement: [Requirement] and select the desired property (workload) by clicking the box in front of the property. The other two symbols (exclamation point and pen) are deactivated (grey).
  1. Now go to the base requirement Base requirements(derived relationships) : [DerivedReqRship] and select the desired property under the stereotype Base requirement : [Requirement] by clicking the box.
  2. Click the pen so that the property in the base requirements can be overwritten. The pen becomes blue.
  3. Deactivate the exclamation mark by clicking on it.
  1. Confirm with OK.

Define parameter

You can define parameters of both user-defined and system properties (properties from the requirements dialog). To do this, you need to technical name of the property that is to be transferred. 

  1. Open the extension function via the context menu with Edit.
  2. Click on the green Plus button and enter a name in the Name column and the technical name in the Technical Name column. Note that the technical name always begins with prop and is followed by the technical name without spaces (in Camel Case notation). In this example we have a user-defined property where the name and technical name are identical.
  3. Set the type to Boolean and and check the box in the Value column.
  1. Save with OK.
Find the technical name of properties

User-defined properties

You can create user-defined properties using the property dialog of the stereotype Requirement. The name of the property is also the technical name of the property

System properties

Here you will find additional properties from the requirement dialog:

Planned Effort = PlannedWorkload

Identifier = Identifier

Comments on Acceptance = RemarksToAcceptance

Approach / Reason = ApproachAndReason

Probability of Occurrence= OccurrenceProbability

Other Source = SourceOther

Risk: Measure = Procedures

Risk: Risk Assessment Description = RiskDescription

Risk: Risk Assessment = RiskEstimation

Other Acceptance Criteria = OtherAcceptanceCriteria

Alternatively, the technical names of the properties are displazed in the schema when you move your mouse over a property.

Define an action

If you want to run the extension function with an action, you will need to modify the state machine for requirements.

  1. Open the Settings window and open from the package state machines the state machine …for requirement.
  2. Select Edit from the context menu of the desires state.
  1. Switch to the tab Entry Actions, for example, and select the action Run Extension Function by clicking the Plus behind the entry
  2. Click the three dots and selectDaten an Basisanforderungen übergeben“.
  3. Close the dialog with OK.
Delete the extension function

If you are using the extension function in an action and/or as a command, you must first delete the command and/or the action. Only then can you remove the extension function by choosing the Delete command in the context menu of the function. This deletes the extension function, but not the extension schema, since it may be contained in other extension functions.