Software modeling and measurement: the Goal/Question/Metric paradigm
Software modeling and measurement: the Goal/Question/Metric paradigm
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
A cooperative model for cross-divisional product development for a software product line
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
Footprint and feature management using aspect-oriented programming techniques
Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems
Verifying cross-cutting features as open systems
ACM SIGSOFT Software Engineering Notes
Feature interaction: a critical review and considered forecast
Computer Networks: The International Journal of Computer and Telecommunications Networking
Moving Toward Component-Based Software Development Approach
TOOLS '98 Proceedings of the Technology of Object-Oriented Languages and Systems
Proceedings of the 3rd international conference on Aspect-oriented software development
IEEE Transactions on Software Engineering
FeaturePlugin: feature modeling plug-in for Eclipse
eclipse '04 Proceedings of the 2004 OOPSLA workshop on eclipse technology eXchange
Feature oriented refactoring of legacy applications
Proceedings of the 28th international conference on Software engineering
Automating Product-Line Variant Selection for Mobile Devices
SPLC '07 Proceedings of the 11th International Software Product Line Conference
Measuring Non-Functional Properties in Software Product Line for Product Derivation
APSEC '08 Proceedings of the 2008 15th Asia-Pacific Software Engineering Conference
FEATUREHOUSE: Language-independent, automated software composition
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Reasoning about edits to feature models
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Selecting highly optimal architectural feature sets with Filtered Cartesian Flattening
Journal of Systems and Software
Configuration Lifting: Verification meets Software Configuration
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Model Checking of Domain Artifacts in Product Line Engineering
ASE '09 Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering
Measuring and characterizing crosscutting in aspect-based programs: basic metrics and case studies
FASE'07 Proceedings of the 10th international conference on Fundamental approaches to software engineering
Evolution of the linux kernel variability model
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
Approaching Non-functional Properties of Software Product Lines: Learning from Products
APSEC '10 Proceedings of the 2010 Asia Pacific Software Engineering Conference
Feature cohesion in software product lines: an exploratory study
Proceedings of the 33rd International Conference on Software Engineering
Scalable Prediction of Non-functional Properties in Software Product Lines
SPLC '11 Proceedings of the 2011 15th International Software Product Line Conference
Automated reasoning on feature models
CAiSE'05 Proceedings of the 17th international conference on Advanced Information Systems Engineering
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
Detection of feature interactions using feature-aware verification
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Predicting performance via automated feature-interaction detection
Proceedings of the 34th International Conference on Software Engineering
Quality-aware analysis in product line engineering with the orthogonal variability model
Software Quality Control
Strategies for product-line verification: case studies and experiments
Proceedings of the 2013 International Conference on Software Engineering
Family-based performance measurement
Proceedings of the 12th international conference on Generative programming: concepts & experiences
A comparison of product-based, feature-based, and family-based type checking
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Exploring feature interactions in the wild: the new feature-interaction challenge
Proceedings of the 5th International Workshop on Feature-Oriented Software Development
Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems
Hi-index | 0.00 |
Context: A software product line is a family of related software products, typically created from a set of common assets. Users select features to derive a product that fulfills their needs. Users often expect a product to have specific non-functional properties, such as a small footprint or a bounded response time. Because a product line may have an exponential number of products with respect to its features, it is usually not feasible to generate and measure non-functional properties for each possible product. Objective: Our overall goal is to derive optimal products with respect to non-functional requirements by showing customers which features must be selected. Method: We propose an approach to predict a product's non-functional properties based on the product's feature selection. We aggregate the influence of each selected feature on a non-functional property to predict a product's properties. We generate and measure a small set of products and, by comparing measurements, we approximate each feature's influence on the non-functional property in question. As a research method, we conducted controlled experiments and evaluated prediction accuracy for the non-functional properties footprint and main-memory consumption. But, in principle, our approach is applicable for all quantifiable non-functional properties. Results: With nine software product lines, we demonstrate that our approach predicts the footprint with an average accuracy of 94%, and an accuracy of over 99% on average if feature interactions are known. In a further series of experiments, we predicted main memory consumption of six customizable programs and achieved an accuracy of 89% on average. Conclusion: Our experiments suggest that, with only few measurements, it is possible to accurately predict non-functional properties of products of a product line. Furthermore, we show how already little domain knowledge can improve predictions and discuss trade-offs between accuracy and required number of measurements. With this technique, we provide a basis for many reasoning and product-derivation approaches.