Skip to content

An extensible framework for feature-oriented software development

Notifications You must be signed in to change notification settings

PaulWestphal/FeatureIDE

 
 

Repository files navigation

FeatureIDE

An extensible framework for feature-oriented software development

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.
de.ovgu.featureide.ui.android 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
de.ovgu.featureide.fm.core Provides core components for feature modelling to create and analyze feature models and configurations.
de.ovgu.featureide.fm.ui Provides views and editors used for feature modeling. Also includes actions and commands used in them.

Extended Feature Modeling

Plugin Description
de.ovgu.featureide.fm.attributes Provides support for extended feature models and feature attributes.

Composers

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.
de.ovgu.featureide.core.munge.android 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
e.ovgu.featureide.Cloneanalysis Provides a tool to create migrated software product lines with support for feature-aware clone analysis.
de.ovgu.featureide.core.mpl WIP
de.ovgu.featureide.migration Provides components to migrate multiple projects into a single FeatureIDE project.

Examples

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.).

About

An extensible framework for feature-oriented software development

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 82.6%
  • HTML 12.7%
  • GAP 1.6%
  • MATLAB 1.2%
  • Haskell 0.5%
  • AspectJ 0.5%
  • Other 0.9%