Domain-Specific Languages (DSL) - Master Cloud Computing & Services Project - Université de Rennes 1
Domain-Specific Language (DSL) development for modelling variability, using JAVA, Eclipse XTEXT and XTEND. This includes :
- Creating an abstract syntax and grammar for our DSL;
- Developing model transformations towards other file formats (JSON, Natural Language, CNF);
- Solving (Deadlock feature detection, satisfiability...) random Feature Models using our DSL and implemented solvers such as Sat4J.
Practical uses of our DSL will be shown through the development of a feature model configurator, using NodeJS.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Clone this repo, build the docker image:
git clone https://github.com/alexisfacques/DSL-Feature-Modelling.git
cd DSL-Feature-Modelling/web
docker build --tag featuremodelling .
- Run the image as such:
docker run -v -p 8080:8080 featuremodelling
- Web feature model configurator is available on
http//localhost:8080
.
Project report is available here
Worth checking:
Worth checking:
- DIMACS transformation strategy (interoperability with SAT4J solvers) solvers
- JSON transformation strategy
- Minizinc format transformation strategy (interoperability with CSP solvers)
- SAT4J Solver implementation
- Random feature model generator
- Executable .jars files
Worth checking:
This project is licensed under the MIT License.