skip to main content
10.1145/3299815.3314471acmconferencesArticle/Chapter ViewAbstractPublication Pagesacm-seConference Proceedingsconference-collections
short-paper

Code Search on Bytecode for Mobile App Development

Published: 18 April 2019 Publication History

Abstract

Code search is an essential task in software development. Existing code search engines often rely on open-source software code repositories to build their search database. However, in mobile app development, high quality code is rarely available as open-source. In this paper, we propose SUSHI, a novel code search system for mobile app development that exploits the vast amount of high-quality, production-ready code from millions of mobile apps publicly available on online app stores. SUSHI extracts names and usages of APIs directly from apps' bytecode and learns vector based representations of technical terms and statistical models of API usages. Then, it uses those vectors and models to calculate the relevance of queries and code snippets collected from mobile apps or other source code corpata if compatible.

References

[1]
http://www.codota.com
[2]
https://github.com/JesusFreke/smali
[3]
J. Lou, S. Wang, D. Zhang, F. Lv, H. Zhang, and J. Zhao. CodeHow: Effective Code Search based on API Understanding and Extended Boolean Model. In ASE'15. Nebraska, USA.
[4]
O. A. L. Lemos, S. K. Bajracharya, and J. Ossher. CodeGenie: A Tool for Test-driven Source Code Search. In OOPSLA'07. Tennessee, USA.
[5]
C. D. Manning, P. Raghavan, and H. Schütze. Introduction to Information Retrieval. Cambridge University Press 2008.
[6]
A. Nguyen, T. Nguyen, H. Nguyen, A. Tamrawi, H.V. Nguyen, J. Al-Kofahi, and T.N. Nguyen. Graph-based Pattern-oriented, Context-sensitive Source Code Completion. In ICSE'12. Zurich, Switzerland.
[7]
T. Nguyen, H. Nguyen, N. Pham, J. AlKofahi, and T. Nguyen. Graph-based Mining of Multiple Object Usage Patterns. In ESEC/FSE'09. Amsterdam, Netherlands.
[8]
T. Nguyen, H. Pham, P. Vu, and T. Nguyen. Recommending API Usages for Mobile Apps with Hidden Markov Model. In ASE'15. Nebraska, USA.
[9]
T. T. Nguyen, H. V. Pham, P. M. Vu, and T. T. Nguyen. Learning API Usages from Bytecode: A Statistical Approach. ICSE'16. Texas, USA.
[10]
J. Pennington, R. Socher, and C. D. Manning. Glove: Global Vectors for Word Representation. In EMNLP'14. Doha, Qatar.
[11]
L. R. Rabiner and B. H. Juang. An Introduction to Hidden Markov Models. In IEEE ASSP Magazine 1986.
[12]
S. P. Reiss. Semantics-based Code Search. In ICSE'09. In Montreal, Canada.
[13]
M. White, M. Tufano, C. Vendome, and D. Poshyvanyk. Deep Learning Code Fragments for Code Clone Detection. In ASE'16. Singapore, Singapore.
[14]
X. Xia, L. Bao, D. Lo, P. S. Kochhar, A. E. Hassan, and Z. Xing. What Do Developers Search for on the Web?. In Empirical Software Engineering 2017.
[15]
S. Kim, X. Gu, and H. Zhang. Deep Code Search. In ICSE'18. Gothenburg, Sweden.

Cited By

View all
  • (2023)Big Code Search: A BibliographyACM Computing Surveys10.1145/360490556:1(1-49)Online publication date: 26-Aug-2023
  • (2023)Finding Source Code Clones in Intermediate Representations of Java Bytecode2023 IEEE 17th International Workshop on Software Clones (IWSC)10.1109/IWSC60764.2023.00014(37-43)Online publication date: 1-Oct-2023
  • (2021)Stubber: Compiling Source Code into Bytecode without Dependencies for Java Code Clone Detection2021 IEEE 15th International Workshop on Software Clones (IWSC)10.1109/IWSC53727.2021.00011(29-35)Online publication date: Oct-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ACMSE '19: Proceedings of the 2019 ACM Southeast Conference
April 2019
295 pages
ISBN:9781450362511
DOI:10.1145/3299815
  • Conference Chair:
  • Dan Lo,
  • Program Chair:
  • Donghyun Kim,
  • Publications Chair:
  • Eric Gamess
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 April 2019

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Application Programming Interface
  2. Code search
  3. Word Vectors

Qualifiers

  • Short-paper
  • Research
  • Refereed limited

Conference

ACM SE '19
Sponsor:
ACM SE '19: 2019 ACM Southeast Conference
April 18 - 20, 2019
GA, Kennesaw, USA

Acceptance Rates

Overall Acceptance Rate 502 of 1,023 submissions, 49%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Big Code Search: A BibliographyACM Computing Surveys10.1145/360490556:1(1-49)Online publication date: 26-Aug-2023
  • (2023)Finding Source Code Clones in Intermediate Representations of Java Bytecode2023 IEEE 17th International Workshop on Software Clones (IWSC)10.1109/IWSC60764.2023.00014(37-43)Online publication date: 1-Oct-2023
  • (2021)Stubber: Compiling Source Code into Bytecode without Dependencies for Java Code Clone Detection2021 IEEE 15th International Workshop on Software Clones (IWSC)10.1109/IWSC53727.2021.00011(29-35)Online publication date: Oct-2021
  • (2020)Mining Hidden and Fragmented API Usages in Android ApplicationsApplied Sciences10.3390/app1024904810:24(9048)Online publication date: 17-Dec-2020

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