Feature Interactions in Highly Configurable Systems: A Dynamic Analysis Approach with Varxplorer

  • Larissa Rocha Soares Universidade Federal da Bahia http://orcid.org/0000-0002-8069-5249
  • Eduardo Almeida Universidade Federal da Bahia
  • Ivan Machado Universidade Federal da Bahia
  • Christian Kästner Carnegie Mellon University

Resumo


Highly-configurable systems provide significant reuse opportunities by tailoring system variants based on a set of features. Those features can interact in undesired ways which may result in faults. Thus, we propose VarXplorer, a dynamic and iterative approach to detect suspicious interactions. To evaluate whether VarXplorer helps improving the performance of identifying suspicious interactions, we performed two empirical studies. Our results shows that from the VarXplorer graphs, participants are able to identify suspicious interactions more than 3 times faster compared to the state-of-the-art tool. Additionally, the iterative detection process provides a more efficient feature interaction analysis, reducing the data developers needs to check to find problematic interactions.
Palavras-chave: feature interaction, runtime analysis, highly configurable systems, controlled experiment, systematic review

Referências

Cohen, M. B., Dwyer, M. B., and Shi, J. (2007). Interaction testing of highly-configurable systems in the presence of constraints. In Int. Symp. on Software Testing and Analysis, ISSTA, pages 129–139, NY, USA. ACM.

Griffeth, N., Blumenthal, R., Gregoire, J.-C., and Ohta, T. (2000). Feature interaction detection contest of the fifth international workshop on feature interactions.Computer Networks, 32(4):487 – 510.

Heiman, G. W. (2013).Basic statistics for the behavioral sciences. Cengage Learning.Kim, C. H. P., Marinov, D., Khurshid, S., Batory, D., Souto, S., Barros, P., and D’Amorim, M. (2013). SPLat: Lightweight Dynamic Analysis for Reducing Combinatorics in Testing Configurable Systems. In 9th Joint Meeting on Foundations of Software Engineering, ESEC/FSE, pages 257–267, NY, USA. ACM.

Li, H. C., Krishnamurthi, S., and Fisler, K. (2005). Modular verification of open features using three-valued model checking. Automated Software Engg., 12(3):349–382.

Lotufo, R., She, S., Berger, T., Czarnecki, K., and Wasowski, A. (2010). Evolution of the linux kernel variability model. Int. Software Product Lines Conference, pages 136–150, Berlin. Springer-Verlag.

Maity, S. and Nayak, A. (2005). Improved test generation algorithms for pair-wise testing. In 16th IEEE Int. Symposium on Software Reliability Engineering (ISSRE).

Meinicke, J., Wong, C. P., Kästner, C., Thüm, T., and Saake, G. (2016). On essential configuration complexity: Measuring interactions in highly-configurable systems. In 31st Int. Conf. on Automated Software Engineering, pages 483–494.

Nadi, S., Berger, T., Kästner, C., and Czarnecki, K. (2014). Mining configuration constraints: Static analyses and empirical results. ICSE, pages 140–151, NY, USA. ACM.

Neto, P. A. M. S., Santana, T. L., Almeida, E. S., and Cavalcanti, Y. C. (2016). RiSE Events — A Testbed for Software Product Lines Experimentation. In IEEE/ACM 1stInt. Workshop on Variability and Complexity in Software Design (VACE), pages 12–13.

Plath, M. and Ryan, M. (2001). Feature integration using a feature construct.Science of Computer Programming, 41(1):53 – 84.

Soares, L. R. (2018). Varxplorer: Reasoning about feature interactions. In Proceedings of the 40th Int. Conf. on Software Engineering - Research Competition, pages 500–502.

Soares, L. R. (2019). Feature Interactions In Highly Configurable Systems: A Dynamic Analysis Approach with Varxplorer. PhD thesis, Federal University of Bahia (UFBA).

Soares, L. R., Meinicke, J., Nadi, S., Kästner, C., and de Almeida, E. S. (2018a). Exploring feature interactions without specifications: A controlled experiment. In17th Int.Conf. on Generative Programming, pages 40–52.

Soares, L. R., Meinicke, J., Nadi, S., Kästner, C., and de Almeida, E. S. (2018b). Varxplorer: Lightweight process for dynamic analysis of feature interactions. In12th Int. Workshop on Variability Modelling of Software-Intensive Systems.

Soares, L. R., Schobbens, P.-Y., Machado, I. C., and Almeida, E. S. (2018c). Feature interaction in software product line engineering: A systematic mapping study. Information and Software Technology, 98:44–58.
Publicado
19/10/2020
ROCHA SOARES, Larissa; ALMEIDA, Eduardo; MACHADO, Ivan; KÄSTNER, Christian. Feature Interactions in Highly Configurable Systems: A Dynamic Analysis Approach with Varxplorer. In: CONCURSO DE TESES E DISSERTAÇÕES EM ENGENHARIA DE SOFTWARE (CTD-ES) - CONGRESSO BRASILEIRO DE SOFTWARE: TEORIA E PRÁTICA (CBSOFT), 11. , 2020, Evento Online. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2020 . p. 148-162. DOI: https://doi.org/10.5753/cbsoft_estendido.2020.14624.