Skip to content

Latest commit

 

History

History
85 lines (54 loc) · 2.65 KB

getting-started.md

File metadata and controls

85 lines (54 loc) · 2.65 KB
layout title nav_order
default
Getting started
2

Getting started

{: .no_toc }

Table of contents

{: .no_toc .text-delta }

  1. TOC {:toc}

Installation

To analyze feature models, you can use the flamapy distribution. It requires Python >= 3.9.

{: .important }

It's recommended to use a virtual environment (venv) for installation to avoid conflicts with other packages. Here’s how you can set it up:

python -m venv flamapyenv && source flamapyenv/bin/activate

Install the distribution:

pip install flamapy

Basic operations

To test some basic operations, you need UVL models. Several are available at UVLHub. If you prefer, you can download a test one:

wget -q "https://raw.githubusercontent.com/flamapy/flamapy/main/resources/models/simple/valid_model.uvl"
wget -q "https://raw.githubusercontent.com/flamapy/flamapy/main/resources/configurations/valid_configuration.csvconf"

Validate the model

To check if the model is valid, run:

flamapy-fm-cli --modelPath="./valid_model.uvl" valid

Get all products

To generate all possible products from the model, use:

flamapy-fm-cli --modelPath="./valid_model.uvl" products

Validate a configuration

To verify if a specific configuration is valid, run:

flamapy-fm-cli --modelPath="./valid_model.uvl" valid_configuration ./valid_configuration.csvconf

I want to use more feature models analysis operations:

{% include flamapy.html %} runs on a framework based on Core / Plugins architecture. If you are interested in more feature model operations, you have several options:

Option 1: using the feature models distribution

We have prepared the flamapy distribution which acts as an interface and is specific to feature models.

Option 2: using the framework in development mode

You can choose not to use the distribution. In that case, you have to install the core and the corresponding plugin in developer mode.

To set up your environment in developer mode and work directly with the plugins, visit the section 'Setting the development environment'

You can check the rest of operations of the plugin for feature models.

I want to use operations from other plugins:

Of course, {% include flamapy.html %} incorporates more plugins. In Core and plugins you can check the rest of plugins.