Flamapy as tool

Table of contents

  1. flamapy for feature models
  2. Interfaces
    1. Command-line interface
    2. Easy-to-Use Python Interface
    3. Using the underlying framework
  3. More ways to run flamapy
    1. REST Interface
    2. WASM Interface

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.


Table of contents