Type safety for feature-oriented product lines

被引:47
|
作者
Apel, Sven [1 ]
Kaestner, Christian [2 ]
Groesslinger, Armin [1 ]
Lengauer, Christian [1 ]
机构
[1] Univ Passau, Dept Math & Informat, Passau, Germany
[2] Univ Magdeburg, Sch Comp Sci, D-39106 Magdeburg, Germany
关键词
Feature featherweight [!text type='Java']Java[!/text; Feature-oriented programming; Software product lines; Type systems; Safe composition; MINIMAL CORE CALCULUS; IMPLEMENTATION; !text type='JAVA']JAVA[!/text; EXTENSION; SUPPORT; DESIGN;
D O I
10.1007/s10515-010-0066-8
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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
页数:50
相关论文
共 50 条
  • [31] Feature-Oriented Contract Composition
    Thuem, Thomas
    Knueppel, Alexander
    Krueger, Stefan
    Bolle, Stefanie
    Schaefer, Ina
    [J]. SPLC'19: PROCEEDINGS OF THE 23RD INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL A, 2020, : 25 - 25
  • [32] Comparing the influence of using feature-oriented programming and conditional compilation on comprehending feature-oriented software
    Santos, Alcemir Rodrigues
    Machado, Ivan do Carmo
    de Almeida, Eduardo Santana
    Siegmund, Janet
    Apel, Sven
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (03) : 1226 - 1258
  • [33] Feature-oriented contract composition
    Thuem, Thomas
    Knueppel, Alexander
    Krueger, Stefan
    Bolle, Stefanie
    Schaefer, Ina
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 152 : 83 - 107
  • [34] Compositional Feature-Oriented Systems
    Dubslaff, Clemens
    [J]. SOFTWARE ENGINEERING AND FORMAL METHODS (SEFM 2019), 2019, 11724 : 162 - 180
  • [35] Streamlining feature-oriented designs
    Kuhlemann, Martin
    Apel, Sven
    Leich, Thomas
    [J]. SOFTWARE COMPOSITION, 2007, 4829 : 168 - 175
  • [36] Feature-Oriented FSMs for FPGAs
    Deters, Justin
    Gozon, Peyton
    Camp-Oberhauser, Max
    Cytron, Ron K.
    [J]. 2023 IEEE HIGH PERFORMANCE EXTREME COMPUTING CONFERENCE, HPEC, 2023,
  • [37] Comparing the influence of using feature-oriented programming and conditional compilation on comprehending feature-oriented software
    Alcemir Rodrigues Santos
    Ivan do Carmo Machado
    Eduardo Santana de Almeida
    Janet Siegmund
    Sven Apel
    [J]. Empirical Software Engineering, 2019, 24 : 1226 - 1258
  • [38] Combining feature-oriented analysis and aspect-oriented programming for product line asset development
    Lee, Kwanwoo
    Kang, Kyo C.
    Kim, Minseong
    Park, Sooyong
    [J]. SPLC 2006: 10TH INTERNATIONAL SOFTWARE PRODUCT LINE CONFERENCE, PROCEEDINGS, 2006, : 103 - +
  • [39] A feature-oriented approach to developing dynamically reconfigurable products in product line engineering
    Lee, Jaejoon
    Kang, Kyo C.
    [J]. SPLC 2006: 10TH INTERNATIONAL SOFTWARE PRODUCT LINE CONFERENCE, PROCEEDINGS, 2006, : 131 - +
  • [40] Quantifying maintainability in feature oriented product lines
    Aldekoa, Gentzane
    Trujillo, Salvador
    Sagardui, Goiuria
    Diaz, Oscar
    [J]. CSMR 2008: 12TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING: DEVELOPING EVOLVABLE SYSTEMS, 2008, : 243 - +