Alcoa: the alloy constraint analyzer
Proceedings of the 22nd international conference on Software engineering
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
Implementing product line variabilities
SSR '01 Proceedings of the 2001 symposium on Software reusability: putting software reuse in context
Communications of the ACM
Feature-Oriented Programming and the AHEAD Tool Suite
Proceedings of the 26th International Conference on Software Engineering
Eclipse Rich Client Platform: Designing, Coding, and Packaging Java(TM) Applications
Eclipse Rich Client Platform: Designing, Coding, and Packaging Java(TM) Applications
Software Product Line Engineering: Foundations, Principles and Techniques
Software Product Line Engineering: Foundations, Principles and Techniques
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
Verifying feature-based model templates against well-formedness OCL constraints
Proceedings of the 5th international conference on Generative programming and component engineering
Automated analysis of feature models: challenges ahead
Communications of the ACM - Software product line
OPIUM: Optimal Package Install/Uninstall Manager
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Safe composition of product lines
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
Automating Product-Line Variant Selection for Mobile Devices
SPLC '07 Proceedings of the 11th International Software Product Line Conference
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Granularity in software product lines
Proceedings of the 30th international conference on Software engineering
FLiP: Managing Software Product Line Extraction and Reaction with Aspects
SPLC '08 Proceedings of the 2008 12th International Software Product Line Conference
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
Modeling scenario variability as crosscutting mechanisms
Proceedings of the 8th ACM international conference on Aspect-oriented software development
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
Type-Checking Software Product Lines - A Formal Approach
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
SAT-based analysis of feature models is easy
Proceedings of the 13th International Software Product Line Conference
Type safety for feature-oriented product lines
Automated Software Engineering
TypeChef: toward type checking #ifdef variability in C
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
Evolution of the linux kernel variability model
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
An introduction to software product line refactoring
GTTSE'09 Proceedings of the 3rd international summer school conference on Generative and transformational techniques in software engineering III
Compositional type-checking for delta-oriented programming
Proceedings of the tenth international conference on Aspect-oriented software development
Supporting consistency checking between features and software product line use scenarios
ICSR'11 Proceedings of the 12th international conference on Top productivity through software reuse
Safe Composition of Configuration Knowledge-Based Software Product Lines
SBES '11 Proceedings of the 2011 25th Brazilian Symposium on Software Engineering
VML* – a family of languages for variability management in software product lines
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Multi-view composition language for software product line requirements
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Automated reasoning on feature models
CAiSE'05 Proceedings of the 17th international conference on Advanced Information Systems 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
The PLUSS approach: domain modeling with features, use cases and use case realizations
SPLC'05 Proceedings of the 9th international conference on Software Product Lines
Type checking annotation-based product lines
ACM Transactions on Software Engineering and Methodology (TOSEM)
A theory of software product line refinement
Theoretical Computer Science
Hi-index | 0.00 |
Mistakes made when implementing or specifying the models of a Software Product Line (SPL) can result in ill-formed products - the safe composition problem. Such problem can hinder productivity and it might be hard to detect, since SPLs can have thousands of products. In this article, we propose a language independent approach for verifying safe composition of SPLs with dedicated Configuration Knowledge models. We translate feature model and Configuration Knowledge into propositional logic and use the Alloy Analyzer to perform the verification. To provide evidence for the generality of our approach, we instantiate this approach in different compositional settings. We deal with different kinds of assets such as use case scenarios and Eclipse RCP components. We analyze both the code and the requirements for a larger scale SPL, finding problems that affect thousands of products in minutes. Moreover, our evaluation suggests that the analysis time grows linearly with respect to the number of products in the analyzed SPLs.