Virtual classes: a powerful mechanism in object-oriented programming
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
A syntactic approach to type soundness
Information and Computation
Using role components in implement collaboration-based designs
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
Separating features in source code: an exploratory study
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Software Engineering and Methodology (TOSEM)
Types and programming languages
Types and programming languages
Dynamically Composable Collaborations with Delegation Layers
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Handling Preprocessor-Conditioned Declarations
SCAM '02 Proceedings of the Second IEEE International Workshop on Source Code Analysis and Manipulation
Jam---designing a Java extension with mixins
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
IEEE Transactions on Software Engineering
Scalable extensibility via nested inheritance
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Variability management with feature-oriented programming and aspects
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Scalable component abstractions
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Classbox/J: controlling the scope of change in Java
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A disciplined approach to aspect composition
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Traits: A mechanism for fine-grained reuse
ACM Transactions on Programming Languages and Systems (TOPLAS)
MultiJava: Design rationale, compiler implementation, and applications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Eliminating distinctions of class: using prototypes to model virtual classes
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Verifying feature-based model templates against well-formedness OCL constraints
Proceedings of the 5th international conference on Generative programming and component engineering
Tribe: a simple virtual class calculus
Proceedings of the 6th international conference on Aspect-oriented software development
Safe composition of product lines
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
The java module system: core design and semantic definition
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
A Case Study Implementing Features Using AspectJ
SPLC '07 Proceedings of the 11th International Software Product Line Conference
FeatherTrait: A modest extension of Featherweight Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Granularity in software product lines
Proceedings of the 30th international conference on Software engineering
FAME-DBMS: tailor-made data management solutions for embedded systems
SETMDM '08 Proceedings of the 2008 EDBT workshop on Software engineering for tailor-made data management
IEEE Transactions on Software Engineering
Code generation to support static and dynamic composition of software product lines
GPCE '08 Proceedings of the 7th international conference on Generative programming and component engineering
Feature featherweight java: a calculus for feature-oriented programming and stepwise refinement
GPCE '08 Proceedings of the 7th international conference on Generative programming and component engineering
FEATUREHOUSE: Language-independent, automated software composition
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Fitting the pieces together: a machine-checked model of safe composition
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
A model of refactoring physically and virtually separated features
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Type-Checking Software Product Lines - A Formal Approach
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Tailor-made data management for embedded systems: A case study on Berkeley DB
Data & Knowledge Engineering
A calculus for uniform feature composition
ACM Transactions on Programming Languages and Systems (TOPLAS)
SAT-based analysis of feature models is easy
Proceedings of the 13th International Software Product Line Conference
ICWE'07 Proceedings of the 7th international conference on Web engineering
Lightweight family polymorphism
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Towards the development of ubiquitous middleware product lines
SEM'04 Proceedings of the 4th international conference on Software Engineering and Middleware
Evaluating support for features in advanced modularization technologies
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
FeatureC++: on the symbiosis of feature-oriented and aspect-oriented programming
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Feature models, grammars, and propositional formulas
SPLC'05 Proceedings of the 9th international conference on Software Product Lines
A calculus for uniform feature composition
ACM Transactions on Programming Languages and Systems (TOPLAS)
Flexible and scalable consistency checking on product line variability models
Proceedings of the IEEE/ACM international conference on Automated software engineering
Multi-Level Product Line Customization
Proceedings of the 2010 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the 9th SoMeT_10
TypeChef: toward type checking #ifdef variability in C
FOSD '10 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development
Patching product line programs
FOSD '10 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development
Language-independent reference checking in software product lines
FOSD '10 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development
Delta-oriented programming of software product lines
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
Compositional type-checking for delta-oriented programming
Proceedings of the tenth international conference on Aspect-oriented software development
The road to feature modularity?
Proceedings of the 15th International Software Product Line Conference, Volume 2
Automatic detection of feature interactions using the Java modeling language: an experience report
Proceedings of the 15th International Software Product Line Conference, Volume 2
Dynamic delta-oriented programming
Proceedings of the 15th International Software Product Line Conference, Volume 2
Tailoring dynamic software product lines
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Variability-aware parsing in the presence of lexical macros and conditional compilation
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Access control in feature-oriented programming
Science of Computer Programming
Row types for delta-oriented programming
Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems
Cool features and tough decisions: a comparison of variability modeling approaches
Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems
Intraprocedural dataflow analysis for software product lines
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Detection of feature interactions using feature-aware verification
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Type checking annotation-based product lines
ACM Transactions on Software Engineering and Methodology (TOSEM)
Applying design by contract to feature-oriented programming
FASE'12 Proceedings of the 15th international conference on Fundamental Approaches to Software Engineering
A transformational proof system for delta-oriented programming
Proceedings of the 16th International Software Product Line Conference - Volume 2
A formal foundation for dynamic delta-oriented software product lines
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Family-based deductive verification of software product lines
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Toward variability-aware testing
FOSD '12 Proceedings of the 4th International Workshop on Feature-Oriented Software Development
A variability-aware module system
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
A liskov principle for delta-oriented programming
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
Conflict detection in delta-oriented programming
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
Family-Based analysis of type safety for delta-oriented software product lines
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
Feature-oriented language families: a case study
Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems
The crosscutting impact of the AOSD Brazilian research community
Journal of Systems and Software
Safe composition of configuration knowledge-based software product lines
Journal of Systems and Software
Subclack: feature-oriented programming with behavioral feature interfaces
Proceedings of the 5th Workshop on MechAnisms for SPEcialization, Generalization and inHerItance
Scalable analysis of variable software
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
SPLLIFT: statically analyzing software product lines in minutes instead of years
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
SPLEMMA: a generic framework for controlled-evolution of software product lines
Proceedings of the 17th International Software Product Line Conference co-located workshops
Feature-interaction detection based on feature-based specifications
Computer Networks: The International Journal of Computer and Telecommunications Networking
A comparison of product-based, feature-based, and family-based type checking
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Extending Type Inference to Variational Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Feature-Oriented programming with object algebras
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Intraprocedural dataflow analysis for software product lines
Transactions on Aspect-Oriented Software Development X
Hi-index | 0.00 |
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.