ABSTRACT
Software product-line engineering aims at developing families of related products that share common assets to provide customers with tailor-made products. Customers are often interested not only in particular functionalities (i.e., features), but also in non-functional quality attributes, such as performance, reliability, and footprint. Measuring quality attributes of all products of a product line usually does not scale. In this research-in-progress report, we propose a systematic approach aiming at efficient and scalable prediction of quality attributes of products. To this end, we establish predictors for certain categories of quality attributes (e.g., a predictor for high memory consumption) based on software and network measures, and receiver operating characteristic analysis. We use these predictors to guide a sampling process that takes the assets of a product line as input and determines the products that fall into the category denoted by the given predictor (e.g., products with high memory consumption). We propose to use predictors to make the process of finding "acceptable" products more efficient. We discuss and compare several strategies to incorporate predictors in the sampling process.
- D. Benavides, S. Segura, and A. R. Cortés. Automated analysis of feature models 20 years later: A literature review. Inf. Syst., 35(6):615--636, 2010. Google ScholarDigital Library
- P. Bhattacharya, M. Iliofotou, I. Neamtiu, and M. Faloutsos. Graph-based analysis and prediction for software evolution. In ICSE, pages 419--429, 2012. Google ScholarDigital Library
- P. Clements and L. Northrop. Software Product Lines: Practices and Patterns. SEI Series in Software Engineering. Addison-Wesley, 2002.Google Scholar
- K. Czarnecki and U. Eisenecker. Generative programming - methods, tools, and applications. Addison Wesley, 2000. Google ScholarDigital Library
- F. Eichinger, D. Kramer, K. Böhm, and W. Karl. From source code to runtime behaviour: Software metrics help to select the computer architecture. In SGAI, pages 363--376, 2009.Google Scholar
- N. E. Fenton and S. L. Pfleeger. Software Metrics - A Rigorous and Practical Approach. International Thomson, 1996. Google ScholarDigital Library
- B. Kitchenham, L. Pickard, and S. Linkman. An evaluation of some design metrics. Software Engineering Journal, 5:50--58, 1990. Google ScholarDigital Library
- B. Littleword. Forecasting software reliability. In Software Reliability Modelling and Identification, pages 141--206, 1987. Google ScholarDigital Library
- P. Louridas, D. Spinellis, and V. Vlachos. Power laws in software. ACM Trans. Softw. Eng. Methodol., 18:2:1--2:26, 2008. Google ScholarDigital Library
- N. Nisan, T. Roughgarden, E. Tardos, and V. V. Vazirani. Algorithmic Game Theory. Cambridge University Press, 2007. Google ScholarCross Ref
- R. Shatnawi, W. Li, J. Swain, and T. Newman. Finding software metrics threshold values using ROC curves. Journal of Software Maintenance, 22(1):1--16, 2010. Google ScholarDigital Library
- N. Siegmund, S. Kolesnikov, C. Kästner, S. Apel, D. Batory, M. Rosenmüller, and G. Saake. Predicting performance via automated feature-interaction detection. In ICSE, pages 167--177, 2012. Google ScholarDigital Library
- N. Siegmund, M. Rosenmüller, C. Kästner, P. Giarrusso, S. Apel, and S. S. Kolesnikov. Scalable prediction of non-functional properties in software product lines. In SPLC, pages 160--169, 2011. Google ScholarDigital Library
- J. Sincero, O. Spinczyk, and W. Schröder-Preikschat. On the configuration of non-functional properties in software product lines. In SPLC, pages 167--173, 2007.Google Scholar
Index Terms
- Predicting quality attributes of software product lines using software and network measures and sampling
Recommendations
Using knowledge-based systems to manage quality attributes in software product lines
SPLC '11: Proceedings of the 15th International Software Product Line Conference, Volume 2Product configuration in a feature model in software product line engineering is a process, in which the desired features are selected based on the customers' functional requirements and non-functional requirements. The functional requirements of the ...
Evaluation of Quality Attribute Variability in Software Product Families
ECBS '08: Proceedings of the 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based SystemsSoftware product family or line is a software engineering paradigm that systematizes reuse. In Software Product Line Engineering, two phases are distinguished: Domain Engineering which is in charge of developing a common infrastructure and assets and ...
A systematic review of quality attributes and measures for software product lines
It is widely accepted that software measures provide an appropriate mechanism for understanding, monitoring, controlling, and predicting the quality of software development projects. In software product lines (SPL), quality is even more important than ...
Comments