Texto alternativo

The cutting-edge Python-based tool for Automated Analysis of Feature Models using UVL and more


Easily extensible

Plugin generator

Simplifies the process of creating new plugins with a semi-automatic generator, making customization and expansion straightforward.

Variability modelling in the wild

Initially supports cardinality-based feature models, with the flexibility to easily incorporate other types like attributed feature models.

Robust solver support

PySAT integration

Utilizes the PySAT metasolver, offering access to more than ten distinct solvers. This diversity allows for optimal solution finding across various complex scenarios.

BDD integration

Utilizes the CU-BDD metasolver, offering efficient variability model analysis for some operations.

Easy to use, easy to integrate

Easy-to-use python facade

Designed with capabilities to analyse modes in Python with just a line of code.

Command line direct use

Easy to integrate in any ecosystem.

WASM support

Run analysis in your browser. Currently, both flamapy and PySAT are WASM compatible. Enable analysis with 0 configuration process.

REST / SWAGGER available

Integrate the tool in yours by means of a robust backend Rest API.

Large set of operations

Examples of operations include:

Dead features

Identifies features that cannot be included in any valid configuration due to constraints and dependencies in the model.

Core features

Identifies features that are present in all valid configurations of the feature model.

Estimated number of configurations

Provides an estimate of the total number of different configurations that can be produced from a feature model by considering all possible combinations of features.

Atomic Sets

This operation identifies atomic sets in a feature model. An atomic set is a group of features that always appear together across all configurations of the model.

Filter

This operation filters and selects a subset of configurations based on specified criteria. It helps in narrowing down the possible configurations to those that meet certain requirements.

Entities involved


Changelog

Detailed changes for each release are documented in the release notes.

Contributing

When contributing to this repository, please first read contributing.