Semantically-enhanced Topic Recommendation System for Software Projects

05/31/2022
by   Maliheh Izadi, et al.
0

Software-related platforms have enabled their users to collaboratively label software entities with topics. Tagging software repositories with relevant topics can be exploited for facilitating various downstream tasks. For instance, a correct and complete set of topics assigned to a repository can increase its visibility. Consequently, this improves the outcome of tasks such as browsing, searching, navigation, and organization of repositories. Unfortunately, assigned topics are usually highly noisy, and some repositories do not have well-assigned topics. Thus, there have been efforts on recommending topics for software projects, however, the semantic relationships among these topics have not been exploited so far. We propose two recommender models for tagging software projects that incorporate the semantic relationship among topics. Our approach has two main phases; (1) we first take a collaborative approach to curate a dataset of quality topics specifically for the domain of software engineering and development. We also enrich this data with the semantic relationships among these topics and encapsulate them in a knowledge graph we call SED-KGraph. Then, (2) we build two recommender systems; The first one operates only based on the list of original topics assigned to a repository and the relationships specified in our knowledge graph. The second predictive model, however, assumes there are no topics available for a repository, hence it proceeds to predict the relevant topics based on both textual information of a software project and SED-KGraph. We built SED-KGraph in a crowd-sourced project with 170 contributors from both academia and industry. The experiment results indicate that our solutions outperform baselines that neglect the semantic relationships among topics by at least 25 MAP metrics.

READ FULL TEXT
research
10/18/2020

Topic Recommendation for Software Repositories using Multi-label Classification Algorithms

Many platforms exploit collaborative tagging to provide their users with...
research
08/19/2022

Topical: Learning Repository Embeddings from Source Code using Attention

Machine learning on source code (MLOnCode) promises to transform how sof...
research
08/09/2021

Recommender Systems for Software Project Managers

The design of recommendation systems is based on complex information pro...
research
09/19/2023

AstroPortal: An ontology repository concept for astronomy, astronautics and other space topics

This paper describes a repository for ontologies of astronomy, astronaut...
research
09/11/2017

Research Portfolio Analysis and Topic Prominence

Stakeholders in the science system need to decide where to place their b...
research
10/11/2021

Automatic Recall of Software Lessons Learned for Software Project Managers

Lessons learned (LL) records constitute the software organization memory...
research
12/12/2018

Searching for Relevant Lessons Learned Using Hybrid Information Retrieval Classifiers: A Case Study in Software Engineering

The lessons learned (LL) repository is one of the most valuable sources ...

Please sign up or login with your details

Forgot password? Click here to reset