Recommendation Heuristics for Improving Product Line Configuration Processes

  • Raúl Mazo
  • Cosmin Dumitrescu
  • Camille Salinesi
  • Daniel Diaz


In mass customization industries, such as car manufacturing, configurators play an important role both to interact with customers and in engineering processes. This is particularly true when engineers rely on reuse of assets and product line engineering techniques. Theoretically, product line configuration should be guided by the product line model. However, in the industrial context, the configuration of products from product line models is complex and error-prone due to the large number of variables in the models. The configuration activity quickly becomes cumbersome due to the number of decisions needed to get a proper configuration, to the fact that they should be taken in predefined order, or the poor response time of configurators when decisions are not appropriate. This chapter presents a collection of recommendation heuristics to improve the interactivity of product line configuration so as to make it scalable to common engineering situations. We describe the principles, benefits, and the implementation of each heuristic using constraint programming. The application and usability of the heuristics is demonstrated using a case study from the car industry.


Product Line Constraint Program Variation Point Configuration Process Product Line Engineering 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abbasi, E., Hubaux, A., Heymans, P.: A toolset for feature-based configuration workflows. In: Proceedings of the International Software Product Lines Conference, pp. 65–69, Munich, 22–26 August 2011. doi:10.1109/SPLC.2011.41Google Scholar
  2. 2.
    Antkiewicz, M., Czarnecki, K.: FeaturePlugin: Feature modeling plug-in for Eclipse. In: Proceedings of the Eclipse Technology eXchange, pp. 67–72, Barcelona, March 2004. doi:10.1145/1066129.1066143Google Scholar
  3. 3.
    Astesana, J.M., Cosserat, L., Fargier, H.: Constraint-based vehicle configuration: A case study. In: Proceedings of the IEEE International Conference on Tools with Artificial Intelligence, vol. 1, pp. 68–75, Arras, France, 27–29 October 2010. doi:10.1109/ICTAI.2010.19Google Scholar
  4. 4.
    Batory, D., Benavides, D., Ruiz-Cortés, A.: Automated analysis of feature models: Challenges ahead. Comm. ACM 49(12), 45–47 (2006). doi:10.1145/1183236.1183264CrossRefGoogle Scholar
  5. 5.
    Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated reasoning on feature models. In: Proceedings of the International Conference on Advanced Information Systems Engineering, Lecture Notes in Computer Science, vol. 3520, pp. 491–503. Springer, Heidelberg (2005). doi:10.1007/11431855_34Google Scholar
  6. 6.
    Boussemart, F., Hemery, F., Lecoutre, C., Sais, L.: Boosting systematic search by weighting constraints. In: Proceedings of the European Conference on Artificial Intelligence, pp. 146–150, Valencia, Spain, 22–27 August 2004Google Scholar
  7. 7.
    Burke, R.: Knowledge-based recommender systems. Encyclopedia of Library and Information Science 69(32), 180–200 (2000)Google Scholar
  8. 8.
    Clements, P., Northrop, L.M.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading, MA (2002)Google Scholar
  9. 9.
    Clements, P., Northrop, L.M.: A framework for software product line practice (2007). URL Version 5.0
  10. 10.
    van Deursen, A., Klint, P.: Domain-specific language design requires feature descriptions. J. Comput. Inform. Technol. 10(1), 1–17 (2002)CrossRefzbMATHGoogle Scholar
  11. 11.
    Dhungana, D., Grünbacher, P., Rabiser, R.: The DOPLER meta-tool for decision-oriented variability modeling: A multiple case study. Int. J. Autom. Software Eng. 18(1), 77–114 (2010). doi:10.1007/s10515-010-0076-6CrossRefGoogle Scholar
  12. 12.
    Diaz, D., Codognet, P.: Design and implementation of the GNU Prolog system. J. Funct. Logic Program. 2001(6), 6:1–6:29 (2001)Google Scholar
  13. 13.
    Djebbi, O., Salinesi, C.: RED-PL: A method for deriving product requirements from a product line requirements model. In: Proceedings of the International Conference on Advanced Information Systems Engineering, Lecture Notes in Computer Science, vol. 4495, pp. 279–293. Springer, Heidelberg (2007). doi:10.1007/978-3-540-72988-4_20Google Scholar
  14. 14.
    Dumitrescu, C., Mazo, R., Salinesi, C., Dauron, A.: Bridging the gap between product lines and systems engineering: An experience in variability management for automotive model based systems engineering. In: Proceedings of the International Software Product Lines Conference, pp. 254–263, Tokyo, Japan, 26–30 August 2013a. doi:10.1145/2491627.2491655Google Scholar
  15. 15.
    Dumitrescu, C., Tessier, P., Salinesi, C., Gérard, S., Dauron, A.: Flexible product line derivation applied to a model based systems engineering process. In: Proceedings of the International Conference on Complex Systems Design & Management, pp. 227–239. Springer, Heidelberg (2013b). doi:10.1007/978-3-642-34404-6_15Google Scholar
  16. 16.
    Felfernig, A., Jeran, M., Ninaus, G., Reinfrank, F., Reitererand, S., Stettinger, M.: Basic approaches in recommendation systems. In: Robillard, M., Maalej, W., Walker, R.J., Zimmermann, T. (eds.) Recommendation Systems in Software Engineering, Chap.  2. Springer, Heidelberg (2014)
  17. 17.
    Hadzic, T., Andersen, H.R.: An introduction to solving interactive configuration problems. Tech. Rep. TR-2004-49, The IT University of Copenhagen (2004)Google Scholar
  18. 18.
    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, Copenhagen, Denmark, 28–29 June 2004Google Scholar
  19. 19.
    Jiang, Z., Wang, W., Benbasat, I.: Multimedia-based interactive advising technology for online consumer decision support. Commun. ACM 48(9), 92–98 (2005). doi:10.1145/1081992.1081995CrossRefGoogle Scholar
  20. 20.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (FODA) feasibility study. Tech. Rep. CMU/SEI-90-TR-21, Carnegie Mellon University, Software Engineering Institute (1990)Google Scholar
  21. 21.
    Mazo, R., Lopez-Herrejon, R.E., Salinesi, C., Diaz, D., Egyed, A.: Conformance checking with constraint logic programming: The case of feature models. In: Proceedings of the IEEE International Computer Software and Applications Conference, pp. 456–465, Munich, Germany, 18–22 July 2011a. doi:10.1109/COMPSAC.2011.66Google Scholar
  22. 22.
    Mazo, R., Salinesi, C., Diaz, D.: VariaMos: A tool for product line driven systems engineering with a constraint based approach. In: Proceedings of the CAiSE Forum, CEUR Workshop Proceedings, vol. 855, pp. 147–154, Gdansk, Poland, 28 June 2012aGoogle Scholar
  23. 23.
    Mazo, R., Salinesi, C., Diaz, D., Djebbi, O., Lora-Michiels, A.: Constraints: The heart of domain and application engineering in the product lines engineering strategy. Int. J. Inform. Syst. Model. Des. 3(2), 33–68 (2012b). doi:10.4018/jismd.2012040102CrossRefGoogle Scholar
  24. 24.
    Mazo, R., Salinesi, C., Diaz, D., Lora-Michiels, A.: Transforming attribute and clone-enabled feature models into constraint programs over finite domains. In: Proceedings of the International Conference on Evaluating Novel Approaches to Software Engineering, pp. 188–199, Beijing, China, 8–11 June 2011bGoogle Scholar
  25. 25.
    Mendonca, M., Wasowski, A., Czarnecki, K.: SAT-based analysis of feature models is easy. In: Proceedings of the International Software Product Lines Conference, pp. 231–240, San Francisco, CA, USA, 24–28 August 2009Google Scholar
  26. 26.
    Payne, J.W., Bettman, J.R., Johnson, E.J.: The Adaptive Decision Maker. Cambridge University Press, Cambridge (1993)CrossRefGoogle Scholar
  27. 27.
    Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (2005). doi:10.1007/3-540-28901-1Google Scholar
  28. 28.
    Salinesi, C., Mazo, R., Diaz, D., Djebbi, O.: Using integer constraint solving in reuse based requirements engineering. In: Proceedings of the IEEE International Requirements Engineering Conference, pp. 243–251, Sydney, NSW, Australia, 27 September–1 October 2010. doi:10.1109/RE.2010.36Google Scholar
  29. 29.
    Schneeweiss, D., Hofstedt, P.: FdConfig: A constraint-based interactive product configurator. Tech. Rep. arXiv:1108.5586 (2011)Google Scholar
  30. 30.
    Subbarayan, S.: Integrating CSP decomposition techniques and BDDs for compiling configuration problems. In: Proceedings of the International Conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems, Lecture Notes in Computer Science, vol. 3524. Springer, Heidelberg (2005). doi:10.1007/11493853_26Google Scholar
  31. 31.
    Subbarayan, S., Jensen, R.M., Hadzic, T., Andersen, H.R., Hulgaard, H., Møller, J.: Comparing two implementations of a complete and backtrack-free interactive configurator. In: Proceedings of the Workshop on CSP Techniques with Immediate Application, pp. 97–111, Toronto, Canada, 27 September 2004Google Scholar
  32. 32.
    Thompson, C.A., Göker, M.H., Langley, P.: A personalized system for conversational recommendations. J. Artif. Intell. Res. 21(1), 393–428 (2004)Google Scholar
  33. 33.
    Van Hentenryck, P.: Constraint Satisfaction in Logic Programming. MIT Press, Boston, MA (1989)Google Scholar
  34. 34.
    von Winterfeldt, D., Edwards, W.: Decision Analysis and Behavioral Research. Cambridge University Press, New York (1986)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Raúl Mazo
    • 1
  • Cosmin Dumitrescu
    • 1
  • Camille Salinesi
    • 1
  • Daniel Diaz
    • 1
  1. 1.Université Paris 1 Panthéon-SorbonneParisFrance

Personalised recommendations