Abstract | ||
---|---|---|
Reuse recommendation systems support the developer by suggesting useful API methods, classes or code snippets based on code edited in the IDE. Existing systems based on structural information, such as type and method usage, are not effective in case of general purpose types such as String. To alleviate this, we propose a recommendation system based on identifiers that utilizes the developer's intention embodied in names of variables, types and methods. We investigate the impact of several variation points of our recommendation algorithm and evaluate the approach for recommending methods from the Java and Eclipse APIs in 9 open source systems. Furthermore, we compare our recommendations to those of a structure-based recommendation system and describe a metric for predicting the expected precision of a recommendation. Our findings indicate that our approach performs significantly better than the structure-based approach. |
Year | DOI | Venue |
---|---|---|
2012 | 10.1109/CSMR.2012.14 | Software Maintenance and Reengineering |
Keywords | Field | DocType |
code snippet,open source system,structure-based approach,recommendation algorithm,recommendation system,reuse recommendation system,identifier-based context-dependent api method,expected precision,eclipse apis,general purpose type,structure-based recommendation system,indexes,recommender system,java,software systems,context dependent,metric,recommender systems,identifier,data mining,vectors,public domain software,software metrics | Recommender system,Data mining,General purpose,Identifier,Computer science,Reuse,Software system,Eclipse,Software metric,Java | Conference |
ISSN | ISBN | Citations |
1534-5351 | 978-1-4673-0984-4 | 16 |
PageRank | References | Authors |
0.63 | 20 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Lars Heinemann | 1 | 202 | 11.05 |
Veronika Bauer | 2 | 92 | 7.48 |
Markus Herrmannsdoerfer | 3 | 433 | 23.43 |
Benjamin Hummel | 4 | 660 | 29.51 |