Flamapy as tool
Table of contents
flamapy for feature models
flamapy has been developed thinking on extensibility and on supporting various flavours of variability models such as OVM, Doppler models, Feature Models, and Debian Variability models, among others. However, feature modelling is the de facto standard when researching and depicting variability. Therefore, we offer a prepackaged version of flamapy with all the plugins related to feature modelling, thus their operations, serializers, parsers, and the rest of the utilities for feature model reasoning.
If you want to just use flamapy for feature models simply installs as follows:
pip install flamapy
This will install the following plugins:
- flamapy_fw which installs all the backend utilities to find operations and execute them.
- flamapy_fm which installs the plugin required to read and manipulate feature models
- flamapy_sat which enables SAT solving operations on feature models
- flamapy_bdd which enables BDD solving oerations on feature models.
Interfaces
Also, to be easily used flamapy offers different interfaces.
Command-line interface
Using a command-line interface significantly enhances the tool’s efficiency and convenience, enabling quick and precise task execution with minimal overhead. You can find examples and more information here.
Easy-to-Use Python Interface
Using Python as a scripting language could be very convenient when developing scripts and integrating our analysis into other processes. However, learning how a framework as complex as flamapy could be overwhelming. To help with that flamapy offers a straightforward way to execute the most common operations in Python. You can find examples and more information here.
Using the underlying framework
Finally, even if you need to understand the framework, you can also rely on this meta-package or distribution if you just need to analyze feature models. You can find examples and more information here.
More ways to run flamapy
After those off-the-shelf options, there are other mechanisms to run or integrate flamapy in different contexts.
These ways of running flamapy , require some more knowledge of those ecosystems.
REST Interface
flamapy can be integrated into a REST/Swagger backend, allowing for remote operations and interactions. More detailes can be find here.
WASM Interface
flamapy is WASM compatible, which means it can be run directly on the client side in a web environment. This enables powerful feature model analysis directly in the browser. More detailes can be find here.