skip to main content
10.1145/1454247.1454258acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

Evaluating recommended applications

Published:09 November 2008Publication History

ABSTRACT

Large open source software repositories are polluted with incomplete or inadequately functioning projects having scarce or poor descriptions. Developers often search these repositories to find sample applications containing implementations of relevant features. While relying on software search engines that retrieve germane applications based on direct matches between user queries and words in the descriptions (or source code files), it is difficult to warrant that retrieved applications contain functionality described by their authors in project summaries.

We propose a novel approach called K9 that helps users evaluate if recommended applications implement functionality, which is described by the authors in project summaries. Using programmers' queries describing high-level concepts (e.g., sql server, floating toolbar, or smart card), K9 uses information retrieval and program analysis techniques to evaluate recommended applications based on how they implement these high-level concepts. We conjecture that K9 will effectively support developers in evaluating functionality of the retrieved applications.

References

  1. Biggerstaff, T. J., Mitbander, B. G., and Webster, D. E. The Concept Assignment Problem in Program Understanding in Proceedings of 15th IEEE/ACM International Conference on Software Engineering (ICSE'94) (May 17--21, 1994), 482--498. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Cottrell, R., Walker, R., and Denzinger, J. Jigsaw: A tool for small-scale source code reuse in Proceedings of 30th IEEE/ACM International Conference on Software Engineering (ICSE'08) (2008), 933--934. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Cubranic, D., Murphy, G. C., Singer, J., and Booth, K. S. Hipikat: A Project Memory for Software Development. IEEE Transactions on Software Engineering, 31, 6 (June 2005), 446--465. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Henninger, S. Supporting the construction and evolution of component repositories in Proceedings of 18th IEEE/ACM International Conference on Software Engineering (ICSE'96) (1996), 279--288. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Holmes, R. and Murphy, G. C. Using structural context to recommend source code examples in Proceedings of 27th International Conference on Software Engineering (ICSE'05) (2005), 117-- 125. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Holmes, R. and Walker, R. Supporting the investigation and planning of pragmatic reuse tasks in Proceedings of 29th IEEE/ACM International Conference on Software Engineering (ICSE'07) (2007), 447--457. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Howison, J. and Crowston, K. The perils and pitfalls of mining SourceForge in Proceedings of 1st International Workshop on Mining Software Repositories (MSR'04) (2004). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Little, G. and Miller, R. C. Keyword programming in java in Proceedings of 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE'07) (Atlanta, GA, 2007), 84--93. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Mandelin, D., Xu, L., Bodík, R., and Kimelman, D. Jungloid mining: helping to navigate the API jungle in Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'05) (2005), 48--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Poshyvanyk, D., Guéhéneuc, Y. G., Marcus, A., Antoniol, G., and Rajlich, V. Feature Location using Probabilistic Ranking of Methods based on Execution Scenarios and Information Retrieval. IEEE Transactions on Software Engineering, 33, 6 (June 2007), 420--432. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Robillard, M. Automatic Generation of Suggestions for Program Investigation in Proceedings of Joint European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering (Lisbon, Portugal, September, 2005), 11--20 Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Sahavechaphan, N. and Claypool, K. XSnippet: mining For sample code in Proceedings of Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'06) (2006), 413--430. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Shepherd, D., Fry, Z., Gibson, E., Pollock, L., and Vijay-Shanker, K. Using Natural Language Program Analysis to Locate and Understand Action-Oriented Concerns in Proceedings of International Conference on Aspect Oriented Software Development (AOSD'07) (2007), 212--224. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Stylos, J. and Myers, B. A. Mica: A Web-Search Tool for Finding API Components and Examples in Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (2006), 195--202. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Thummalapenta, S. and Xie, T. Parseweb: a Programmer Assistant for Reusing Open Source Code on the Web in Proceedings of 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE '07) (Atlanta, GA, 2007), 204--213. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Ye, Y. and Fischer, G. Reuse-Conducive Development Environments. Journal Automated Software Engineering, 12, 2 (2005), 199--235. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Zhao, W., Zhang, L., Liu, Y., Sun, J., and Yang, F. SNIAFL: Towards a Static Non-interactive Approach to Feature Location. ACM Transactions on Software Engineering and Methodologies (TOSEM), 15, 2 (2006), 195--226. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Evaluating recommended applications

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      RSSE '08: Proceedings of the 2008 international workshop on Recommendation systems for software engineering
      November 2008
      62 pages
      ISBN:9781605582283
      DOI:10.1145/1454247

      Copyright © 2008 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 9 November 2008

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader