The design and implementation of hierarchical software systems with reusable components
ACM Transactions on Software Engineering and Methodology (TOSEM)
SIGSOFT '93 Proceedings of the 1st ACM SIGSOFT symposium on Foundations of software engineering
Refactoring object-oriented frameworks
Refactoring object-oriented frameworks
Reuse contracts: managing the evolution of reusable assets
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
An approach for exploring code improving transformations
ACM Transactions on Programming Languages and Systems (TOPLAS)
Advanced compiler design and implementation
Advanced compiler design and implementation
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Proving correctness of compiler optimizations by temporal logic
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Practical analysis for refactoring
Practical analysis for refactoring
IEEE Transactions on Software Engineering
Formalizing refactorings with graph transformations: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice
Refactoring support for class library migration
OOPSLA '05 Proceedings of the 20th 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
New methods in software product line practice
Communications of the ACM - Software product line
Safe composition of product lines
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
Feature Diagrams and Logics: There and Back Again
SPLC '07 Proceedings of the 11th International Software Product Line Conference
On the Design and Development of Program Families
IEEE Transactions on Software Engineering
Granularity in software product lines
Proceedings of the 30th international conference on Software engineering
ReBA: refactoring-aware binary adaptation of evolving libraries
Proceedings of the 30th international conference on Software engineering
IEEE Transactions on Software Engineering
On the modularity of feature interactions
GPCE '08 Proceedings of the 7th international conference on Generative programming and component engineering
A machine-checked model of safe composition
Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
FOOD: An Intermediate Model for Automated Refactoring
Proceedings of the 2006 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the fifth SoMeT_06
Type-Checking Software Product Lines - A Formal Approach
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Feature models, grammars, and propositional formulas
SPLC'05 Proceedings of the 9th international conference on Software Product Lines
ICSR '09 Proceedings of the 11th International Conference on Software Reuse: Formal Foundations of Reuse and Domain Engineering
An algebraic foundation for automatic feature-based program synthesis
Science of Computer Programming
Patching product line programs
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
Feature-based composition of software architectures
ECSA'10 Proceedings of the 4th European conference on Software architecture
Compositional type-checking for delta-oriented programming
Proceedings of the tenth international conference on Aspect-oriented software development
Unifying design and runtime software adaptation using aspect models
Science of Computer Programming
A feature-based approach for modeling role-based access control systems
Journal of Systems and Software
Row types for delta-oriented programming
Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems
Detecting inconsistencies in multi-view models with variability
ECMFA'10 Proceedings of the 6th European conference on Modelling Foundations and Applications
Verification of aspectual composition in feature-modeling
SEFM'12 Proceedings of the 10th international conference on Software Engineering and Formal Methods
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
Hi-index | 0.01 |
Programs can be composed from features. We want to verify automatically that all legal combinations of features can be composed safely without errors. Prior work on this problem assumed that features add code monotonically. We generalize prior work to enable features to add and remove code, describe our analyses and implementation, and review case studies. We observe that more expressive features increase the complexity of developed programs rapidly -- up to the point where tools and automated concepts as presented in this paper are indispensable for verification.