Type safety for feature-oriented product lines

被引:0
|
作者
Sven Apel
Christian Kästner
Armin Größlinger
Christian Lengauer
机构
[1] University of Passau,Department of Informatics and Mathematics
[2] University of Magdeburg,School of Computer Science
来源
关键词
Feature featherweight Java; Feature-oriented programming; Software product lines; Type systems; Safe composition;
D O I
暂无
中图分类号
学科分类号
摘要
A feature-oriented product line is a family of programs that share a common set of features. A feature implements a stakeholder’s requirement and represents a design decision or configuration option. When added to a program, a feature involves the introduction of new structures, such as classes and methods, and the refinement of existing ones, such as extending methods. A feature-oriented decomposition enables a generator to create an executable program by composing feature code solely on the basis of the feature selection of a user—no other information needed. A key challenge of product line engineering is to guarantee that only well-typed programs are generated. As the number of valid feature combinations grows combinatorially with the number of features, it is not feasible to type check all programs individually. The only feasible approach is to have a type system check the entire code base of the feature-oriented product line. We have developed such a type system on the basis of a formal model of a feature-oriented Java-like language. The type system guaranties type safety for feature-oriented product lines. That is, it ensures that every valid program of a well-typed product line is well-typed. Our formal model including type system is sound and complete.
引用
收藏
页码:251 / 300
页数:49
相关论文
共 50 条
  • [1] Type safety for feature-oriented product lines
    Apel, Sven
    Kaestner, Christian
    Groesslinger, Armin
    Lengauer, Christian
    [J]. AUTOMATED SOFTWARE ENGINEERING, 2010, 17 (03) : 251 - 300
  • [2] Mutation Operators for Feature-Oriented Software Product Lines
    Krueger, Jacob
    Al-Hajjaji, Mustafa
    Leich, Thomas
    Saake, Gunter
    [J]. SPLC'19: PROCEEDINGS OF THE 23RD INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL A, 2020, : 12 - 12
  • [3] Verification Strategies for Feature-Oriented Software Product Lines
    Kuiter, Elias
    Knueppel, Alexander
    Bordis, Tabea
    Runge, Tobias
    Schaefer, Ina
    [J]. VAMOS'22: 16TH INTERNATIONAL WORKING CONFERENCE ON VARIABILITY MODELLING OF SOFTWARE-INTENSIVE SYSTEMS, 2022,
  • [4] Code Clones in Feature-Oriented Software Product Lines
    Schulze, Sandro
    Apel, Sven
    Kaestner, Christian
    [J]. ACM SIGPLAN NOTICES, 2011, 46 (02) : 103 - 112
  • [5] Modular Feature-Oriented Graphical Editor Product Lines
    Kuehn, Thomas
    Kassin, Kevin Ivo
    Cazzola, Walter
    Assmann, Uwe
    [J]. SPLC'18: PROCEEDINGS OF THE 22ND INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL 1, 2018, : 76 - 86
  • [6] Mutation operators for feature-oriented software product lines
    Krueger, Jacob
    Al-Hajjaji, Mustafa
    Leich, Thomas
    Saake, Gunter
    [J]. SOFTWARE TESTING VERIFICATION & RELIABILITY, 2019, 29 (1-2):
  • [7] Goal-oriented modeling and verification of feature-oriented product lines
    Asadi, Mohsen
    Groener, Gerd
    Mohabbati, Bardia
    Gasevic, Dragan
    [J]. SOFTWARE AND SYSTEMS MODELING, 2016, 15 (01): : 257 - 279
  • [8] Goal-oriented modeling and verification of feature-oriented product lines
    Mohsen Asadi
    Gerd Gröner
    Bardia Mohabbati
    Dragan Gašević
    [J]. Software & Systems Modeling, 2016, 15 : 257 - 279
  • [9] Correctness-by-Construction for Feature-Oriented Software Product Lines
    Bordis, Tabea
    Runge, Tobias
    Schaefer, Ina
    [J]. GPCE '2020: PROCEEDINGS OF THE 19TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON GENERATIVE PROGRAMMING: CONCEPTS AND EXPERIENCES, 2020, : 22 - 34
  • [10] Supporting feature-oriented evolution in industrial automation product lines
    Hinterreiter, Daniel
    Linsbauer, Lukas
    Feichtinger, Kevin
    Praehofer, Herbert
    Gruenbacher, Paul
    [J]. CONCURRENT ENGINEERING-RESEARCH AND APPLICATIONS, 2020, 28 (04): : 265 - 279