skip to main content
10.1145/2993236.2993249acmconferencesArticle/Chapter ViewAbstractPublication PagesgpceConference Proceedingsconference-collections
research-article

A feature-based personalized recommender system for product-line configuration

Published:20 October 2016Publication History

ABSTRACT

Today’s competitive marketplace requires the industry to understand unique and particular needs of their customers. Product line practices enable companies to create individual products for every customer by providing an interdependent set of features. Users configure personalized products by consecutively selecting desired features based on their individual needs. However, as most features are interdependent, users must understand the impact of their gradual selections in order to make valid decisions. Thus, especially when dealing with large feature models, specialized assistance is needed to guide the users in configuring their product. Recently, recommender systems have proved to be an appropriate mean to assist users in finding information and making decisions. In this paper, we propose an advanced feature recommender system that provides personalized recommendations to users. In detail, we offer four main contributions: (i) We provide a recommender system that suggests relevant features to ease the decision-making process. (ii) Based on this system, we provide visual support to users that guides them through the decision-making process and allows them to focus on valid and relevant parts of the configuration space. (iii) We provide an interactive open-source configurator tool encompassing all those features. (iv) In order to demonstrate the performance of our approach, we compare three different recommender algorithms in two real case studies derived from business experience.

References

  1. M. Antkiewicz and K. Czarnecki. FeaturePlugin: Feature Modeling Plug-in for Eclipse. In Proceedings of the Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), pp. 67–72. ACM, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. E. Bagheri, M. Asadi, D. Gasevic, and S. Soltani. Stratified Analytic Hierarchy Process: Prioritization and Selection of Software Features. Springer, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  3. E. Bagheri, T. Di Noia, A. Ragone, and D. Gasevic. Configuring Software Product Line Feature Models based on Stakeholders’ Soft and Hard Requirements. In Software Product Lines: Going Beyond, pp. 16–31. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. E. Bagheri and F. Ensan. Dynamic Decision Models for Staged Software Product Line Configuration. Requirements Engineering, 19(2):187–212, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. E. Bagheri, T. D. Noia, D. Gasevic, and A. Ragone. Formalizing Interactive Staged Feature Model Configuration. Journal of Software: Evolution and Process, 24(4):375–400, 2012.Google ScholarGoogle ScholarCross RefCross Ref
  6. M. Barbeau and F. Bordeleau. A Protocol Stack Development Tool Using Generative Programming. In Generative Programming and Component Engineering, pp. 93–109. Springer, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. D. Benavides, S. Segura, and A. Ruiz-Cortés. Automated Analysis of Feature Models 20 Years Later: A Literature Review. Information Systems, 35(6):615–708, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Benavides, S. Segura, P. Trinidad, and A. R. Cortés. FAMA: Tooling a Framework for the Automated Analysis of Feature Models. In Proceedings of the Workshop on Variability Modelling of Software-intensive Systems (VaMoS), pp. 129– 134, 2007.Google ScholarGoogle Scholar
  9. C. M. Bishop. Pattern recognition and machine learning. Springer, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. Bosch, R. Capilla, and R. Hilliard. Trends in Systems and Software Variability. IEEE Software, 32(3):44–51, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. C. Cetina, P. Giner, J. Fons, and V. Pelechano. Autonomic Computing Through Reuse of Variability Models at Runtime: The Case of Smart Homes. Computer, 42(10):37–43, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. S. Choi, S. Cha, and C. C. Tappert. A Survey of Binary Similarity and Distance Measures. Journal of Systemics, Cybernetics and Informatics, 8(1):43–48, 2010.Google ScholarGoogle Scholar
  13. K. Constantino, J. A. Pereira, J. Padilha, P. Vasconcelos, and E. Figueiredo. An Empirical Study of Two Software Product Line Tools. In Proceedings of the International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE), 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. K. Czarnecki, P. Grünbacher, R. Rabiser, K. Schmid, and A. W ˛ asowski. Cool Features and Tough Decisions: A Comparison of Variability Modeling Approaches. In Proceedings of the Workshop on Variability Modelling of Software-intensive Systems (VaMoS), pp. 173–182. ACM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. Desrosiers and G. Karypis. A Comprehensive Survey of Neighborhood-based Recommendation Methods. In Recommender Systems Handbook, pp. 107–144. Springer, 2011.Google ScholarGoogle Scholar
  16. J. A. Galindo, D. Dhungana, R. Rabiser, D. Benavides, G. Botterweck, and P. Grünbacher. Supporting Distributed Product Configuration by Integrating Heterogeneous Variability Modeling Approaches. Information and Software Technology, 62:78–100, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. L. Griss, J. Favaro, and M. D. Alessandro. Integrating Feature Modeling with the RSEB. In Proceedings of the International Conference on Software Reuse (ICSR), pp. 76– 85. IEEE, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Y. O. Halchenko and M. Hanke. Open is Not Enough. Let’s Take the Next Step: An Integrated, Community-Driven Computing Platform for Neuroscience. Frontiers in Neuroinformatics, 2012, 2012.Google ScholarGoogle Scholar
  19. C. Henard, M. Papadakis, M. Harman, and Y. Le Traon. Combining Multi-Objective Search and Constraint Solving for Configuring Large Software Product Lines. In Proceedings of the International Conference on Software Engineering (ICSE), pp. 517–528. IEEE, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. R. M. Hierons, M. Li, X. Liu, S. Segura, and W. Zheng. SIP: Optimal Product Selection from Feature Models Using Many-Objective Evolutionary Optimization. ACM Transactions on Software Engineering and Methodology (TOSEM), 25(2):17, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, 1990.Google ScholarGoogle ScholarCross RefCross Ref
  22. K. C. Kang, J. Lee, and P. Donohoe. Feature-Oriented Product Line Engineering. IEEE Software, 19(4):58–65, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Y. Koren. Collaborative Filtering with Temporal Dynamics. In Proceedings of the ACM International Conference on Knowledge Discovery and Data Mining (SIGKDD), pp. 447– 456. ACM, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Y. Koren, R. Bell, and C. Volinsky. Matrix Factorization Techniques for Recommender Systems. Computer, 42:30–37, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. K. Lee, K. C. Kang, and J. Lee. Concepts and Guidelines of Feature Modeling for Product Line Software Engineering. In Software Reuse: Methods, Techniques, and Tools, pp. 62–77. Springer, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. X. Lian and L. Zhang. Optimized Feature Selection Towards Functional and Non-Functional Requirements in Software Product Lines. In Proceedings of the International Conference on Software Analysis, Evolution, and Reengineering (SANER), pp. 191–200. IEEE, 2015.Google ScholarGoogle Scholar
  27. P. Lops, M. de Gemmis, and G. Semeraro. Content-based Recommender Systems: State of the Art and Trends. In Recommender Systems Handbook, pp. 73–105. Springer, 2011.Google ScholarGoogle Scholar
  28. R. Lotufo, S. She, T. Berger, K. Czarnecki, and A. W ˛ asowski. Evolution of the Linux Kernel Variability Model. In Software Product Lines: Going Beyond, pp. 136–150. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. L. Machado, J. Pereira, L. Garcia, and E. Figueiredo. SPLConfig: Product Configuration in Software Product Line. In Proceedings of the Brazilian Conference on Software: Theory and Practice (CBSoft), pp. 1–8, 2014.Google ScholarGoogle Scholar
  30. J. Martinez, G. Rossi, T. Ziadi, T. F. D. A. Bissyandé, J. Klein, and Y. Le Traon. Estimating and Predicting Average Likability on Computer-Generated Artwork Variants. In Proceedings of the Companion Publication of the 2015 on Genetic and Evolutionary Computation Conference, pp. 1431–1432. ACM, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. J. L. Martinez, T. Ziadi, R. Mazo, T. F. Bissyandé, J. Klein, and Y. Le Traon. Feature Relations Graphs: A Visualisation Paradigm for Feature Constraints in Software Product Lines. In Proceedings of the IEEE Working Conference on Software Visualization (VISSOFT), pp. 50–59. IEEE, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. R. Mazo, C. Dumitrescu, C. Salinesi, and D. Diaz. Recommendation Heuristics for Improving Product Line Configuration Processes. In Recommendation Systems in Software Engineering, pp. 511–537. Springer, 2014.Google ScholarGoogle Scholar
  33. R. Mazo, C. Salinesi, and D. Diaz. VariaMos: a tool for product line driven systems engineering with a constraint based approach. In Proceedings of the International Conference on Advanced Information Systems Engineering (CAiSE), pp. 147–154. CEUR-WS.org, 2012.Google ScholarGoogle Scholar
  34. M. Mendonça, M. Branco, and D. Cowan. S.P.L.O.T.: Software Product Lines Online Tools. In Proceedings of the Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), pp. 761–762. ACM, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. G. G. Pascual, R. E. Lopez-Herrejon, M. Pinto, L. Fuentes, and A. Egyed. Applying Multiobjective Evolutionary Algorithms to Dynamic Software Product Lines for Reconfiguring Mobile Applications. Journal of Systems and Software (JSS), 103:392– 411, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. J. W. Payne, J. R. Bettman, and E. J. Johnson. The Aadaptive Decision Maker. Cambridge University Press, 1993.Google ScholarGoogle ScholarCross RefCross Ref
  37. J. A. Pereira, K. Constantino, and E. Figueiredo. A Systematic Literature Review of Software Product Line Management Tools. In Proceedings of the International Conference on Software Reuse (ICSR), pp. 73–89. Springer, 2015.Google ScholarGoogle Scholar
  38. J. A. Pereira, S. Krieter, J. Meinicke, R. Schröter, G. Saake, and T. Leich. FeatureIDE: Scalable Product Configuration of Variable Systems. In Software Reuse: Bridging with Social-Awareness, pp. 397–401. Springer, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. J. A. Pereira, C. Souza, E. Figueiredo, R. Abilio, G. Vale, and H. A. X. Costa. Software Variability Management: An Exploratory Study with Two Feature Modeling Tools. In Proceedings of the Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS), pp. 20–29. IEEE, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. K. Pohl, G. Böckle, and F. J. van der Linden. Software Product Line Engineering: Foundations, Principles and Techniques. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. G. Shani and A. Gunawardana. Evaluating Recommendation Systems. In Recommender Systems Handbook. Springer, 2011.Google ScholarGoogle ScholarCross RefCross Ref
  42. O. Spinczyk and D. Beuche. Modeling and Building Software Product Lines with Eclipse. In Companion to the ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, pp. 18–19. ACM, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. G. Takács, I. Pilászy, B. Németh, and D. Tikk. Scalable Collaborative Filtering Approaches for Large Recommender Systems. Journal of Machine Learning Research, 10:623–656, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. L. Tan, Y. Lin, and L. Liu. Quality Ranking of Features in Software Product Line Engineering. In Proceedings of the Asia-Pacific Software Engineering Conference (APSEC), volume 2, pp. 57–62. IEEE, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. T. H. Tan, Y. Xue, M. Chen, J. Sun, Y. Liu, and J. S. Dong. Optimizing Selection of Competing Features via Feedback-Directed Evolutionary Algorithms. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA), pp. 246–256. ACM, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. T. Thüm, C. Kästner, F. Benduhn, J. Meinicke, G. Saake, and T. Leich. FeatureIDE: An Extensible Framework for Feature-Oriented Software Development. Science of Computer Programming (SCP), 79(0):70–85, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A feature-based personalized recommender system for product-line configuration

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        GPCE 2016: Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences
        October 2016
        212 pages
        ISBN:9781450344463
        DOI:10.1145/2993236

        Copyright © 2016 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 20 October 2016

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate56of180submissions,31%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader