Ontology-based recommender system for COTS components

Defining a common and shared structure, terminology and semantics for COTS components.Representing user preferences through a model.Using ontologies to expand queries representing functional requirements.Providing recommendation of COTS components to assist in the identification task.Ranking COTS components according to user preferences. Commercial Off-The-Shelf (COTS) components are coarse-grained software components that satisfy high-level requirements by integrating several services and offering several interfaces. They are usually used to build larger systems. The paper proposes an ontology-based recommender system for COTS components, that contributes to COTS-based development by improving COTS components identification. It combines into a single framework information retrieval technologies and knowledge about COTS components and users in order to provide the most relevant COTS components meeting users needs. The recommender system is based on (1) an ontology of COTS components, named ONTOCOTS, that describes COTS components and unifies their heterogeneous descriptions available on the Web, and (2) a user model that represents user preferences and interest domains. The proposed recommender system is broken down on two main processes. The first one is responsible for extracting information about COTS components from COTS repositories and representing it as ONTOCOTS instances. The second one is the recommendation process during which the user query is expanded using the linguistic ontology WordNet, and is used along with the user profile and the domain ontology ODP (Open Directory Project) to generate a formal query. Results list is ranked according to the satisfaction degree of user requirements and preferences. Experimentations show an amelioration in recommendations relevance by placing the relevant COTS components at the top of the recommendation list.

[1]  Zibin Zheng,et al.  QoS-Aware Web Service Recommendation by Collaborative Filtering , 2011, IEEE Transactions on Services Computing.

[2]  Hai H. Wang,et al.  A Survey of Semantic Web Services Formalisms , 2013, 2013 Ninth International Conference on Semantics, Knowledge and Grids.

[3]  Sihem Ben Sassi,et al.  COTS characterization model in a COTS-based development environment , 2003, Tenth Asia-Pacific Software Engineering Conference, 2003..

[4]  Xavier Franch,et al.  A Goal-Oriented Strategy for Supporting Commercial Off-the-Shelf Components Selection , 2006, ICSR.

[5]  Jia Zhang,et al.  A Novel Lifecycle Framework for Semantic Web Service Annotation Assessment and Optimization , 2015, 2015 IEEE International Conference on Web Services.

