VLDB 2026 Research / reviewers in the wild / expert
João Eduardo Montandon
dblp:128/2576
· DBLP profile ↗
12ranked-venue papers
5as first author
10since 2021 · last 2026
0000-0002-3371-7353ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 12 · 5 first-author · 10 since 2021Databases, data management, data science and information retrieval · 2 · 1 first-author · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Testing Framework Migration with Large Language ModelsabstractPython developers rely on two major testing frameworks: unittest and Pytest. While Pytest offers simpler assertions, reusable fixtures, and better interoperability, migrating existing suites from unittest remains a manual and time-consuming process. Automating this migration could substantially reduce effort and accelerate test modernization. In this paper, we investigate the capability of Large Language Models (LLMs) to automate test framework migrations from unittest to Pytest. We evaluate GPT 4o and Claude Sonnet 4 under three prompting strategies (Zero-shot, One-shot, and Chain-of-Thought) and two temperature settings (0.0 and 1.0). To support this analysis, we first introduce a curated dataset of real-world migrations extracted from the top 100 Python open-source projects. Next, we actually execute the LLM-generated test migrations in their respective test suites. Overall, we find that 51.5% of the LLM-generated test migrations failed, while 48.5% passed. The results suggest that LLMs can accelerate test migration, but there are often caveats. For example, Claude Sonnet 4 exhibited more conservative migrations (e.g., preserving class-based tests and legacy unittest references), while GPT-4o favored more transformations (e.g., to function-based tests). We conclude by discussing multiple implications for practitioners and researchers. Altino Alves, João Eduardo Montandon, Andre Hora 0001 |
AST | 2 |
| 2026 | Understanding Type Hints in Python Libraries and Frameworks: Early InsightsabstractIn Python, type hints allow developers to annotate variables and functions with explicit type information, improving code clarity and reliability. This paper presents an initial study on the adoption and usage of type hints in Python libraries and frameworks. By analyzing 1,000 popular GitHub repositories, we address two questions: (a) whether libraries and frameworks adopt type hints, and (b) how type hints are used in these components. While 91% of libraries use type hints at least once, this adoption is not consistent, as half of them cover only 13.6% of their members with types. Considering libraries with systematic usage, maintainers prioritize annotating function parameters and return types (45.8% and 35.9% median coverage), mainly using built-in types (73.0%). These findings highlight the role of type hints in APIs maintenance while pointing to opportunities for improved tooling and automation. Thiago Roberto Magalhães, João Eduardo Montandon |
ICPC | 2 |
| 2026 | GivenWhenThen: A Dataset of BDD Test Scenarios Mined from Open Source ProjectsabstractSystem tests play a crucial role in ensuring the overall quality and reliability of software systems as a whole. Still, we lack large-scale studies and datasets focusing on investigating this type of testing, particularly in the context of Behavior-Driven Development (BDD). In this work we present the GivenWhenThen (GWT) dataset, a collection of 2,289 BDD test scenarios mined from 1,720 real-world open source projects. Each test scenario contains three artifacts: (a) a feature file describing the BDD scenario in plain text, (b) a step definition file responsible for implementing the steps described in the feature file, and (c) a list of system code files used by the step definitions. This way, we ensure to provide a dataset suitable for training and evaluating AI models, conducting empirical studies on BDD practices, and developing tools to automate or assist the creation, maintenance, and execution of BDD test scenarios. Luciano Belo de Alcântara Júnior, João Eduardo Montandon |
MSR | 2 |
| 2025 | Unboxing Default Argument Breaking Changes in 1 + 2 data science libraries
João Eduardo Montandon, Luciana Lourdes Silva, Cristiano Politowski, Daniel Prates, Arthur de Brito Bonifácio, Ghizlane El-Boussaidi |
J. Syst. Softw. | 1 |
| 2024 | Detecting Code Smells using ChatGPT: Initial InsightsabstractThis paper presents initial insights into the effectiveness of ChatGPT in detecting code smells in Java projects. We utilize a large dataset comprising four code smells—Blob, Data Class, Feature Envy, and Long Method—classified into three severity levels. To assess ChatGPT’s proficiency, we employ two different prompts: (i) a generic prompt and (ii) a prompt specifying the smells selected for our research. We evaluate ChatGPT’s abilities using metrics such as precision, recall, and F-measure. Our results reveal that the odds of ChatGPT providing a correct outcome with a specific prompt are 2.54 times higher compared to a generic one. Furthermore, ChatGPT is more effective at detecting smells with critical severity (F-measure = 0.52) than those with minor severity (F-measure = 0.43). Finally, we discuss the implications of our findings and suggest future research directions for leveraging large language models to detect code smells. Luciana Lourdes Silva, Janio Rosa da Silva, João Eduardo Montandon, Marcus Andrade, Marco Túlio Valente |
ESEM | 3 |
| 2023 | Unboxing Default Argument Breaking Changes in Scikit LearnabstractMachine Learning (ML) has revolutionized the field of computer software development, enabling data-based predictions and decision-making across several domains. Following modern software development practices, developers use third-party libraries—e.g., Scikit Learn, TensorFlow, and PyTorch—to integrate ML-based functionalities into their applications. Due to the complexity inherent in ML techniques, the models available in the APIs of these tools often require an extensive list of arguments to be set up. Library maintainers overcome this issue by defining default values for most of these arguments so developers can use ML models in their client applications effortlessly. By relying on these default arguments, the clients inadvertently depend on the value defined in these parameters to keep running as expected. We interpret this problem as a semantical breaking change variant, which we named Default Argument Breaking Change (DABC). In this work, we leverage 77 DABCs in Scikit Learn—a well-known ML library—and investigate how 194K client applications are vulnerable to them. Our results show that 72 DABCs (93%) are responsible for exposing 67,747 clients (35%). We also detected that most DABCs (61, 79%) involve APIs used in ML model training and model evaluation stages. Finally, we discuss the importance of managing DABCs in third-party ML libraries and provide insights for developers to mitigate the potential impact of these changes in their applications. João Eduardo Montandon, Luciana Lourdes Silva, Cristiano Politowski, Ghizlane El-Boussaidi, Marco Túlio Valente |
SCAM | 1 |
| 2022 | On the documentation of self-admitted technical debt in issues
Laerte Xavier, João Eduardo Montandon, Fabio Ferreira, Rodrigo Brito, Marco Túlio Valente |
Empir. Softw. Eng. | 2 |
| 2021 | What skills do IT companies look for in new developers? A study with Stack Overflow jobs
João Eduardo Montandon, Cristiano Politowski, Luciana Lourdes Silva, Marco Túlio Valente, Fábio Petrillo, Yann-Gaël Guéhéneuc |
Inf. Softw. Technol. | 1 |
| 2021 | Mining the Technical Roles of GitHub Users
João Eduardo Montandon, Marco Túlio Valente, Luciana Lourdes Silva |
Inf. Softw. Technol. | 1 |
| 2021 | Are game engines software frameworks? A three-perspective study
Cristiano Politowski, Fábio Petrillo, João Eduardo Montandon, Marco Túlio Valente, Yann-Gaël Guéhéneuc |
J. Syst. Softw. | 3 |
| 2019 | Identifying experts in software libraries and frameworks among GitHub usersabstractSoftware development increasingly depends on libraries and frameworks to increase productivity and reduce time-to-market. Despite this fact, we still lack techniques to assess developers expertise in widely popular libraries and frameworks. In this paper, we evaluate the performance of unsupervised (based on clustering) and supervised machine learning classifiers (Random Forest and SVM) to identify experts in three popular JavaScript libraries: facebook/react, mongodb/node-mongodb, and socketio/socket.io. First, we collect 13 features about developers activity on GitHub projects, including commits on source code files that depend on these libraries. We also build a ground truth including the expertise of 575 developers on the studied libraries, as self-reported by them in a survey. Based on our findings, we document the challenges of using machine learning classifiers to predict expertise in software libraries, using features extracted from GitHub. Then, we propose a method to identify library experts based on clustering feature data from GitHub; by triangulating the results of this method with information available on Linkedin profiles, we show that it is able to recommend dozens of GitHub users with evidences of being experts in the studied JavaScript libraries. We also provide a public dataset with the expertise of 575 developers on the studied libraries. João Eduardo Montandon, Luciana Lourdes Silva, Marco Túlio Valente |
MSR | 1 |
| 2013 | Static correspondence and correlation between field defects and warnings reported by a bug finding tool
César Couto, João Eduardo Montandon, Christofer Silva, Marco Túlio Valente |
Softw. Qual. J. | 2 |