skip to main content
10.1145/2591062.2591117acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Automatic search term identification for change tasks

Published: 31 May 2014 Publication History

Abstract

At the beginning of a change task, software developers search the source code to locate the places relevant to the task. As previous research and a small exploratory study that we conducted show, developers perform poorly in identifying good search terms and therefore waste a lot of time querying and exploring irrelevant code. To support developers in this step, we present an approach to automatically identify good search terms. Based on existing work and an analysis of change tasks, we derived heuristics, determined their relevancy and used the results to develop our approach. For a preliminary evaluation, we conducted a study with ten developers working on open source change tasks. Our approach was able to identify good search terms for all tasks and outperformed the searches of the participants, illustrating the potential of our approach. In addition, since the used heuristics are solely based on textual features of change tasks, our approach is easy and generally applicable and can leverage much of the existing work on feature location.

References

[1]
sando.codeplex.com/.
[2]
www.ifi.uzh.ch/seal/people/kevic/tools/ SearchTermIdentification.zip.
[3]
G. Capobianco, A. D. Lucia, R. Oliveto, A. Panichella, and S. Panichella. Improving ir-based traceability recovery via noun-based indexing of software artifacts. Journal of Software: Evolution and Process, pages 743–762, 2013.
[4]
B. Dit, M. Revelle, M. Gethers, and D. Poshyvanyk. Feature location in source code: a taxonomy and survey. Journal of Software: Evol. and Process, pages 53–95, 2013.
[5]
A. Field. Discovering Statistics Using SPSS. SAGE Publications, 2005.
[6]
G. Gay, S. Haiduc, A. Marcus, and T. Menzies. On the use of relevance feedback in ir-based concept location. In Proc. of ICSM, pages 351–360, 2009.
[7]
S. Haiduc, G. Bavota, A. Marcus, R. Oliveto, A. De Lucia, and T. Menzies. Automatic query reformulations for text retrieval in software engineering. In Proc. of ICSE, pages 842–851, 2013.
[8]
S. Henninger. Using iterative refinement to find reusable software. IEEE Softw., 11(5):48–59, 1994.
[9]
E. Hill, L. Pollock, and K. Vijay-Shanker. Improving source code search with natural language phrasal representations of method signatures. In Proc. of ASE’11, pages 524–527.
[10]
E. Hill, L. Pollock, and K. Vijay-Shanker. Automatically capturing source code context of nl-queries for software maintenance and reuse. In Proc. of ICSE, pages 232–242, 2009.
[11]
K. Kevic. Identifying a starting context of code elements for a change task. Master’s thesis, University of Zurich, 2013.
[12]
A. Ko, B. Myers, M. Coblenz, and H. Aung. An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks. IEEE Trans. Softw. Eng., 32(12):971–987, 2006.
[13]
C. Lioma and I. Ounis. Examining the content load of part of speech blocks for information retrieval. In Proc. of COLING/ACL, pages 531–538, 2006.
[14]
E. H. Manuel Roldan-Vega, Greg Mallet and J. Fails. Conquer: A tool for nl-based query refinement and contextualizing source code search results. In Proc. of ICSM, Sep 2013.
[15]
A. Marcus, A. Sergeyev, V. Rajlich, and J. Maletic. An information retrieval approach to concept location in source code. In Proc. of WCRE, pages 214–223, 2004.
[16]
M. Petrenko, V. Rajlich, and R. Vanciu. Partial domain comprehension in software evolution and maintenance. In Proc. of ICPC, pages 13–22, 2008.
[17]
D. Poshyvanyk, A. Marcus, and Y. Dong. Jiriss - an eclipse plug-in for source code exploration. In Proc. of ICPC, pages 252–255, 2006.
[18]
T. Savage, M. Revelle, and D. Poshyvanyk. Flat3: feature location and textual tracing tool. In Proc. of ICSE, volume 2, pages 255–258, 2010.
[19]
N. Sawadsky, G. C. Murphy, and R. Jiresal. Reverb: Recommending code-related web pages. In Proc. of ICSE, pages 812–821, 2013.
[20]
D. Shepherd, K. Damevski, B. Ropski, and T. Fritz. Sando: an extensible local code search framework. In Proc. of FSE, pages 15:1–15:2, 2012.
[21]
D. Shepherd, Z. P. Fry, E. Hill, L. Pollock, and K. Vijay-Shanker. Using natural language program analysis to locate and understand action-oriented concerns. In Proc. of AOSD, pages 212–224, 2007.
[22]
J. Starke, C. Luce, and J. Sillito. Searching and skimming: An exploratory study. In Proc. of ICSM’09, pages 157–166.
[23]
J. Yang and L. Tan. Inferring semantically related words from software context. In Proc. of MSR’12, pages 161–170.

Cited By

View all
  • (2024)An API Recommendation Method for Querying Mobile Computing ProblemsInternational Journal of Cognitive Informatics and Natural Intelligence10.4018/IJCINI.34442218:1(1-16)Online publication date: 30-May-2024
  • (2024)Supporting Web-Based API Searches in the IDE Using SignaturesProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639089(1-12)Online publication date: 20-May-2024
  • (2024)Approaching code search for python as a translation retrieval problem with dual encodersEmpirical Software Engineering10.1007/s10664-024-10580-330:1Online publication date: 30-Oct-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE Companion 2014: Companion Proceedings of the 36th International Conference on Software Engineering
May 2014
741 pages
ISBN:9781450327688
DOI:10.1145/2591062
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 the author(s) 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].

Sponsors

In-Cooperation

  • TCSE: IEEE Computer Society's Tech. Council on Software Engin.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 31 May 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Initial search
  2. change task
  3. heuristic
  4. search term

Qualifiers

  • Article

Conference

ICSE '14
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)0
Reflects downloads up to 30 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)An API Recommendation Method for Querying Mobile Computing ProblemsInternational Journal of Cognitive Informatics and Natural Intelligence10.4018/IJCINI.34442218:1(1-16)Online publication date: 30-May-2024
  • (2024)Supporting Web-Based API Searches in the IDE Using SignaturesProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639089(1-12)Online publication date: 20-May-2024
  • (2024)Approaching code search for python as a translation retrieval problem with dual encodersEmpirical Software Engineering10.1007/s10664-024-10580-330:1Online publication date: 30-Oct-2024
  • (2023)A Systematic Review of Automated Query Reformulations in Source Code SearchACM Transactions on Software Engineering and Methodology10.1145/360717932:6(1-79)Online publication date: 4-Jul-2023
  • (2022)Fine-grained Co-Attentive Representation Learning for Semantic Code Search2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER53432.2022.00055(396-407)Online publication date: Mar-2022
  • (2021)Self-Attention Networks for Code SearchInformation and Software Technology10.1016/j.infsof.2021.106542134(106542)Online publication date: Jun-2021
  • (2021)The forgotten role of search queries in IR-based bug localization: an empirical studyEmpirical Software Engineering10.1007/s10664-021-10022-426:6Online publication date: 23-Aug-2021
  • (2020)Improving Code Search with Co-Attentive Representation LearningProceedings of the 28th International Conference on Program Comprehension10.1145/3387904.3389269(196-207)Online publication date: 13-Jul-2020
  • (2020)Req2Lib: A Semantic Neural Model for Software Library Recommendation2020 IEEE 27th International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER48275.2020.9054865(542-546)Online publication date: Feb-2020
  • (2020)RASOP: An API Recommendation Method Based on Word Embedding TechnologyArtificial Intelligence Algorithms and Applications10.1007/978-981-15-5577-0_21(281-295)Online publication date: 26-May-2020
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media