Subclack: feature-oriented programming with behavioral feature interfaces

  • Authors:
  • Thomas Thüm;Sven Apel;Andreas Zelend;Reimar Schröter;Bernhard Möller

  • Affiliations:
  • University of Magdeburg, Germany;University of Passau, Germany;University of Augsburg, Germany;University of Magdeburg, Germany;University of Augsburg, Germany

  • Venue:
  • Proceedings of the 5th Workshop on MechAnisms for SPEcialization, Generalization and inHerItance
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Feature-oriented programming extends object-oriented programming to support feature modularity. Feature modules typically cut across class boundaries to implement end-user-visible features. Customized program variants can be composed automatically given a selection of desired feature modules. We propose behavioral feature interfaces based on design by contract for precise localization of faulty feature modules. There are three different approaches for feature-module composition, which are considered to be equivalent in the literature. We discuss advantages and disadvantages for each approach with regard to behavioral feature interfaces. Based on our insights, we present Subclack as a new approach for feature-module composition combining the advantages of all existing approaches. In our examples, we use contracts defined in an feature-oriented extension of the Java Modeling Language, and discuss how they can be checked by means of runtime assertions.