[6]  Martin P. Robillard,et al.  Suade: Topology-Based Searches for Software Investigation , 2007, 29th International Conference on Software Engineering (ICSE'07).

[7]  Yuriy Brun,et al.  Speculative analysis of integrated development environment recommendations , 2012, OOPSLA '12.

[8]  Christiane Fellbaum,et al.  Book Reviews: WordNet: An Electronic Lexical Database , 1999, CL.

[9]  Colin Atkinson,et al.  Code Conjurer: Pulling Reusable Software out of Thin Air , 2008, IEEE Software.

[10]  Maria Teresa Pazienza,et al.  CODA: Computer-aided ontology development architecture , 2014, IBM J. Res. Dev..

[11]  Robert J. Walker,et al.  Strathcona example recommendation tool , 2005, ESEC/FSE-13.

[12]  Pornpit Wongthongtham,et al.  Towards a software component ontology , 2008, iiWAS.

[13]  Pasquale Lops,et al.  Semantics-aware Content-based Recommender Systems , 2014, CBRecSys@RecSys.

[14]  Hai H. Wang,et al.  A survey of Semantic Web Services formalisms , 2015 .

[15]  Eduardo Santana de Almeida,et al.  Software Reuse: Bridging with Social-Awareness , 2016, Lecture Notes in Computer Science.

[16]  T.V. Prabhakar,et al.  Dynamic selection of Web services with recommendation system , 2005, International Conference on Next Generation Web Services Practices (NWeSP'05).

[17]  C. W. Cleverdon,et al.  The ASLIB CRANFIELD RESEARCH PROJECT ON The COMPARATIVE EFFICIENCY OF INDEXING SYSTEMS , 1960 .

[18]  Martin F. Porter,et al.  An algorithm for suffix stripping , 1997, Program.

[19]  B. Craig Meyers,et al.  Managing Software Acquisition: Open Systems and COTS Products , 2001 .

[20]  Samir Tata,et al.  A recommender system based on historical usage data for web service discovery , 2011, Service Oriented Computing and Applications.

[21]  David A. Ferrucci,et al.  UIMA: an architectural approach to unstructured information processing in the corporate research environment , 2004, Natural Language Engineering.

[22]  Antonio Vallecillo,et al.  A Trading Service for COTS Components , 2004, Comput. J..

[23]  Yijun Yu,et al.  Comparing Web Services with other Software Components , 2007, IEEE International Conference on Web Services (ICWS 2007).

[24]  Kajal T. Claypool,et al.  XSnippet: mining For sample code , 2006, OOPSLA '06.

[25]  Hidehiko Masuhara,et al.  A spontaneous code recommendation tool based on associative search , 2011, SUITE '11.

[26]  Patrick Martin,et al.  Reputation-Enhanced QoS-based Web Services Discovery , 2007, IEEE International Conference on Web Services (ICWS 2007).

[27]  Hinrich Schütze,et al.  Introduction to information retrieval , 2008 .

[28]  Thomas L. Saaty,et al.  DECISION MAKING WITH THE ANALYTIC HIERARCHY PROCESS , 2008 .

[29]  Zibin Zheng,et al.  WSRec: A Collaborative Filtering Based Web Service Recommender System , 2009, 2009 IEEE International Conference on Web Services.

[30]  Mohand Boughanem,et al.  Désambiguïsation et expansion de requêtes dans un SRI. Etude de l'apport des liens sémantiques , 2003, Ingénierie des Systèmes d Inf..

[31]  Claudio Carpineto,et al.  A Survey of Automatic Query Expansion in Information Retrieval , 2012, CSUR.

[32]  Hakim Hacid,et al.  Towards a Social Network Based Approach for Services Composition , 2010, 2010 IEEE International Conference on Communications.

[33]  Alan W. Brown,et al.  The Current State , 2016 .

[34]  Antonio Vallecillo,et al.  Quality Attributes for COTS Components , 2002 .

[35]  Tomas Vitvar,et al.  SAWSDL: Semantic Annotations for WSDL and XML Schema , 2007, IEEE Internet Computing.

[37]  Mokrane Bouzeghoub,et al.  Personnalisation de l'information: aperçu de l'état de l'art et définition d'un modèle flexible de profils , 2005, CORIA.

[38]  Marco Torchiano,et al.  Classifying COTS Products , 2002, ECSQ.

[39]  Sihem Ben Sassi Towards a Semantic Search Engine for Open Source Software , 2016, ICSR.

[40]  Amit P. Sheth,et al.  Introduction to Semantic Web Services and Web Process Composition , 2004, SWSWPC.

[41]  Yanchun Zhang,et al.  WS-Finder: A Framework for Similarity Search of Web Services , 2012, ICSOC.

[42]  Gerard Salton,et al.  Term-Weighting Approaches in Automatic Text Retrieval , 1988, Inf. Process. Manag..

[43]  Martin P. Robillard,et al.  Recommendation Systems for Software Engineering , 2010, IEEE Software.

[44]  Gerhard Fischer,et al.  Supporting reuse by delivering task-relevant and personalized information , 2002, ICSE '02.

[45]  Kai Qian,et al.  Component-Oriented Programming , 2005 .

[46]  Deborah L. McGuinness,et al.  OWL Web ontology language overview , 2004 .

[47]  Gerard Salton,et al.  A vector space model for automatic indexing , 1975, CACM.

[48]  Andreas Zeller,et al.  Mining version histories to guide software changes , 2005, Proceedings. 26th International Conference on Software Engineering.

[49]  Marco Torchiano,et al.  Definition and Classification of COTS: A Proposal , 2002, ICCBSS.

[50]  Volker Gruhn,et al.  Automatically recommending code reviewers based on their expertise: An empirical comparison , 2016, 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE).

[51]  Jaana Kekäläinen,et al.  Cumulated gain-based evaluation of IR techniques , 2002, TOIS.

[52]  Hausi A. Müller,et al.  A Lightweight Taxonomy to Characterize Component-Based Systems , 2007, 2007 Sixth International IEEE Conference on Commercial-off-the-Shelf (COTS)-Based Software Systems (ICCBSS'07).

[53]  Ashutosh Mishra,et al.  Software component and the semantic Web: An in-depth content analysis and integration history , 2017, J. Syst. Softw..

[54]  Raphaël Troncy,et al.  Semantic Commitment for Designing Ontologies: A Proposal , 2002, EKAW.

[55]  Lamia Labed Jilani,et al.  Defining and Applying Measures of Distance Between Specifications , 2001, IEEE Trans. Software Eng..

[56]  Claudia Patricia,et al.  Systematic construction of goal-oriented COTS taxonomies , 2008 .

[57]  Sandeep Kumar Garg,et al.  TRS: system for recommending semantic web service composition approaches , 2008, 2008 International Symposium on Information Technology.

[58]  Duenkai Chen,et al.  A Context-aware Recommender System for Web Service Composition , 2012, 2012 Eighth International Conference on Intelligent Information Hiding and Multimedia Signal Processing.

[59]  Henda Hajjami Ben Ghézala,et al.  Recommendation in Interactive Web Services Composition: A State-of-the-Art Survey , 2016, EC-Web.

[60]  Huiqun Zhao,et al.  Research of Using Protégé to Build Ontology , 2012, 2012 IEEE/ACIS 11th International Conference on Computer and Information Science.

[61]  Gregory N. Hullender,et al.  Learning to rank using gradient descent , 2005, ICML.

[62]  GasparicMarko,et al.  What recommendation systems for software engineering recommend , 2016 .

[63]  Laxmi Ahuja A technological perspective for evaluating component based technologies , 2014, 2014 International Conference on Issues and Challenges in Intelligent Computing Techniques (ICICT).

[64]  Jos de Bruijn,et al.  Enabling Semantic Web Services: The Web Service Modeling Ontology , 2006 .

[65]  Tian Zhao,et al.  Component search and reuse: An ontology-based approach , 2010, 2010 IEEE International Conference on Information Reuse & Integration.

[66]  Hamish Cunningham,et al.  GATE-a General Architecture for Text Engineering , 1996, COLING.

[67]  Ivica Crnkovic,et al.  Twenty-eight years of component-based software engineering , 2016, J. Syst. Softw..

[68]  Jos de Bruijn,et al.  Web Service Modeling Ontology , 2005, Appl. Ontology.

[69]  Andrea Janes,et al.  What recommendation systems for software engineering recommend: A systematic literature review , 2016, J. Syst. Softw..