• DocumentCode
    742300
  • Title

    A Study of Variability Models and Languages in the Systems Software Domain

  • Author

    Berger, Theodore ; She, Steven ; Lotufo, Roberto ; Wasowski, Andrzej ; Czarnecki, Krzysztof

  • Author_Institution
    IT Univ. of Copenhagen, Copenhagen, Denmark
  • Volume
    39
  • Issue
    12
  • fYear
    2013
  • Firstpage
    1611
  • Lastpage
    1640
  • Abstract
    Variability models represent the common and variable features of products in a product line. Since the introduction of FODA in 1990, several variability modeling languages have been proposed in academia and industry, followed by hundreds of research papers on variability models and modeling. However, little is known about the practical use of such languages. We study the constructs, semantics, usage, and associated tools of two variability modeling languages, Kconfig and CDL, which are independently developed outside academia and used in large and significant software projects. We analyze 128 variability models found in 12 open--source projects using these languages. Our study 1) supports variability modeling research with empirical data on the real-world use of its flagship concepts. However, we 2) also provide requirements for concepts and mechanisms that are not commonly considered in academic techniques, and 3) challenge assumptions about size and complexity of variability models made in academic papers. These results are of interest to researchers working on variability modeling and analysis techniques and to designers of tools, such as feature dependency checkers and interactive product configurators.
  • Keywords
    public domain software; simulation languages; software engineering; CDL language; FODA; Kconfig language; associated language tools; feature dependency checkers; interactive product configurators; language constructs; language semantics; language usage; open-source projects; software projects; systems software domain; variability analysis techniques; variability modeling languages; variability models; Analytical models; Biological system modeling; Computational modeling; Computer architecture; Product line; Semantics; Software products; Empirical software engineering; configuration; feature modeling; open source; software product lines; variability modeling;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2013.34
  • Filename
    6572787