Please use this identifier to cite or link to this item:
http://repositorio.ufla.br/jspui/handle/1/11145
Title: | API recommendation system in Software Engineering |
Other Titles: | Sistema de recomendação de API na engenharia de software |
Authors: | Costa, Heitor Augustus Xavier Valente, Marco Túlio de Oliveira Freire, André Pimenta Parreira Júnior, Paulo Afonso |
Keywords: | API recommendation Collaborative filtering Frequent itemset mining Evaluation metrics Recommendation system Recomendação de APIs Filtragem colaborativo Mineração de itens mais frequentes Métricas de avaliação Sistema de recomendação |
Issue Date: | 12-May-2016 |
Publisher: | Universidade Federal de Lavras |
Citation: | HERNÁNDEZ RAMÍREZ, L. F. API recommendation system in Software Engineering. 2016. 223 p. Dissertação (Mestrado em Ciência da Computação)-Universidade Federal de Lavras, Lavras, 2016. |
Abstract: | Software development depends on Application Programming Interfaces (APIs) to achieve their goals. However, choosing the right APIs remains as a difficult task for Software Engineers. In software engineering, recommendation systems are emerging to support Software Engineers in their decision-making tasks. Therefore, in this work, we proposed a methodology that considers software categories and recommends APIs to Software Engineers with software in initial (not using APIs) or advanced (using some APIs) stage of software development. We used collaborative filtering technique along with frequent Itemset mining technique for generating the corresponding large and top-N lists of APIs recommended. In the top-N lists, the goal was to find a few specific APIs that are supposed to be most useful to Software Engineers. In order to automate the methodology proposed, we developed a plug-in for the Eclipse IDE. In addition, we tested the methodology considering categories from the SourceForge open source repository. For every category, we evaluated large and top-N lists performance based on two classification accuracy metrics (precision and recall) and one efficacy metric (recall rate), obtaining promising outcomes. Thus, the results of evaluation metrics showed that our methodology could make useful API recommendations for Software Engineers with software that used a small number of APIs or did not use any API. Besides, our methodology was able to put relevant APIs even in high-ranking positions, even in small top-N lists of APIs recommended. |
URI: | http://repositorio.ufla.br/jspui/handle/1/11145 |
Appears in Collections: | Ciência da Computação - Mestrado (Dissertações) |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
DISSERTAÇÃO_API recommendation system in Software Engineering.pdf | 2,54 MB | Adobe PDF | View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.