MétaCan
Menu
Back to cohort

An open-source natural language processing toolkit to support software development: addressing automatic bug detection, code summarisation and code search

2022· article· en· W4221130019 on OpenAlexaff
Cristian Robledo, Francesca Sallicati, Gaël de Chalendar, Marcos Fernández, P. De Castro Manzano, E. L. Martı́n, Javier Gutiérrez, Yannis Bouachera

Bibliographic record

VenueOpen Research Europe · 2022
Typearticle
Languageen
FieldComputer Science
TopicSoftware Engineering Research
Canadian institutionsConcordia University
FundersHorizon 2020 Framework ProgrammeEuropean Commission
KeywordsComputer scienceSoftware engineeringCodebaseCode reviewSource codeParsingCode generationDocumentationSoftwareCode (set theory)KPI-driven code analysisTRACE (psycholinguistics)Software developmentProgramming languageWorld Wide WebStatic program analysisOperating systemKey (lock)

Abstract

fetched live from OpenAlex

This paper aims to introduce the innovative work carried out in the Horizon 2020 DECODER project – acronym for “DEveloper COmpanion for Documented and annotatEd code Reference” – (Grant Agreement no. 824231) by linking the fields of natural language processing (NLP) and software engineering. The project as a whole addresses the development of a framework, namely the Persistent Knowledge Monitor (PKM), that acts as a central infrastructure to store, access, and trace all the data, information and knowledge related to a given software or ecosystem. This meta-model defines the knowledge base that can be queried and analysed by all the tools integrated and developed in DECODER. Besides, the DECODER project offers a friendly user interface where each of the predefined three roles (i.e., developers, maintainers and reviewers) can access and query the PKM with their personal accounts. The paper focuses on the NLP tools developed and integrated in the PKM, namely the deep learning models developed to perform variable misuse, code summarisation and semantic parsing. These were developed under a common work package – “Activities for the developer” – intended to precisely target developers, who can perform tasks such as detection of bugs, automatic generation of documentation for source code and generation of code snippets from natural languages instructions, among the multiple functionalities that DECODER offers. These tools assist and help the developers in the daily work, by increasing their productivity and avoiding loss of time in tedious tasks such as manual bug detection. Training and validation were conducted for four use cases in Java, C and C++ programming languages in order to evaluate the performance, suitability, usability, etc. of the developed tools.

Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.

How this classification was reachedexpand

Full frame machine prediction

Teacher imitation

Not calibrated prevalence, not ground truth. Human validation pending. The Gemma side is a direct model label for every work in the frame, read from the title-only record. The Codex side is a classifier learned from the 10,348 direct Codex labels and calibrated to design-weighted sample rates; fields without enough sample support carry no Codex call. Candidate is the union of the two sides; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels.

metaresearch head score (Codex)0.003
metaresearch head score (Gemma)0.016
Version: metacan-v3-hybrid-931329e0061cValidation status: machine_predicted_unvalidated
Candidate categoriesnone
Consensus categoriesnone
DomainCandidate signal: none · Consensus signal: none
Study designCandidate signal: Not applicable · Consensus signal: none
GenreCandidate signal: Software · Consensus signal: none
Teacher disagreement score0.030
Threshold uncertainty score0.101

Distilled classifier scores by category (both heads)

CategoryCodexGemma
Metaresearch0.0030.016
Meta-epidemiology (narrow)0.0020.002
Meta-epidemiology (broad)0.0010.003
Bibliometrics0.0040.002
Science and technology studies0.0010.001
Scholarly communication0.0030.006
Open science0.0040.005
Research integrity0.0020.003
Insufficient payload (model declined to judge)0.0300.030

Machine scores (provisional)

The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.

Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.

Opus teacher head0.092
GPT teacher head0.389
Teacher spread0.298 · how far apart the two teachers sit on this one work
Validation statusscore_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from it

Classification

machine, unvalidated

Machine predicted; a candidate call from one source (direct Gemma or distilled Codex), not a consensus.

The models applied no category: nothing in the taxonomy fit this work.
Study designNot applicable
Domainnot available
GenreSoftware

How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".

Quick stats

Citations1
Published2022
Admission routes1
Has abstractyes

Explore more

Same venueOpen Research EuropeSame topicSoftware Engineering ResearchFrench-language works237,207