Cited by 26Software Engineering ResearchRecommender Systems and TechniquesSoftware Engineering Techniques and Practices

Evaluating the evaluations of code recommender systems: a reality check

Proksch, Sebastian, Amann, Sven, Nadi, Sarah, Mezini, Mira·2016·Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering

Abstract

While researchers develop many new exciting code recommender systems, such as method-call completion, code-snippet completion, or code search, an accurate evaluation of such systems is always a challenge. We analyzed the current literature and found that most of the current evaluations rely on artificial queries extracted from released code, which begs the question: Do such evaluations reflect real-life usages? To answer this question, we capture 6,189 fine-grained development histories from real IDE interactions. We use them as a ground truth and extract 7,157 real queries for a specific method-call recommender system. We compare the results of such real queries with different artificial evaluation strategies and check several assumptions that are repeatedly used in research, but never empirically evaluated. We find that an evolving context that is often observed in practice has a major effect on the prediction quality of recommender systems, but is not commonly reflected in artificial evaluations.

Integrity signals

Registry

Crossref · 10.1145/2970276.2970330

Cites

3 of 3 references verified0 citation errors · 0 not checkable

Statistics

Recomputing p-values needs the paper’s full text.

Claims the paper makes

This paper’s full text isn’t openly available, so its claims and self-check weren’t run. The registry and citation checks still apply.

Claims other papers make about this one

Each is checked against this paper’s own text: does it say what the citing paper says it does?

  • Code completion models are typically trained on data collected from existing codebases but then deployed more generally across other codebases, which may have different distributions of API usages.

    “These models are typically trained on data collected from existing codebases but then deployed more generally across other codebases, which may have different distributions of API usages (Nita and Notkin, 2010; Proksch et al., 2016; Allamanis and Brockschmidt, 2017).”

    From WILDS: A Benchmark of in-the-Wild Distribution Shifts (2020) · cites this paper as Proksch et al., 2016

  • In Py150-wilds, the task focuses on class name and method name prediction because developer studies indicate these are used most commonly by developers.

    “To define a task closer to real applications, in Py150-wilds we focus on class name and method name prediction (which are used most commonly by developers).”

    From WILDS: A Benchmark of in-the-Wild Distribution Shifts (2020) · cites this paper as Proksch et al., 2016

Cites

Flagged first, then by citations

Cited by

Sorted by citations

Authors
Proksch, S., Amann, S., Nadi, S., & Mezini, M.
Affiliations
Technische Universität Darmstadt (DE)
Venue
Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering
Publisher
ACM
Published
2016-08-25
Pages
111-121
OpenAlex
W2509810107
Cited by
26
References
3
Citations by year
2026: 1 · 2025: 1 · 2024: 1 · 2023: 4 · 2022: 1 · 2021: 1 · 2020: 3 · 2019: 5 · 2018: 6 · 2017: 3
FWCI
3.96
Type
conference paper
Language
en
Open access
closed
Locations
IEEE/ACM International Conference on Automated Software Engineering (ASE) (publishedVersion)
Funders
  • Deutsche Forschungsgemeinschaft (SFB #1119, project E1)
  • Bundesministerium für Bildung und Forschung (01IS12054)
Topics
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Research
  • Physical Sciences › Computer Science › Information Systems › Recommender Systems and Techniques
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Techniques and Practices
Keywords
ground truth, prediction quality, code search, code completion

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review