2014 News
- We published an Inria research report "Modeling Variability in the Video Domain: Language and Experience Report". This report presents the design rational and main constructs behind VM. PDF HAL.
- We presented the paper "ViViD: A Variability-Based Tool for Synthesizing Video Sequences" in the tool demonstrations track of the 18th International Software Product Line Conference 2014 (SPLC'14) at Florence, Italy. This paper summarizes the current VM tool support. PDF HAL.
- We presented the paper "A Variability-Based Testing Approach for Synthesizing Video Sequences" in the main research track of the International Symposium on Software Testing and Analysis (ISSTA'14). This paper presents pair-wise multi-objective configurations generation based on the VM language. PDF HAL.
VM was created as part of the ViViD Framework (https://github.com/ViViD-DiverSE/). In the ViViD-DiverSE repository you will find a copy of the VM source files (https://github.com/ViViD-DiverSE/VM-Source) as well as VANE, a pair-wise generator for video configuration files based on VM (https://github.com/ViViD-DiverSE/VANE).
An enhanced version of VM (VM v.2.1) is placed in the repository https://github.com/FAMILIAR-project/VM-language of the FAMILIAR-Project (http://familiar-project.github.io). That project is one of the projects of the DiverSE group of INRIA, Rennes, France (http://diverse.irisa.fr).
VM special features
The most common types of additional information supported by VM are:
-
Default values that help to complete partial configurations,
-
Deltas to discretise real domains,
- Controlled descriptions in natural language about the model itself, features, attributes and constraints,
-
Multi-ranges and multi-deltas that allow to use several ranges and deltas to define the domain of the values of an attribute,
-
Not translatable tags a purely informative feature or attribute,
-
Not decidable tags a feature or attribute that do not help to differentiate products,
-
Runtime tags a feature or attribute that varies only at runtime,
-
Multi-objective functions allow to filter valid configurations. For example, generating only low-cost product configurations that also have a high-performance and a high-security level.
_Also VM supports the most advanced characteristics in extended feature models, for example:
- Feature attributes.
- Multi-features.
- Packages and import mechanisms.
- Meta-information about features, attributes, constraints and the model itself.
- Configuration of feature and attributes values using tables.
- Constraints that support features, attributes, values and a rich set of operations and functions.
Installation
Only prerequisite:
Any updated Eclipse installation (https://www.eclipse.org/downloads/).
We tested VM using the Eclipse Kepler (4.3.2) SR2 Eclipse Modeling Tools, but you can use lighter versions such as Eclipse Standard, Eclipse IDE for Java and DSL Developers.
The VM language is composed of Eclipse plugins. You can install them using our Eclipse update site: http://mao2013.github.io/VM/vmUpdateSite/
If you are not sure where to introduce our update site address, follow the next steps:
- In Eclipse, choose Help > Install New Software...
- In the "Work with" section, click the Add... button. The "Add Repository" dialog box appears.
- Write
http://mao2013.github.io/VM/vmUpdateSite/
in "Location" and click the OK button. The "Available Software" wizard appears.
- click the Select All and then click Finish.
- Eclipse will take a while to resolve dependencies and ask you if you are sure to install unsigned content. Agree and accept all the questions.
- Restart Eclipse.
Tutorials and examples
Please visit our VM project wiki Here.
Source and grammar
Please visit our VM project to obtain version 2.0 Here
Technical support
Do you still have troubles with VM? Please send an e-mail to alferez.mauricio@gmail.com or mathieu.acher@irisa.fr.