HOW TOs

  1. How to start?
  2. I am in the Modeling perspective. Why did my feature model disappear?
  3. How to create a model template?
  4. How to create a disjunct?
  5. How to negate a property of a disjunct?
  6. How to apply an explicit presence condition?
  7. How to apply a meta-expression?
  8. How to apply an explicit custom presence condition?
  9. How to create an instance of the model template?
  10. How to migrate the model template to the latest version of the variability profile?
  11. How to use coloring?


  1. How to start?

    - First create a feature model describing variability in your domain. Than create your UML 2.0 model. To link the feature model to the UML model simply set the name of the feature model element (root of the feature tree in the modeling pane) to the file name of the uml model (e.g.: test.emx). You can use fmp2rsm/Open Model Template action on the feature model element to create empty variability profile and apply it to the model template for the first time.

  2. I am in the modeling perspective. Why did my feature model disappear?

    - The Modeling perspective filters out anything that is not considered by it as a model file. Just switch to the Resource perspective.

  3. How to create a model template?

    - Model template is an ordinary UML 2.0 model with applied variability profile and elements annotated with presence conditions and/or meta-expressions.

  4. How to create a disjunct?

    - In the modeling pane of the feature modeling plugin select one or more features and use fmp2rsm/Create Disjunct from Selection action. This adds a new stereotype to the variability profile. Variability profile is not automatically saved. This action does not automatically migrate the model template to the latest version of the profile. (see How to migrate...)

  5. How to negate a property of a disjunct?

    - Simply use the fmp2rsm/Negate action on the property of the stereotype in variability profile. Variability profile is not automatically saved.

  6. How to apply an explicit presence condition?

    - The variability profile contains stereotypes that represent disjuncts. Apply multiple stereotypes to create a presence condition in the Disjunctive Normal Form

  7. How to apply a meta-expression?

    - First use fmp2rsm/Apply Meta-Expressions Profile action on the feature model element to create and apply the meta-expressions profile to the model template. To apply a meta-expression simply apply NameME or TypeME stereotypes to the UML element and enter XPath 2.0 expression as a value of the stereotype's expression property. The expression has to evaluate to a String value.

  8. How to apply an explicit custom presence condition?

    - Custom presence condition PC is defined in the meta-expressions profile. Apply the PC stereotype to any UML Element and enter a XPath expression that evaluates to a Boolean value as a value of the property expression.

  9. How to create an instance of the model template?

    - Use fmp2rsm/Create Template Instance action on the feature model element. The action opens only diagrams from the template instance that have changed.

  10. How to migrate the model template to the latest version of the variability profile?

    - There are two ways: (i) if the variability profile has been already applied to the model template, simply open the model template and RSM will ask you to migrate to the latest version of the profile; (ii) use fmp2rsm/Open Model Template to apply the variability profile for the first time or migrate the model template to the latest version of the profile and to open the model template and all of its diagrams.

  11. How to use coloring?

    - Choose a diagram in the Model Explorer view in the Modeling perspective. Use fmp2rsm/Apply Coloring and fmp2rsm/Remove Coloring actions. You can also use RSM's Stereotype and Visibility Type tool in the toolbar to hide variability stereotypes. NOTE: coloring doesn't work when choosing a diagram in Diagram Navigator view in the Modeling perspective.