Title :
Portfolio: finding relevant functions and their usage
Author :
McMillan, Collin ; Grechanik, Mark ; Poshyvanyk, Denys ; Xie, Qing ; Fu, Chen
Author_Institution :
Coll. of William & Mary, Williamsburg, VA, USA
Abstract :
Different studies show that programmers are more interested in finding definitions of functions and their uses than variables, statements, or arbitrary code fragments [30, 29, 31]. Therefore, programmers require support in finding relevant functions and determining how those functions are used. Unfortunately, existing code search engines do not provide enough of this support to developers, thus reducing the effectiveness of code reuse. We provide this support to programmers in a code search system called Portfolio that retrieves and visualizes relevant functions and their usages. We have built Portfolio using a combination of models that address surfing behavior of programmer and sharing Related concepts among functions. We conducted an experiment with 49 professional programmers to compare Portfolio to Google Code Search and Koders using a standard methodology. The results show with strong statistical significance that users find more relevant functions with higher precision with Portfolio than with Google Code Search and Koders.
Keywords :
data visualisation; information retrieval; search engines; statistical analysis; Google code search; Koders; Portfolio code search system; Portfolio function; Portfolio usage; code reuse; code search engine; function retrieval; function visualization; statistical significance; Google; Navigation; Portfolios; Search engines; Storage area networks; Visualization; code search; function call graph; pagerank; portfolio; ranking;
Conference_Titel :
Software Engineering (ICSE), 2011 33rd International Conference on
Conference_Location :
Honolulu, HI
Print_ISBN :
978-1-4503-0445-0
Electronic_ISBN :
0270-5257
DOI :
10.1145/1985793.1985809