Skip to main content

Showing 1–10 of 10 results for author: Ciniselli, M

.
  1. arXiv:2405.12731  [pdf, other

    cs.SE

    From Today's Code to Tomorrow's Symphony: The AI Transformation of Developer's Routine by 2030

    Authors: Matteo Ciniselli, Niccolò Puccinelli, Ketai Qiu, Luca Di Grazia

    Abstract: In the rapidly evolving landscape of software engineering, the integration of Artificial Intelligence (AI) into the Software Development Life-Cycle (SDLC) heralds a transformative era for developers. Recently, we have assisted to a pivotal shift towards AI-assisted programming, exemplified by tools like GitHub Copilot and OpenAI's ChatGPT, which have become a crucial element for coding, debugging,… ▽ More

    Submitted 21 May, 2024; originally announced May 2024.

  2. arXiv:2403.15149  [pdf, other

    cs.SE

    On the Generalizability of Deep Learning-based Code Completion Across Programming Language Versions

    Authors: Matteo Ciniselli, Alberto Martin-Lopez, Gabriele Bavota

    Abstract: Code completion is a key feature of Integrated Development Environments (IDEs), aimed at predicting the next tokens a developer is likely to write, hel** them write code faster and with less effort. Modern code completion approaches are often powered by deep learning (DL) models. However, the swift evolution of programming languages poses a critical challenge to the performance of DL-based code… ▽ More

    Submitted 22 March, 2024; originally announced March 2024.

  3. arXiv:2402.00519  [pdf, other

    cs.SE

    Towards Summarizing Code Snippets Using Pre-Trained Transformers

    Authors: Antonio Mastropaolo, Matteo Ciniselli, Luca Pascarella, Rosalia Tufano, Emad Aghajani, Gabriele Bavota

    Abstract: When comprehending code, a hel** hand may come from the natural language comments documenting it that, unfortunately, are not always there. To support developers in such a scenario, several techniques have been presented to automatically generate natural language summaries for a given code. Most recent approaches exploit deep learning (DL) to automatically document classes or functions, while li… ▽ More

    Submitted 1 February, 2024; originally announced February 2024.

  4. arXiv:2401.05136  [pdf, other

    cs.SE

    Code Review Automation: Strengths and Weaknesses of the State of the Art

    Authors: Rosalia Tufano, Ozren Dabić, Antonio Mastropaolo, Matteo Ciniselli, Gabriele Bavota

    Abstract: The automation of code review has been tackled by several researchers with the goal of reducing its cost. The adoption of deep learning in software engineering pushed the automation to new boundaries, with techniques imitating developers in generative tasks, such as commenting on a code change as a reviewer would do or addressing a reviewer's comment by modifying code. The performance of these tec… ▽ More

    Submitted 10 January, 2024; originally announced January 2024.

  5. arXiv:2312.15475  [pdf, other

    cs.SE

    Evaluating Code Summarization Techniques: A New Metric and an Empirical Characterization

    Authors: Antonio Mastropaolo, Matteo Ciniselli, Massimiliano Di Penta, Gabriele Bavota

    Abstract: Several code summarization techniques have been proposed in the literature to automatically document a code snippet or a function. Ideally, software developers should be involved in assessing the quality of the generated summaries. However, in most cases, researchers rely on automatic evaluation metrics such as BLEU, ROUGE, and METEOR. These metrics are all based on the same assumption: The higher… ▽ More

    Submitted 24 December, 2023; originally announced December 2023.

  6. arXiv:2302.04098  [pdf, other

    cs.SE

    Source Code Recommender Systems: The Practitioners' Perspective

    Authors: Matteo Ciniselli, Luca Pascarella, Emad Aghajani, Simone Scalabrino, Rocco Oliveto, Gabriele Bavota

    Abstract: The automatic generation of source code is one of the long-lasting dreams in software engineering research. Several techniques have been proposed to speed up the writing of new code. For example, code completion techniques can recommend to developers the next few tokens they are likely to type, while retrieval-based approaches can suggest code snippets relevant for the task at hand. Also, deep lea… ▽ More

    Submitted 8 February, 2023; originally announced February 2023.

  7. arXiv:2302.00438  [pdf, other

    cs.SE

    On the Robustness of Code Generation Techniques: An Empirical Study on GitHub Copilot

    Authors: Antonio Mastropaolo, Luca Pascarella, Emanuela Guglielmi, Matteo Ciniselli, Simone Scalabrino, Rocco Oliveto, Gabriele Bavota

    Abstract: Software engineering research has always being concerned with the improvement of code completion approaches, which suggest the next tokens a developer will likely type while coding. The release of GitHub Copilot constitutes a big step forward, also because of its unprecedented ability to automatically generate even entire functions from their natural language description. While the usefulness of C… ▽ More

    Submitted 1 February, 2023; originally announced February 2023.

  8. arXiv:2204.06894  [pdf, other

    cs.SE

    To What Extent do Deep Learning-based Code Recommenders Generate Predictions by Cloning Code from the Training Set?

    Authors: Matteo Ciniselli, Luca Pascarella, Gabriele Bavota

    Abstract: Deep Learning (DL) models have been widely used to support code completion. These models, once properly trained, can take as input an incomplete code component (e.g., an incomplete function) and predict the missing tokens to finalize it. GitHub Copilot is an example of code recommender built by training a DL model on millions of open source repositories: The source code of these repositories acts… ▽ More

    Submitted 14 April, 2022; originally announced April 2022.

  9. An Empirical Study on the Usage of Transformer Models for Code Completion

    Authors: Matteo Ciniselli, Nathan Cooper, Luca Pascarella, Antonio Mastropaolo, Emad Aghajani, Denys Poshyvanyk, Massimiliano Di Penta, Gabriele Bavota

    Abstract: Code completion aims at speeding up code writing by predicting the next code token(s) the developer is likely to write. Works in this field focused on improving the accuracy of the generated predictions, with substantial leaps forward made possible by deep learning (DL) models. However, code completion techniques are mostly evaluated in the scenario of predicting the next token to type, with few e… ▽ More

    Submitted 18 November, 2021; v1 submitted 3 August, 2021; originally announced August 2021.

    Comments: arXiv admin note: substantial text overlap with arXiv:2103.07115

  10. arXiv:2103.07115  [pdf, other

    cs.SE

    An Empirical Study on the Usage of BERT Models for Code Completion

    Authors: Matteo Ciniselli, Nathan Cooper, Luca Pascarella, Denys Poshyvanyk, Massimiliano Di Penta, Gabriele Bavota

    Abstract: Code completion is one of the main features of modern Integrated Development Environments (IDEs). Its objective is to speed up code writing by predicting the next code token(s) the developer is likely to write. Research in this area has substantially bolstered the predictive performance of these techniques. However, the support to developers is still limited to the prediction of the next few token… ▽ More

    Submitted 12 March, 2021; originally announced March 2021.

    Comments: Accepted to the 18th International Conference on Mining Software Repositories (MSR 2021)