Toolchain-independent variant management with the Leviathan filesystem

  • Authors:
  • Wanja Hofer;Christoph Elsner;Frank Blendinger;Wolfgang Schröder-Preikschat;Daniel Lohmann

  • Affiliations:
  • Friedrich--Alexander University Erlangen--Nuremberg, Germany;Friedrich--Alexander University Erlangen--Nuremberg, Germany and Siemens Corporate Research & Technologies, Erlangen, Germany;Friedrich--Alexander University Erlangen--Nuremberg, Germany;Friedrich--Alexander University Erlangen--Nuremberg, Germany;Friedrich--Alexander University Erlangen--Nuremberg, Germany

  • Venue:
  • FOSD '10 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Preprocessor-configured software needs tool support for the developer to be able to cope with the complexity introduced by optional and alternative code blocks in the source. Current approaches, which assist the software developer by providing preprocessed views, are all bound to a special integrated development environment. This eliminates them from being used both in industry settings (where domain-specific toolchains are often mandated) and in open-source projects (where diverse sets of editors and tools are being used and freedom of tool choice is crucial for the project success). We therefore propose to tackle the problem at a lower level by implementing variant views at the filesystem level. By mounting one or more variants using our Leviathan filesystem, we enable the use of standard tools such as syntax validators, code metric analysis tools, or arbitrary editors to view or modify a variant. The major benefit (and challenge) is the support for automatically writing back to the configurable code base when editing one of the mounted variant views.