A Recommender Agent for Software Libraries: An Evaluation of Memory-Based and Model-Based Collaborative Filtering

  • Authors:
  • Frank McCarey;Mel O. Cinneide;Nicholas Kushmerick

  • Affiliations:
  • University College Dublin, Ireland;University College Dublin, Ireland;University College Dublin, Ireland

  • Venue:
  • IAT '06 Proceedings of the IEEE/WIC/ACM international conference on Intelligent Agent Technology
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software Agents can conveniently facilitate knowledge discovery and knowledge sharing across an organisation. We contend that programming tasks are often mimicked, that knowledge concerning reusable libraries can be extracted automatically from source code repositories, and that this knowledge can then be filtered and presented to a developer in a manner that will encourage and support future software reuse. We describe RASCAL, a recommender agent that continually recommends a set of task-relevant library methods to a developer. RASCAL learns information regarding how a particular reusable library is used and then employs this insight to make task-relevant recommendations to a developer. In this paper we detail our RASCAL agent and compare two recommendation techniques, namely Memory-Based and Model-Based Collaborative Filtering. We are interested in producing a scalable and efficient real-time recommender and thus ideally would favour a Model-Based approach. However, each scheme is evaluated against both runtime performance and recommendation accuracy. We present results and discuss the merits and limitations of each technique.