Development of recommendation systems for software engineering: the CROSSMINER experience

03/11/2021
by   Juri Di Rocco, et al.
0

To perform their daily tasks, developers intensively make use of existing resources by consulting open-source software (OSS) repositories. Such platforms contain rich data sources, e.g., code snippets, documentation, and user discussions, that can be useful for supporting development activities. Over the last decades, several techniques and tools have been promoted to provide developers with innovative features, aiming to bring in improvements in terms of development effort, cost savings, and productivity. In the context of the EU H2020 CROSSMINER project, a set of recommendation systems has been conceived to assist software programmers in different phases of the development process. The systems provide developers with various artifacts, such as third-party libraries, documentation about how to use the APIs being adopted, or relevant API function calls. To develop such recommendations, various technical choices have been made to overcome issues related to several aspects including the lack of baselines, limited data availability, decisions about the performance measures, and evaluation approaches. This paper is an experience report to present the knowledge pertinent to the set of recommendation systems developed through the CROSSMINER project. We explain in detail the challenges we had to deal with, together with the related lessons learned when developing and evaluating these systems. Our aim is to provide the research community with concrete takeaway messages that are expected to be useful for those who want to develop or customize their own recommendation systems. The reported experiences can facilitate interesting discussions and research work, which in the end contribute to the advancement of recommendation systems applied to solve different issues in Software Engineering.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/18/2023

From RSSE to BotSE: Potentials and Challenges Revisited after 15 Years

Both recommender systems and bots should proactively and smartly answer ...
research
10/15/2022

Code Recommendation for Open Source Software Developers

Open Source Software (OSS) is forming the spines of technology infrastru...
research
08/16/2018

Using Experience Sampling to link Software Repositories with Emotions and Work Well-Being

Background: The experience sampling method studies everyday experiences ...
research
07/12/2019

Modularization of Research Software for Collaborative Open Source Development

Software systems evolve over their lifetime. Changing conditions, such a...
research
02/25/2018

Can a Chatbot Determine My Diet?: Addressing Challenges of Chatbot Application for Meal Recommendation

Poor nutrition can lead to reduced immunity, increased susceptibility to...
research
09/24/2022

Are Machine Programming Systems using Right Source-Code Measures to Select Code Repositories?

Machine programming (MP) is an emerging field at the intersection of det...
research
01/25/2018

Agile development for vulnerable populations: lessons learned and recommendations

In this paper we draw attention to the challenges of managing software p...

Please sign up or login with your details

Forgot password? Click here to reset