Supporting Domain Analysis through Mining and Recommending Features from Online Product Listings

Domain analysis is a labor-intensive task in which related software systems are analyzed to discover their common and variable parts. Many software projects include extensive domain analysis activities, intended to jumpstart the requirements process through identifying potential features. In this paper, we present a recommender system that is designed to reduce the human effort of performing domain analysis. Our approach relies on data mining techniques to discover common features across products as well as relationships among those features. We use a novel incremental diffusive algorithm to extract features from online product descriptions, and then employ association rule mining and the (k)-nearest neighbor machine learning method to make feature recommendations during the domain analysis process. Our feature mining and feature recommendation algorithms are quantitatively evaluated and the results are presented. Also, the performance of the recommender system is illustrated and evaluated within the context of a case study for an enterprise-level collaborative software suite. The results clearly highlight the benefits and limitations of our approach, as well as the necessary preconditions for its success.

[1]  Nan Niu,et al.  On-Demand Cluster Analysis for Product Line Functional Requirements , 2008, 2008 12th International Software Product Line Conference.

[2]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[3]  Michael J. Pazzani,et al.  Content-Based Recommendation Systems , 2007, The Adaptive Web.

[4]  Pierre-Yves Schobbens,et al.  What ' s in a Feature ? A Requirements Engineering Perspective , 2008 .

[5]  Lars Schmidt-Thieme,et al.  BPR: Bayesian Personalized Ranking from Implicit Feedback , 2009, UAI.

[6]  Robert W. Krut Integrating 001 Tool Support Into the Feature-Oriented Domain Analysis Methodology. , 1993 .

[7]  Sven Apel,et al.  An Overview of Feature-Oriented Software Development , 2009, J. Object Technol..

[8]  Tao Luo,et al.  Effective personalization based on association rule discovery from web usage data , 2001, WIDM '01.

[9]  M. Simos,et al.  Software Technology for Adaptable Reliable Systems (STARS). Organization Domain Modeling (ODM) Guidebook, Version 1.0. , 1995 .

[10]  Daniel Hoffman,et al.  Commonality and Variability in Software Engineering , 1998, IEEE Softw..

[11]  Jane Cleland-Huang,et al.  A consensus based approach to constrained clustering of software requirements , 2008, CIKM '08.

[12]  Rubén Prieto-Díaz,et al.  DARE: Domain analysis and reuse environment , 1998, Ann. Softw. Eng..

[13]  Dimitris Plexousakis,et al.  Alleviating the Sparsity Problem of Collaborative Filtering Using Trust Inferences , 2005, iTrust.

[14]  Mathieu Acher,et al.  On extracting feature models from product descriptions , 2012, VaMoS.

[15]  Robin Burke,et al.  Knowledge-based recommender systems , 2000 .

[16]  Bamshad Mobasher,et al.  Robustness of collaborative recommendation based on association rule mining , 2007, RecSys '07.

[17]  Sergio A. Alvarez,et al.  Efficient Adaptive-Support Association Rule Mining for Recommender Systems , 2004, Data Mining and Knowledge Discovery.

[18]  Camille Salinesi,et al.  A Method Based on Association Rules to Construct Product Line Models , 2010, VaMoS.

[19]  Michal Antkiewicz,et al.  fmp and fmp2rsm: eclipse plug-ins for modeling features using model templates , 2005, OOPSLA '05.

[20]  Haiyan Zhao,et al.  An approach to constructing feature models based on requirements clustering , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[21]  John Riedl,et al.  Analysis of recommendation algorithms for e-commerce , 2000, EC '00.

[22]  Nan Niu,et al.  Extracting and Modeling Product Line Functional Requirements , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[23]  Christopher D. Manning,et al.  Introduction to Information Retrieval , 2010, J. Assoc. Inf. Sci. Technol..

[24]  Jane Cleland-Huang,et al.  Enhancing Stakeholder Profiles to Improve Recommendations in Online Requirements Elicitation , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[25]  Kurt C. Wallnau Software Technology for Adaptable, Reliable Systems (STARS) , 1990 .

[26]  Jian Pei,et al.  Mining frequent patterns without candidate generation , 2000, SIGMOD '00.

[27]  Christoph Pohl,et al.  An Exploratory Study of Information Retrieval Techniques in Domain Analysis , 2008, 2008 12th International Software Product Line Conference.

[28]  Horst Lichter,et al.  RequiLine: A Requirements Engineering Tool for Software Product Lines , 2003, PFE.

[29]  Anil Kumar Thurimella,et al.  Towards a Research Agenda for Recommendation Systems in Requirements Engineering , 2009, 2009 Second International Workshop on Managing Requirements Knowledge.

[30]  Fazli Can,et al.  Concepts and effectiveness of the cover-coefficient-based clustering methodology for text databases , 1990, TODS.

[31]  Jonathan L. Herlocker,et al.  Evaluating collaborative filtering recommender systems , 2004, TOIS.

[32]  Steven She Feature Model Mining , 2008 .

[33]  Jaejoon Lee,et al.  FORM: A feature-;oriented reuse method with domain-;specific reference architectures , 1998, Ann. Softw. Eng..

[34]  Inderjit S. Dhillon,et al.  Concept Decompositions for Large Sparse Text Data Using Clustering , 2004, Machine Learning.

[35]  Mehran Sahami,et al.  Evaluating similarity measures: a large-scale study in the orkut social network , 2005, KDD '05.

[36]  John Riedl,et al.  Item-based collaborative filtering recommendation algorithms , 2001, WWW '01.

[37]  James C. Bezdek,et al.  Pattern Recognition with Fuzzy Objective Function Algorithms , 1981, Advanced Applications in Pattern Recognition.

[38]  Yehuda Koren,et al.  Matrix Factorization Techniques for Recommender Systems , 2009, Computer.

[39]  Michael I. Jordan,et al.  Latent Dirichlet Allocation , 2001, J. Mach. Learn. Res..

[40]  Jane Huang,et al.  Improving requirements clustering in an interactive and dynamic environment , 2009 .

[41]  Robin D. Burke,et al.  Hybrid Recommender Systems: Survey and Experiments , 2002, User Modeling and User-Adapted Interaction.

[42]  Dan Frankowski,et al.  Collaborative Filtering Recommender Systems , 2007, The Adaptive Web.

[43]  Rakesh Agarwal,et al.  Fast Algorithms for Mining Association Rules , 1994, VLDB 1994.

[44]  Jane Cleland-Huang,et al.  A recommender system for requirements elicitation in large-scale software projects , 2009, SAC '09.

[45]  Peter Hepburn,et al.  Open card sorting and factor analysis: a usability case study , 2010, Electron. Libr..

[46]  Stephen Clark,et al.  Best Practices for Automated Traceability , 2007, Computer.