Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1509837.1509846acmconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
research-article

A machine-checked model of safe composition

Published: 02 March 2009 Publication History

Abstract

Programs of a software product line can be synthesized by composing features which implement some unit of program functionality. In most product lines, only some combination of features are meaningful; feature models express the high-level domain constraints that govern feature compatibility. Product line developers also face the problem of safe composition -- whether every product allowed by a feature model is type-safe when compiled and run. To study the problem of safe composition, we present Lightweight Feature Java (LFJ), an extension of Lightweight Java with support for features. We define a constraint-based type system for LFJ and prove its soundness using a full formalization of LFJ in Coq. In LFJ, soundness means that any composition of features that satisfies the typing constraints will generate a well-formed LJ program. If the constraints of a feature model imply these typing constraints then all programs allowed by the feature model are type-safe.

References

[1]
D. Ancona and S. Drossopoulou. Polymorphic bytecode: Compositional compilation for java-like languages. In In ACM Symp. on Principles of Programming Languages 2005, pages 26--37. ACM Press, 2005.
[2]
S. Apel and D. Hutchins. An overview of the gDEEP calculus. Technical Report Technical Report MIP-0712, Department of Informatics and Mathematics, University of Passau, November 2007.
[3]
S. Apel, C. Kastner, and C. Lengauer. Feature Featherweight Java: A calculus for feature-oriented programming and stepwise refinement. In Proceedings of the 7th International Conference on Generative Programming and Component Engineering (GPCE). ACM Press, Oct. 2008.
[4]
D. Batory. Feature-oriented programming and the AHEAD tool suite. Software Engineering, 2004. ICSE 2004. Proceedings. 26th International Conference on, pages 702--703, May 2004.
[5]
D. Batory. Feature models, grammars, and propositional formulas. In Software Product Lines Conference, LNCS 3714, pages 7--20. Springer, 2005.
[6]
Y. Bertot and P. Casteran. Interactive Theorem Proving and Program Development. Springer-Verlag, Berlin, 2004.
[7]
K. Czarnecki and K. Pietroszek. Verifying feature-based model templates against well-formedness OCL constraints. In GPCE '06: Proceedings of the 5th international conference on Generative programming and component engineering, pages 211--220, New York, NY, USA, 2006. ACM.
[8]
B. Delaware, W. Cook, and D. Batory. A machine-checked model of safe composition. In Foundations of Aspected-Oriented Languages (FOAL)}, 2009.
[9]
B. C. Pierce. Types and Programming Languages. MIT Press, 2002.
[10]
R. Prieto-Diaz and J. Neighbors. Module interconnection languages: A survey. Technical report, University of California at Irvine, August 1982. ICS Technical Report 189.
[11]
P. Sewell, F. Z. Nardelli, S. Owens, G. Peskine, T. Ridge, S. Sarkar, and R. Strnivsa. Ott: effective tool support for the working semanticist. In ICFP '07: Proceedings of the 12th ACM SIGPLAN international conference on Functional programming, pages 1--12, New York, NY, USA, 2007. ACM.
[12]
R. Strnisa, P. Sewell, and M. J. Parkinson. The Java module system: core design and semantic definition. In R. P. Gabriel, D. F. Bacon, C. V. Lopes, and G. L. S. Jr., editors, OOPSLA, pages 499--514. ACM, 2007.
[13]
S. Thaker, D. Batory, D. Kitchin, and W. Cook. Safe composition of product lines. In GPCE '07: Proceedings of the 6th international conference on Generative programming and component engineering, pages 95--104, New York, NY, USA, 2007. ACM.

Cited By

View all
  • (2015)Combinatory Synthesis of Classes Using Feature GrammarsRevised Selected Papers of the 12th International Conference on Formal Aspects of Component Software - Volume 953910.1007/978-3-319-28934-2_7(123-140)Online publication date: 14-Oct-2015
  • (2014)Extending Type Inference to Variational ProgramsACM Transactions on Programming Languages and Systems10.1145/251819036:1(1-54)Online publication date: 1-Mar-2014
  • (2014)Delta-Trait Programming of Software Product LinesPart I of the Proceedings of the 6th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change - Volume 880210.1007/978-3-662-45234-9_21(289-303)Online publication date: 8-Oct-2014
  • Show More Cited By

Index Terms

  1. A machine-checked model of safe composition

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
    March 2009
    42 pages
    ISBN:9781605584522
    DOI:10.1145/1509837
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 02 March 2009

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. feature model
    2. product lines
    3. type safety

    Qualifiers

    • Research-article

    Conference

    AOSD '09

    Acceptance Rates

    Overall Acceptance Rate 5 of 6 submissions, 83%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 25 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2015)Combinatory Synthesis of Classes Using Feature GrammarsRevised Selected Papers of the 12th International Conference on Formal Aspects of Component Software - Volume 953910.1007/978-3-319-28934-2_7(123-140)Online publication date: 14-Oct-2015
    • (2014)Extending Type Inference to Variational ProgramsACM Transactions on Programming Languages and Systems10.1145/251819036:1(1-54)Online publication date: 1-Mar-2014
    • (2014)Delta-Trait Programming of Software Product LinesPart I of the Proceedings of the 6th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change - Volume 880210.1007/978-3-662-45234-9_21(289-303)Online publication date: 8-Oct-2014
    • (2014)Family-Based Performance Analysis of Variant-Rich Software SystemsProceedings of the 17th International Conference on Fundamental Approaches to Software Engineering - Volume 841110.1007/978-3-642-54804-8_7(94-108)Online publication date: 5-Apr-2014
    • (2013)Compositional type checking of delta-oriented software product linesActa Informatica10.1007/s00236-012-0173-z50:2(77-122)Online publication date: 1-Mar-2013
    • (2013)Synthesis-Based Variability Control: Correctness by ConstructionFormal Methods for Components and Objects10.1007/978-3-642-35887-6_4(69-88)Online publication date: 2013
    • (2012)A transformational proof system for delta-oriented programmingProceedings of the 16th International Software Product Line Conference - Volume 210.1145/2364412.2364422(53-60)Online publication date: 2-Sep-2012
    • (2012)A liskov principle for delta-oriented programmingProceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I10.1007/978-3-642-34026-0_4(32-46)Online publication date: 15-Oct-2012
    • (2012)Family-Based analysis of type safety for delta-oriented software product linesProceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I10.1007/978-3-642-34026-0_15(193-207)Online publication date: 15-Oct-2012
    • (2012)Applying design by contract to feature-oriented programmingProceedings of the 15th international conference on Fundamental Approaches to Software Engineering10.1007/978-3-642-28872-2_18(255-269)Online publication date: 24-Mar-2012
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media