A compositional approach to superimposition
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Combination of inheritance hierarchies
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Abstract syntax from concrete syntax
ICSE '97 Proceedings of the 19th international conference on Software engineering
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
Subject-oriented design: towards improved alignment of requirements, design, and code
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Hyper/J: multi-dimensional separation of concerns for Java
Proceedings of the 22nd international conference on Software engineering
A vision for management of complex models
ACM SIGMOD Record
Composing crosscutting concerns using composition filters
Communications of the ACM
ACM Transactions on Software Engineering and Methodology (TOSEM)
A State-of-the-Art Survey on Software Merging
IEEE Transactions on Software Engineering
Aspect-oriented programming with Jiazzi
Proceedings of the 2nd international conference on Aspect-oriented software development
Conquering aspects with Caesar
Proceedings of the 2nd international conference on Aspect-oriented software development
Designing software for ease of extension and contraction
ICSE '78 Proceedings of the 3rd international conference on Software engineering
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
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
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
Lightweight scalable components
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
Granularity in software product lines
Proceedings of the 30th international conference on Software 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
Type-Checking Software Product Lines - A Formal Approach
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
ICWE'07 Proceedings of the 7th international conference on Web engineering
Superimposition: a language-independent approach to software composition
SC'08 Proceedings of the 7th international conference on Software composition
Merging models with the epsilon merging language (EML)
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
Efficient layer activation for switching context-dependent behavior
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
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
Mapping features to models: a template approach based on superimposed variants
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
General composition of software artifacts
SC'06 Proceedings of the 5th international conference on Software Composition
FeatureIDE: A tool framework for feature-oriented software development
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Model Superimposition in Software Product Lines
ICMT '09 Proceedings of the 2nd International Conference on Theory and Practice of Model Transformations
Feature (De)composition in Functional Programming
SC '09 Proceedings of the 8th International Conference on Software Composition
Language-Independent Quantification and Weaving for Feature Composition
SC '09 Proceedings of the 8th International Conference on Software Composition
A model of refactoring physically and virtually separated features
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Language support for feature-oriented product line engineering
FOSD '09 Proceedings of the First International Workshop on Feature-Oriented Software Development
An orthogonal access modifier model for feature-oriented programming
FOSD '09 Proceedings of the First International Workshop on Feature-Oriented Software Development
An extension for feature algebra
FOSD '09 Proceedings of the First International Workshop on Feature-Oriented Software Development
Towards feature-driven planning of product-line evolution
FOSD '09 Proceedings of the First International Workshop on Feature-Oriented Software Development
A calculus for uniform feature composition
ACM Transactions on Programming Languages and Systems (TOPLAS)
Type safety for feature-oriented product lines
Automated Software Engineering
An algebraic foundation for automatic feature-based program synthesis
Science of Computer Programming
Categorizing and modeling variation in families of systems: a position paper
Proceedings of the Fourth European Conference on Software Architecture: Companion Volume
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Code clones in feature-oriented software product lines
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Language-independent reference checking in software product lines
FOSD '10 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development
Domain-specific composition of model deltas
ICMT'10 Proceedings of the Third international conference on Theory and practice of model transformations
Multi-dimensional variability modeling
Proceedings of the 5th Workshop on Variability Modeling of Software-Intensive Systems
Issues in model-driven behavioural product derivation
Proceedings of the 5th Workshop on Variability Modeling of Software-Intensive Systems
Feature cohesion in software product lines: an exploratory study
Proceedings of the 33rd International Conference on Software Engineering
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
Supporting program variant generation and feature files in rbFeatures
Proceedings of the 15th International Software Product Line Conference, Volume 2
Semistructured merge: rethinking merge in revision control systems
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Composing Event-B specifications: case-study experience
SC'11 Proceedings of the 10th international conference on Software composition
Goal-based behavioral customization of information systems
CAiSE'11 Proceedings of the 23rd international conference on Advanced information systems engineering
Feature interactions, products, and composition
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Towards modular code generators using symmetric language-aware aspects
Proceedings of the 1st International Workshop on Free Composition
rbFeatures: Feature-oriented programming with Ruby
Science of Computer Programming
Access control in feature-oriented programming
Science of Computer Programming
Variant-preserving refactoring in feature-oriented software product lines
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
Features and object capabilities: reconciling two visions of modularity
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
Behavioral adaptation of information systems through goal models
Information Systems
Building information system variants with tailored database schemas using features
CAiSE'12 Proceedings of the 24th international conference on Advanced Information Systems Engineering
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Pushouts in software architecture design
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Comparing program comprehension of physically and virtually separated concerns
FOSD '12 Proceedings of the 4th International Workshop on Feature-Oriented Software Development
Object-oriented design in feature-oriented programming
FOSD '12 Proceedings of the 4th International Workshop on Feature-Oriented Software Development
Program comprehension in preprocessor-based software
SAFECOMP'12 Proceedings of the 2012 international conference on Computer Safety, Reliability, and Security
Foundations of coloring algebra with consequences for feature-oriented programming
RAMiCS'12 Proceedings of the 13th international conference on Relational and Algebraic Methods in Computer Science
Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems
Feature-oriented language families: a case study
Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems
Feature-oriented software evolution
Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems
Information and Software Technology
Advanced modularity for building SPL feature models: a model-driven approach
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Exploring automated software composition with genetic programming
Proceedings of the 15th annual conference companion on Genetic and evolutionary computation
Strategies for product-line verification: case studies and experiments
Proceedings of the 2013 International Conference on Software Engineering
Feature-interaction detection based on feature-based specifications
Computer Networks: The International Journal of Computer and Telecommunications Networking
Combining concern input with program analysis for bloat detection
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Using document-oriented GUIs in dynamic software product lines
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Feature-Oriented programming with object algebras
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Features, modularity, and variation points
Proceedings of the 5th International Workshop on Feature-Oriented Software Development
FeatureIDE: An extensible framework for feature-oriented software development
Science of Computer Programming
Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems
The feature pack approach: systematically managing implementations in software ecosystems
Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems
Structural feature interaction patterns: case studies and guidelines
Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems
Hi-index | 0.01 |
Superimposition is a composition technique that has been applied successfully in many areas of software development. Although superimposition is a general-purpose concept, it has been (re)invented and implemented individually for various kinds of software artifacts. We unify languages and tools that rely on superimposition by using the language-independent model of feature structure trees (FSTs). On the basis of the FST model, we propose a general approach to the composition of software artifacts written in different languages, Furthermore, we offer a supporting framework and tool chain, called FEATUREHOUSE. We use attribute grammars to automate the integration of additional languages, in particular, we have integrated Java, C#, C, Haskell, JavaCC, and XML. Several case studies demonstrate the practicality and scalability of our approach and reveal insights into the properties a language must have in order to be ready for superimposition.