TU Darmstadt / ULB / TUbiblio

Intelligent Code Completion with Bayesian Networks

Proksch, Sebastian ; Lerch, Johannes ; Mezini, Mira (2015)
Intelligent Code Completion with Bayesian Networks.
In: ACM Transactions on Software Engineering and Methodology (TOSEM), 25 (1)
Artikel, Bibliographie

Kurzbeschreibung (Abstract)

Code completion is an integral part of modern Integrated Development Environments (IDEs). Developers often use it to explore Application Programming Interfaces (APIs). It is also useful to reduce the required amount of typing and to help avoid typos. Traditional code completion systems propose all type-correct methods to the developer. Such a list is often very long with many irrelevant items. More intelligent code completion systems have been proposed in prior work to reduce the list of proposed methods to relevant items.

This work extends one of these existing approaches, the Best Matching Neighbor (BMN) algorithm. We introduce Bayesian networks as an alternative underlying model, use additional context information for more precise recommendations, and apply clustering techniques to improve model sizes. We compare our new approach, Pattern-based Bayesian Networks (PBN), to the existing BMN algorithm. We extend previously used evaluation methodologies and, in addition to prediction quality, we also evaluate model size and inference speed.

Our results show that the additional context information we collect improves prediction quality, especially for queries that do not contain method calls. We also show that PBN can obtain comparable prediction quality to BMN, while model size and inference speed scale better with large input sizes.

Typ des Eintrags: Artikel
Erschienen: 2015
Autor(en): Proksch, Sebastian ; Lerch, Johannes ; Mezini, Mira
Art des Eintrags: Bibliographie
Titel: Intelligent Code Completion with Bayesian Networks
Sprache: Englisch
Publikationsjahr: Dezember 2015
Ort: New York, NY, USA
Verlag: ACM Press
Titel der Zeitschrift, Zeitung oder Schriftenreihe: ACM Transactions on Software Engineering and Methodology (TOSEM)
Jahrgang/Volume einer Zeitschrift: 25
(Heft-)Nummer: 1
Veranstaltungsort: New York, NY, USA
URL / URN: http://doi.acm.org/10.1145/2744200
Kurzbeschreibung (Abstract):

Code completion is an integral part of modern Integrated Development Environments (IDEs). Developers often use it to explore Application Programming Interfaces (APIs). It is also useful to reduce the required amount of typing and to help avoid typos. Traditional code completion systems propose all type-correct methods to the developer. Such a list is often very long with many irrelevant items. More intelligent code completion systems have been proposed in prior work to reduce the list of proposed methods to relevant items.

This work extends one of these existing approaches, the Best Matching Neighbor (BMN) algorithm. We introduce Bayesian networks as an alternative underlying model, use additional context information for more precise recommendations, and apply clustering techniques to improve model sizes. We compare our new approach, Pattern-based Bayesian Networks (PBN), to the existing BMN algorithm. We extend previously used evaluation methodologies and, in addition to prediction quality, we also evaluate model size and inference speed.

Our results show that the additional context information we collect improves prediction quality, especially for queries that do not contain method calls. We also show that PBN can obtain comparable prediction quality to BMN, while model size and inference speed scale better with large input sizes.

Freie Schlagworte: Content assist, code completion, code recommender, evaluation, integrated development environments, machine learning, productivity; Engineering; E1
Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Softwaretechnik
DFG-Sonderforschungsbereiche (inkl. Transregio)
DFG-Sonderforschungsbereiche (inkl. Transregio) > Sonderforschungsbereiche
DFG-Sonderforschungsbereiche (inkl. Transregio) > Sonderforschungsbereiche > SFB 1119: CROSSING – Kryptographiebasierte Sicherheitslösungen als Grundlage für Vertrauen in heutigen und zukünftigen IT-Systemen
Hinterlegungsdatum: 29 Jan 2016 13:22
Letzte Änderung: 07 Mai 2019 14:26
PPN:
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen