AVoCS 2017, FMICS 2017: Critical Systems: Formal Methods and Automated Verification pp 201-216 | Cite as
Optimizing Feature Interaction Detection
Abstract
The feature interaction problem has been recognized as a general problem of software engineering. The problem appears when a combination of features interacts generating a conflict, exhibiting a behaviour that is unexpected for the features considered in isolation, possibly resulting in some critical safety violation. Verification of absence of critical feature interactions has been the subject of several studies. In this paper, we focus on functional interactions and we address the problem of the 3-way feature interactions, i.e. interactions that occur only when three features are all included in the system, but not when only two of them are. In this setting, we define a widely applicable definition framework, within which we show that a 3 (or greater)-way interaction is always caused by a 2-way interaction, i.e. that pairwise sampling is complete, hence reducing to quadratic the complexity of automatic detection of incorrect interaction.
Notes
Acknowledgements
This work has been partially supported by the Tuscany Region project POR FESR 2014-2020 SISTER and the H2020 Shift2rail project ASTRail.
References
- 1.Feature Interactions: The Next Generation (Dagstuhl Seminar 14281), Dagstuhl Reports, vol. 4, n.7. pp. 1–24. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany (2014)Google Scholar
- 2.Apel, S.: The new feature interaction challenge. In: Proceedings of the Eleventh International Workshop on Variability Modelling of Software-intensive Systems, VAMOS 2017, p. 1. ACM, New York (2017)Google Scholar
- 3.Apel, S., Batory, D., Kästner, C., Saake, G.: Feature-Oriented Software Product Lines: Concepts and Implementation. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-37521-7 CrossRefGoogle Scholar
- 4.Atlee, J.M., Fahrenberg, U., Legay, A.: Measuring behaviour interactions between product-line features. In: Gnesi, S., Plat, N. (eds.) 3rd IEEE/ACM FME Workshop on Formal Methods in Software Engineering, FormaliSE 2015, Florence, Italy, May 18, 2015, pp. 20–25. IEEE Computer Society (2015)Google Scholar
- 5.Back, R.-J., Kurki-Suonio, R.: Distributed cooperation with action systems. ACM Trans. Program. Lang. Syst. 10(4), 513–554 (1988)CrossRefMATHGoogle Scholar
- 6.Baldan, P., Busi, N., Corradini, A., Pinna, G.M.: Domain and event structure semantics for Petri Nets with read and inhibitor arcs. Theor. Comput. Sci. 323(1–3), 129–189 (2004)CrossRefMATHMathSciNetGoogle Scholar
- 7.Baldan, P., Corradini, A., Montanari, U.: Contextual Petri Nets, asymmetric event structures, and processes. Inf. Comput. 171(1), 1–49 (2001)CrossRefMATHMathSciNetGoogle Scholar
- 8.Boström, M., Engstedt, M.: Feature interaction detection and resolution in the Delphi framework. In: [13], pp. 157–172, October 1995Google Scholar
- 9.Bruns, G.: Foundations for features. In: Reiff-Marganiec, S., Ryan, M. (eds.) Feature Interactions in Telecommunications and Software Systems VIII, pp. 3–11. IOS Press, Amsterdam (2005)Google Scholar
- 10.Buhr, R.J.A., Amyot, D., Elammari, M., Quesnel, D., Gray, T., Mankovski, S.: Feature-interaction visualization and resolution in an agent environment. In: [16], pp. 135–149, September 1998Google Scholar
- 11.Calder, M., Kolberg, M., Magill, E.H., Reiff-Marganiec, S.: Feature interaction: a critical review and considered forecast. Comput. Netw. 41, 115–141 (2001)CrossRefMATHGoogle Scholar
- 12.Calder, M., Magill, E. (eds.): Feature Interactions in Telecommunications and Software Systems VI. IOS Press, Amsterdam (2000)Google Scholar
- 13.Cheng, K.E., Ohta, T. (eds.): Feature Interactions in Telecommunications Systems III. IOS Press, Amsterdam (1995)Google Scholar
- 14.Danelutto, M., Kilpatrick, P., Montangero, C., Semini, L.: Model checking support for conflict resolution in multiple non-functional concern management. In: Alexander, M., D’Ambra, P., Belloum, A., Bosilca, G., Cannataro, M., Danelutto, M., Martino, B., Gerndt, M., Jeannot, E., Namyst, R., Roman, J., Scott, S.L., Traff, J.L., Vallée, G., Weidendorfer, J. (eds.) Euro-Par 2011. LNCS, vol. 7155, pp. 128–138. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-29737-3_16 CrossRefGoogle Scholar
- 15.Dunlop, N., Indulska, J., Raymond, K.: Methods for conflict resolution in policy-based management systems. In: Enterprise Distributed Object Computing Conference, pp. 15–26. IEEE Computer Society (2002)Google Scholar
- 16.Kimbler, K., Bouma, L.G. (eds.): Feature Interactions in Telecommunications and Software Systems V. IOS Press, Amsterdam (1998)Google Scholar
- 17.Kolberg, M., Magill, E.H., Marples, D., Reiff, S.: Results of the second feature interaction contest. In: [12], pp. 311–325 (2000)Google Scholar
- 18.Kolberg, M., Magill, E.H., Marples, D., Reiff, S.: Second feature interaction contest. In: [12], pp. 293–310, May 2000Google Scholar
- 19.Li, H., Krishnamurthi, S., Fisler, K.: Verifying cross-cutting features as open systems. SIGSOFT Softw. Eng. Notes 27(6), 89–98 (2002)CrossRefGoogle Scholar
- 20.Marijan, D., Gotlieb, A., Sen, S., Hervieu, A.: Practical pairwise testing for software product lines. In: Proceedings of the 17th International Software Product Line Conference, SPLC 2013, pp. 227–235. ACM, New York (2013)Google Scholar
- 21.Medeiros, F., Kästner, C., Ribeiro, M., Gheyi, R., Apel, S.: A comparison of 10 sampling algorithms for configurable systems. In: Proceedings of the 38th International Conference on Software Engineering, ICSE 2016, pp. 643–654. ACM, New York (2016)Google Scholar
- 22.Milner, R.: Communication and Concurrency. International Series in Computer Science. Prentice Hall, New York (1989)MATHGoogle Scholar
- 23.Montangero, C., Reiff-Marganiec, S., Semini, L.: Logic-based conflict detection for distributed policies. Fundamenta Informaticae 89(4), 511–538 (2008)MATHMathSciNetGoogle Scholar
- 24.Montangero, C., Semini, L.: Detection and resolution of feature interactions, the early light way. Int. J. Adv. Syst. Measurements 8(34), 210–220 (2015)Google Scholar
- 25.Nhlabatsi, A., Laney, R., Nuseibeh, B.: Feature interaction: the security threat from within software systems. Prog. Inform. 5, 75–89 (2008)CrossRefGoogle Scholar
- 26.Oster, S., Markert, F., Ritter, P.: Automated incremental pairwise testing of software product lines. In: Bosch, J., Lee, J. (eds.) SPLC 2010. LNCS, vol. 6287, pp. 196–210. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-15579-6_14 CrossRefGoogle Scholar
- 27.Reiff-Marganiec, S., Turner, K.J.: Feature interaction in policies. Comput. Networks 45(5), 569–584 (2004)CrossRefGoogle Scholar
- 28.Schaefer, I., Bettini, L., Bono, V., Damiani, F., Tanzarella, N.: Delta-oriented programming of software product lines. In: Bosch, J., Lee, J. (eds.) SPLC 2010. LNCS, vol. 6287, pp. 77–91. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-15579-6_6 CrossRefGoogle Scholar
- 29.Shaker, P., Atlee, J.M.: Behaviour interactions among product-line features. In: Gnesi, S., Fantechi, A., Heymans, P., Rubin, J., Czarnecki, K., Dhungana, D. (eds.) 18th International Software Product Line Conference, SPLC 2014, Florence, Italy, September 15–19, 2014, pp. 242–246. ACM (2014)Google Scholar
- 30.Turner, K.J., Reiff-Marganiec, S., Blair, L., Pang, J., Gray, T., Perry, P., Ireland, J.: Policy support for call control. Comput. Stand. Inter. 28(6), 635–649 (2006)CrossRefGoogle Scholar
- 31.Various Editors. Series of International Conferences on Feature Interactions in Software and Communication Systems (ICFI). IOS Press (1994–2009)Google Scholar
- 32.Zave, P.: An experiment in feature engineering. In: Morgan, C., McIver, A. (eds.) Programming Methodology, pp. 353–377. Springer, New York (2003). doi: 10.1007/978-0-387-21798-7_17 CrossRefGoogle Scholar