MOSKitt4SPL – An open-source tool for analysing and designing Dynamic Software Product Lines


MOSKitt4SPL is a free open-source tool which gives support for modeling Software Product Lines (SPL). MOSKitt4SPL is based on MOSKitt and built on Eclipse. It has been developed using EMF, GMF and ATL.

MOSKitt4SPL allows Software Product Lines (SPL) Modeling, Dynamic SPL Modeling and Model Validation.

The Software Product Lines Modeller provides:

  1. A Feature Model Editor. Feature Models (FM) are a widely used notation to describe a set of products in a product line and to capture the variability that exists in every product.
  2. A Feature Model Configurator. Configurations of a SPL are represented as selections of features from the Feature Model. Each configuration is defined by the set of feature states in the Feature Model.

Recently, there have been increasing demands for the postponement of configuration and binding at runtime. DSPLs bind variation points at runtime, initially when software is launched to adapt to the current situation, as well as during operation to adapt to changes in the environment.

The Dynamic SPL Modeller provides:

  1. A Resolution Model Editor. Resolutions define the selection of a set of options in the Feature Model when a context change occurs.
  2. An Adaptation Space Generator. A DSPL’s execution can be abstracted as a highly connected state machine where the states are the possible system configurations and the transitions the migration paths. MOSKitt4SPL fully generates the implicit Adaptation Space (in form of a state machine) from the DSPL specification.
  3. A set of predefined Refinements: MOSKitt4SPL provides a series of refinements to automatically ensure behavioral issues in the Adaptation Space.

Finally, MOSKitt4SPL integrates the FaMa (FeAture Model Analyzer) Framework to enable the automated analysis of Feature Models and Configuration Models.