Not logged in.

Contribution Details

Type Conference or Workshop Paper
Scope Discipline-based scholarship
Published in Proceedings Yes
Title When Code Completion Fails: A Case Study on Real-World Completions
Organization Unit
Authors
  • Vincent J. Hellendoorn
  • Sebastian Proksch
  • Harald C. Gall
  • Alberto Bacchelli
Presentation Type paper
Item Subtype Original Work
Refereed Yes
Status Published in final form
ISBN 978-1-7281-0869-8
Page Range 960 - 970
Event Title 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE)
Event Type conference
Event Location Montreal, QC, Canada
Event Start Date June 25 - 2019
Event End Date July 1 - 2019
Place of Publication USA
Publisher IEEE
Abstract Text Code completion is commonly used by software developers and is integrated into all major IDE's. Good completion tools can not only save time and effort but may also help avoid incorrect API usage. Many proposed completion tools have shown promising results on synthetic benchmarks, but these benchmarks make no claims about the realism of the completions they test. This lack of grounding in real-world data could hinder our scientific understanding of developer needs and of the efficacy of completion models. This paper presents a case study on 15,000 code completions that were applied by 66 real developers, which we study and contrast with artificial completions to inform future research and tools in this area. We find that synthetic benchmarks misrepresent many aspects of real-world completions; tested completion tools were far less accurate on real-world data. Worse, on the few completions that consumed most of the developers' time, prediction accuracy was less than 20% -- an effect that is invisible in synthetic benchmarks. Our findings have ramifications for future benchmarks, tool design and real-world efficacy: Benchmarks must account for completions that developers use most, such as intra-project APIs; models should be designed to be amenable to intra-project data; and real-world developer trials are essential to quantifying performance on the least predictable completions, which are both most time-consuming and far more typical than artificial data suggests. We publicly release our preprint [https://doi.org/10.5281/zenodo.2565673] and replication data and materials [https://doi.org/10.5281/zenodo.2562249].
Digital Object Identifier 10.1109/ICSE.2019.00101
PDF File Download
Export BibTeX
EP3 XML (ZORA)