Automated Analysis in Feature Modelling and Product Configuration

  • David Benavides
  • Alexander Felfernig
  • José A. Galindo
  • Florian Reinfrank
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7925)


The automated analysis of feature models is one of the thriving topics of research in the software product line and variability management communities that has attracted more attention in the last years. A recent literature review reported that more than 30 analysis operations have been identified and different analysis mechanisms have been proposed. Product configuration is a well established research field with more than 30 years of successful applications in different industrial domains. Our hypothesis, that is not really new, is that these two independent areas of research have interesting synergies that have not been fully explored. To try to explore the potential synergies systematically, in this paper we provide a rapid review to bring together these previously disparate streams of work. We define a set of research questions and give a preliminary answer to some of them. We conclude that there are many research opportunities in the synergy of these independent areas.


Software Product Lines Feature Models Product Configuration Rapid Review Knowledge-based Systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Configuration Benchmarks Library,
  2. 2.
    Acher, M., Baudry, B., Heymans, P., Cleve, A., Hainaut, J.: Support for reverse engineering and maintaining feature models. In: Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems, p. 20. ACM (2013)Google Scholar
  3. 3.
    Acher, M., Cleve, A., Perrouin, G., Heymans, P., Vanbeneden, C., Collet, P., Lahire, P.: On extracting feature models from product descriptions. In: Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems, VaMoS 2012, pp. 45–54. ACM, New York (2012)CrossRefGoogle Scholar
  4. 4.
    Andersen, H.R., Hadzic, T., Pisinger, D.: Interactive cost configuration over decision diagrams. J. Artif. Intell. Res (JAIR) 37, 99–139 (2010)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Apt, K.R.: Principles of Constraint Programming. Cambridge University Press, Cambridge (2003)zbMATHCrossRefGoogle Scholar
  6. 6.
    Asikainen, T., Männistö, T., Soininen, T.: Kumbang: A domain ontology for modelling variability in software product families. Advanced Engineering Informatics 21(1), 23–40 (2007)CrossRefGoogle Scholar
  7. 7.
    Barker, V., OConnor, D., Bachant, J., Soloway, E.: Expert systems for configuration at digital: Xcon and beyond. Communications of the ACM 32(3), 298–318 (1989)CrossRefGoogle Scholar
  8. 8.
    Benavides, D., Segura, S., Ruiz-Cortés, A.: Automated analysis of feature models 20 years later: a literature review. Information Systems 35(6), 615–636 (2010)CrossRefGoogle Scholar
  9. 9.
    Bouquet, F., Jegou, P.: Using obdds to handle dynamic constraints. Information Processing Letters 62(3), 111–120 (1997)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Brereton, P., Kitchenham, B., Budgen, D., Turner, M., Khalil, M.: Lessons from applying the systematic literature review process within the software engineering domain. Journal of Systems and Software 80(4), 571–583 (2007)CrossRefGoogle Scholar
  11. 11.
    Classen, A., Boucher, Q., Heymans, P.: A text-based approach to feature modelling: Syntax and semantics of tvl. Sci. Comput. Program. 76(12), 1130–1143 (2011)CrossRefGoogle Scholar
  12. 12.
    Czarnecki, K., Grünbacher, P., Rabiser, R., Schmid, K., Wasowski, A.: Cool features and tough decisions: a comparison of variability modeling approaches. In: VaMoS, pp. 173–182 (2012)Google Scholar
  13. 13.
    Durán, A., Benavides, D., Segura, S., Trinidad, P., Ruiz-Cortés, A.: Flame: Fama formal framework (v 1.0). Technical Report ISA–12–TR–02, Seville, Spain (March 2012)Google Scholar
  14. 14.
    Fargier, H., Vilarem, M.-C.: Compiling csps into tree-driven automata for interactive solving. Constraints 9, 263–287 (2004)MathSciNetzbMATHCrossRefGoogle Scholar
  15. 15.
    Felfernig, A.: Standardized configuration knowledge representations as technological foundation for mass customization. IEEE Transactions on Engineering Management 54(1), 41–56 (2007)CrossRefGoogle Scholar
  16. 16.
    Felfernig, A.: Intelligent techniques for software product line engineering. In: Proccedings of the 2nd International Workshop on Formal Methods and Analysis in Software Product Line Engineering, FMSPLE at SPLC (2011),
  17. 17.
    Felfernig, A., Friedrich, G., Jannach, D., Stumptner, M.: Consistency-based Diagnosis of configuration knowledge bases. Artificial Intelligence 152(2), 213–234 (2004)MathSciNetzbMATHCrossRefGoogle Scholar
  18. 18.
    Felfernig, A., Friedrich, G., Jannach, D., Stumptner, M., Zanker, M.: Configuration Knowledge Representations for Semantic Web Applications. Artificial Intelligence in Engineering, Design, Analysis and Manufacturing (AIEDAM) 17(2), 31–50 (2003)Google Scholar
  19. 19.
    Felfernig, A., Friedrich, G., Jannach, D., Zanker, M.: Web-based configuration of virtual private networks with multiple suppliers. In: Proceedings of 7th International Conference on Artificial Intelligence in Design (AID 2002), Cambridge, UK, pp. 41–62 (2002)Google Scholar
  20. 20.
    Felfernig, A., Friedrich, G., Schubert, M., Mandl, M., Mairitsch, M., Teppan, E.: Plausible repairs for inconsistent requirements. In: IJCAI, pp. 791–796 (2009)Google Scholar
  21. 21.
    Felfernig, A., Isak, K., Kruggel, T.: Testing knowledge-based recommender systems. OEGAI Journal 4, 12–18 (2005)Google Scholar
  22. 22.
    Felfernig, A., Schubert, M., Zehentner, C.: An Efficient Diagnosis Algorithm for Inconsistent Constraint Sets. Artificial Intelligence for Engineering Design, Analysis, and Manufacturing (AIEDAM) 25(2), 175–184 (2011)CrossRefGoogle Scholar
  23. 23.
    Fleischanderl, G., Friedrich, G., Haselboeck, A., Schreiner, H., Stumptner, M.: Configuring large systems using generative constraint satisfaction. IEEE Intelligent Systems 13(4), 59–68 (1998)CrossRefGoogle Scholar
  24. 24.
    Fleurey, F., Haugen, Ø., Møller-Pedersen, B., Olsen, G.K., Svendsen, A., Zhang, X.: A generic language and tool for variability modeling. Technical Report A13505, SINTEF, Oslo, Norway (2009)Google Scholar
  25. 25.
    Gedikli, F., Ge, M., Jannach, D.: Explaining online recommendations using personalized tag clouds. I-com 10(1), 3–10 (2011)CrossRefGoogle Scholar
  26. 26.
    Gelle, E., Faltings, B.: Solving mixed and conditional constraint satisfaction problems. Constraints 8, 107–141 (2003)MathSciNetzbMATHCrossRefGoogle Scholar
  27. 27.
    Grant, M.J., Booth, A.: A typology of reviews: an analysis of 14 review types and associated methodologies. Health Information and Libraries Journal 26(2), 91–108 (2009)CrossRefGoogle Scholar
  28. 28.
    Hadzic, T., Andersen, H.R.: A bdd-based polytime algorithm for cost-bounded interactive configuration. In: Proceedings of the 21st National Conference on Artificial Intelligence, AAAI 2006, vol. 1, pp. 62–67. AAAI Press (2006)Google Scholar
  29. 29.
    Hadzic, T., Subbarayan, S., Jensen, R.M., Andersen, H.R., Møller, J., Hulgaard, H.: Fast backtrack-free product configuration using a precompiled solution space representation. In: Proceedings of the International Conference on Economic, Technical and Organisational Aspects of Product Configuration Systems, pp. 131–138 (2004)Google Scholar
  30. 30.
    Haslinger, E., Lopez-Herrejon, R., Egyed, A.: Reverse engineering feature models from programs’ feature sets. In: 18th Working Conference on Reverse Engineering, WCRE 2011, Limerick, Ireland, October 17-20, pp. 308–312 (2011)Google Scholar
  31. 31.
    Hubaux, A., Jannach, D., Drescher, C., Murta, F., Männistö, T., Czarnecki, K., Heymans, P., Nguyen, N., Zanker, M.: Unifying software and product configuration: A research roadmap. In: Proceedings of the Configuration Workshop at ECAI (2012)Google Scholar
  32. 32.
    Jannach, D., Liegl, J.: Conflict-directed relaxation of constraints in content-based recommender systems. In: Ali, M., Dapoigny, R. (eds.) IEA/AIE 2006. LNCS (LNAI), vol. 4031, pp. 819–829. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  33. 33.
    Jensen, R.M.: Clab: A c++ library for fast backtrack-free interactive product configuration. In: Wallace, M. (ed.) CP 2004. LNCS, vol. 3258, p. 816. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  34. 34.
    Juengst, E., Heinrich, M.: Using resource balancing to configure modular systems. IEEE Intelligent Systems 13(4), 50–58 (1998)CrossRefGoogle Scholar
  35. 35.
    Junker, U., Mailharro, D.: The logic of ilog (j)configurator: Combining constraint programming with a description logic. In: Proceedings of the IJCAI-2003 Configuration Workshop, pp. 13–20 (2003)Google Scholar
  36. 36.
    Liguori, F., Schreiber, F.: The software configurator: an aid to the industrial production of software. In: Proceedings of the IEEE Second International Computer Software and Applications Conference (COMPSAC), pp. 487–492 (1978)Google Scholar
  37. 37.
    Lopez-Herrejon, R.E., Galindo, J.A., Benavides, D., Segura, S., Egyed, A.: Reverse engineering feature models with evolutionary algorithms: An exploratory study. In: Fraser, G., Teixeira de Souza, J. (eds.) SSBSE 2012. LNCS, vol. 7515, pp. 168–182. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  38. 38.
    Mailharro, D.: A classification and constraint-based framework for configuration. Artificial Intelligence for Engineering, Design, Analysis and Manufacturing (AIEDAM) 12(4), 383–397 (1998)Google Scholar
  39. 39.
    Männistö, T., Soininen, T., Sulonen, R.: Product configuration view to software product families. In: Software Configuration Management Workshop, SCM-2010 (2001)Google Scholar
  40. 40.
    McGuiness, D., Wright, J.: An industrial strength description logics-based configurator platform. IEEE Intelligent Systems 13(4), 69–77 (1998)CrossRefGoogle Scholar
  41. 41.
    Mendonça, M., Wasowski, A., Czarnecki, K., Cowan, D.: Efficient compilation techniques for large scale feature models. In: Proceedings of the 7th International Conference on Generative Programming and Component Engineering, GPCE, pp. 13–22 (2008)Google Scholar
  42. 42.
    Mittal, S., Falkenhainer, B.: Dynamic constraint satisfaction problems. In: AAAI, pp. 25–32 (1990)Google Scholar
  43. 43.
    Mittal, S., Frayman, F.: Towards a generic model of configuration tasks. In: Proceedings of 11th International Joint Conference on Artificial Intelligence (IJCAI 1989), Detroit, MI,USA, pp. 1395–1401 (1989)Google Scholar
  44. 44.
    Mohalik, S., Ramesh, S., Millo, J.-V., Krishna, S.N., Narwane, G.K.: Tracing spls precisely and efficiently. In: Proceedings of the Software Product Line Conference, SPLC(1), pp. 186–195. ACM (2012)Google Scholar
  45. 45.
    Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G.: Minizinc: Towards a standard CP modelling language. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 529–543. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  46. 46.
    O’Callaghan, B., O’Sullivan, B., Freuder, E.C.: Generating corrective explanations for interactive constraint satisfaction. In: van Beek, P. (ed.) CP 2005. LNCS, vol. 3709, pp. 445–459. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  47. 47.
    O’Sullivan, B.: Tutorial on product configuration. In: ASPL 2008, First Workshop on Analyses of Software Product Lines at SPLC (2008),
  48. 48.
    O’Sullivan, B., Papadopoulos, A., Faltings, B., Pu, P.: Representative explanations for over-constrained problems. In: AAAI, pp. 323–328 (2007)Google Scholar
  49. 49.
    Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (2005)Google Scholar
  50. 50.
    Rao, V.N.: Solving constraint satisfaction problems using finite state automata. In: Proceedings of the Tenth National Conference on Artificial Intelligence, AAAI 1992, pp. 453–458. AAAI Press (1992)Google Scholar
  51. 51.
    Reiter, R.: A theory of diagnosis from first principles. Artificial Intelligence 32(1), 57–95 (1987)MathSciNetzbMATHCrossRefGoogle Scholar
  52. 52.
    Sabin, D., Weigel, R.: Product configuration frameworks - a survey. IEEE Intelligent Systems 13(4), 42–49 (1998)CrossRefGoogle Scholar
  53. 53.
    Schobbens, P., Heymans, J.T.P., Bontemps, Y.: Generic semantics of feature diagrams. Computer Networks 51(2), 456–479 (2007)zbMATHCrossRefGoogle Scholar
  54. 54.
    Segura, S., Benavides, D., Ruiz-Cortés, A.: Functional testing of feature model analysis tools: a test suite. IET Software 5(1), 70–82 (2011)CrossRefGoogle Scholar
  55. 55.
    Segura, S., Galindo, J., Benavides, D., Parejo, J.A., Ruiz-Cortés, A.: Betty: benchmarking and testing on the automated analysis of feature models. In: VaMoS, pp. 63–71 (2012)Google Scholar
  56. 56.
    Segura, S., Hierons, R.M., Benavides, D., Ruiz-Cortés, A.: Automated metamorphic testing on the analyses of feature models. Information & Software Technology 53(3), 245–258 (2011)CrossRefGoogle Scholar
  57. 57.
    Segura, S., Parejo, J.A., Hierons, R.M., Benavides, D., Ruiz-Cortés, A.: Ethom: An evolutionary algorithm for optimized feature models generation (v. 1.1). Technical Report ISA-2012-TR-01, ETSII. Avda. de la Reina Mercedes s/n, 2 (2012)Google Scholar
  58. 58.
    She, S., Lotufo, R., Berger, T., Wasowski, A., Czarnecki, K.: Reverse engineering feature models. In: ICSE, pp. 461–470 (2011)Google Scholar
  59. 59.
    Sinnema, M., Deelstra, S., Nijhuis, J., Bosch, J.: COVAMOF: A framework for modeling variability in software product families. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, pp. 197–213. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  60. 60.
    Soininen, T., Tiihonen, J., Männistö, T., Sulonen, R.: Towards a general ontology of configuration. Artificial Intelligence in Engineering Design Analysis and Manufacturing (AIEDAM) 12(4), 357–372 (1998)Google Scholar
  61. 61.
    Subbarayan, S.: Integrating csp decomposition techniques and bdds for compiling configuration problems. In: Barták, R., Milano, M. (eds.) CPAIOR 2005. LNCS, vol. 3524, pp. 351–365. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  62. 62.
    Tiihonen, J., Soininen, T., Niemelä, I., Sulonen, R.: Empirical testing of a weight constraint rule based configurator. In: Proceedings of the ECAI Configuration Workshop (2002)Google Scholar
  63. 63.
    Trinidad, P., Benavides, D., Durán, A., Ruiz-Cortés, A., Toro, M.: Automated error analysis for the agilization of feature modeling. Journal of Systems and Software 81(6), 883–896 (2008)CrossRefGoogle Scholar
  64. 64.
    Trinidad, P., Ruiz-Cortés, A.: Abductive reasoning and automated analysis of feature models: How are they connected? In: Proceedings of the Third International Workshop on Variability Modelling of Software-Intensive Systems, pp. 145–153 (2009)Google Scholar
  65. 65.
    White, J., Benavides, D., Schmidt, D.C., Trinidad, P., Dougherty, B., Ruiz-Cortés, A.: Automated diagnosis of feature model configurations. Journal of Systems and Software 83(7), 1094–1107 (2010)CrossRefGoogle Scholar
  66. 66.
    White, J., Schmidt, D., Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated diagnosis of product-line configuration errors in feature models. In: Proceedings of the Sofware Product Line Conference (2008)Google Scholar
  67. 67.
    Yi, L., Zhang, W., Zhao, H., Jin, Z., Mei, H.: Mining binary constraints in the construction of feature models. In: 2012 20th IEEE International Requirements Engineering Conference (RE), pp. 141–150 (September 2012)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • David Benavides
    • 1
  • Alexander Felfernig
    • 2
  • José A. Galindo
    • 1
  • Florian Reinfrank
    • 2
  1. 1.University of SevilleSevilleSpain
  2. 2.Institute for Software TechnologyGraz University of TechnologyGrazAustria

Personalised recommendations