Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.


An extensible framework for feature-oriented software development

Visit our website for more information about features, news, and downloads.

Latest release: Build Status

Release candidate: Build Status

Development branch: Build Status

Plugins Overview

FeatureIDE Core Plugins

Plugin Description
de.ovgu.featureide.core Provides basic components for FeatureIDE projects and composer extensions.
de.ovgu.featureide.ui Provides configuration generators, statistical computation for feature models, generation of feature relation graphs, a collaboration view, and a configuration map view. Provides tools to convert an existing android project into a FeatureIDE project.
de.ovgu.featureide.ui.mpl Provides tools to create multiple product line (MPL) projects.

Feature Modeling

Plugin Description Provides core components for feature modelling to create and analyze feature models and configurations. Provides views and editors used for feature modeling. Also includes actions and commands used in them.

Extended Feature Modeling

Plugin Description Provides support for extended feature models and feature attributes.


Plugin Description
de.ovgu.featureide.core.runtime Provides support for runtime variability using runtime parameters and property files.
de.ovgu.featureide.core.images Provides a composer that creates variable images by overlaying selected images.
de.ovgu.featureide.core.framework Provides black-box frameworks with plug-ins.
br.ufal.ic.colligens Provides annotation-based development for C projects using the C preprocessor.
de.ovgu.featureide.core.antenna Provides annotation-based development using the Antenna preprocessor.
de.ovgu.featureide.core.munge Provides annotation-based development using the Munge preprocessor. Provides tools to convert an existing Android project into a FeatureIDE project. Also provides annotation-based development using the Munge preprocessor adapted for usage with android.
de.ovgu.featureide.core.featurehouse Provides feature-oriented programming (FOP) using FeatureHouse.
de.ovgu.featureide.core.ahead Provides feature-oriented programming (FOP) using the AHEAD composer.
de.ovgu.featureide.core.conversion.ahead-featurehouse Provides a tool to convert AHEAD projects into FeatureHouse projects.
de.ovgu.featureide.core.featurecpp Provides feature-oriented programming (FOP) in form of a C++ preprocessor that turns FeatureC++ code into C++ code. Also adopts language concepts of aspect-oriented programming (AOP).
de.ovgu.featureide.core.aspectj Provides aspect-oriented programming (AOP) using AspectJ.

Multiple Product Lines

Plugin Description
de.ovgu.featureide.Cloneanalysis Provides a tool to create migrated software product lines with support for feature-aware clone analysis.
de.ovgu.featureide.core.mpl Provides tools to create multiple product line (MPL) projects.
de.ovgu.featureide.migration Provides components to migrate multiple projects into a single FeatureIDE project.


Plugin Description
de.ovgu.featureide.examples Provides example projects showcasing different functionalities of FeatureIDE. These functionalities include each of the composers, different supported programming paradigms (AOP, FOP, etc.), and feature modeling concepts (extended Feature Models, Feature Model formats, etc.).


FeatureIDE is released under L-GPL license v3.