VLDB 2026 Research / reviewers in the wild / expert
Ricardo Terra
dblp:23/5199 · also Ricardo Terra Nunes Bueno Villela
· DBLP profile ↗
12ranked-venue papers
5as first author
1since 2021 · last 2021
0000-0002-5824-7087ORCID · 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 · 1 since 2021Artificial intelligence and machine learning · 2 · 1 first-authorDatabases, data management, data science and information retrieval · 2Applied, interdisciplinary, general and emerging computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Software maintenance and evolution · 100% |
Topics — the 1 heaviest of 1, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution › refactoring
refactoring detection |
0.5 | 1 | 2021 | RefDiff 2.0: A Multi-Language Refactoring Detection Tool · IEEE Trans. Software Eng. 2021 |
Methods — techniques the papers use, named apart from their topics
plugin architecture · 0.5code structure tree · 0.5
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | RefDiff 2.0: A Multi-Language Refactoring Detection ToolabstractIdentifying refactoring operations in source code changes is valuable to understand software evolution. Therefore, several tools have been proposed to automatically detect refactorings applied in a system by comparing source code between revisions. The availability of such infrastructure has enabled researchers to study refactoring practice in large scale, leading to important advances on refactoring knowledge. However, although a plethora of programming languages are used in practice, the vast majority of existing studies are restricted to the Java language due to limitations of the underlying tools. This fact poses an important threat to external validity. Thus, to overcome such limitation, in this paper we propose RefDiff 2.0, a multi-language refactoring detection tool. Our approach leverages techniques proposed in our previous work and introduces a novel refactoring detection algorithm that relies on the Code Structure Tree (CST), a simple yet powerful representation of the source code that abstracts away the specificities of particular programming languages. Despite its language-agnostic design, our evaluation shows that RefDiff's precision (96 percent) and recall (80 percent) are on par with state-of-the-art refactoring detection approaches specialized in the Java language. Our modular architecture also enables one to seamlessly extend RefDiff to support other languages via a plugin system. As a proof of this, we implemented plugins to support two other popular programming languages: JavaScript and C. Our evaluation in these languages reveals that precision and recall ranges from 88 to 91 percent. With these results, we envision RefDiff as a viable alternative for breaking the single-language barrier in refactoring research and in practical applications of refactoring detection. Danilo Silva 0002, João Paulo da Silva, Gustavo Jansen de Souza Santos, Ricardo Terra, Marco Túlio Valente |
IEEE Trans. Software Eng. | 4 |
| 2018 | A Correlation Analysis between Halstead Complexity Measures and other Software MeasuresabstractHalstead Complexity Measures, proposed in 1977, analyze a software system independently of its underlying programming language (technology) based on the measures number of operators and operands. From these two measures, it calculates other measures namely vocabulary, length, volume, difficulty, programming effort, errors, and testing time. The problem, nevertheless, is that since then the Academy and Industry have been coming up with hundreds of new metrics that differ in their assertions and calculations. Therefore, the objective of this paper is to present a correlation analysis between the eleven Halstead measures and other 27 popular measures proposed over the decades (e.g., LOC, cyclomatic complexity, and efferent coupling) through the inspection of 97 open-source Java systems in order to (i) identify redundancy in measures and (ii) minimize the costs of monitoring and diagnosing software projects, facilitating the task of making measurements. As a result, we identified strong correlations between Halstead measures and other measures, mainly related to size such as quantity of methods, packages, attributes, etc. We also identified direct correlation of Halstead measurements with coupling measures named Afferent and Efferent Coupling, with values ranging from 0.802 to 0.931, which are quite close to the maximum value 1 for a correlation. These results demonstrate that-although there is no perfect correlation-there is enough correlation to hypothesize that there is an overlap of measures with different denominations whose measured results are equivalent. Rodrigo Tavares Coimbra, Antônio Resende, Ricardo Terra |
CLEI | 3 |
| 2018 | How do developers use dynamic features? The case of Ruby
Elder Rodrigues Jr., Ricardo Terra |
Comput. Lang. Syst. Struct. | 2 |
| 2018 | JMove: A novel heuristic and tool to detect move method refactoring opportunities
Ricardo Terra, Marco Túlio Valente, Sergio Miranda, Vitor Sales |
J. Syst. Softw. | 1 |
| 2017 | Supporting the Specification and Serialization of Planned Architectures in Architecture-Driven Modernization ContextabstractArchitecture-Driven Modernization (ADM) intends to standardize software reengineering by relying on a family of standard metamodels. Knowledge-Discovery Metamodel (KDM) is the main ADM ISO metamodel aiming at representing all aspects of existing legacy systems. One of the internal KDM metamodels is called Structure, responsible for representing architectural abstractions (Layers, Components and Subsystems) and their relationships. Planned Architecture (PA) is an artifact that involves not only the architectural abstractions of the system but also the access rules that must exist between them and be maintained over time. Although PAs are frequently used in Architecture-Conformance Checking processes, up to this moment, there is no contribution showing how to specify and serialize PAs in ADM-based modernization projects. Therefore, in this paper we present an approach that i) involves a DSL (Domain-Specific Language) for the specification of PAs using the Structure metamodel concepts, and ii) proposes a strategy for the serialization of PAs as a Structure metamodel instance without modifying it. We have conducted a comparison between DCL-KDM and other techniques for specifying and generating PAs. The results showed that DCL-KDM is an efficient alternative to to generate instances of the Structure metamodel as a PA and to serialize it. Andre de S. Landi, Fernando Chagas, Bruno Marinho Santos, Renato S. Costa, Rafael S. Durelli, Ricardo Terra, Valter Vieira de Camargo |
COMPSAC (1) | 6 |
| 2016 | Mining architectural violations from version history
Cristiano Amaral Maffort, Marco Túlio Valente, Ricardo Terra, Mariza Andrade da Silva Bigonha, Nicolas Anquetil, Andre Hora 0001 |
Empir. Softw. Eng. | 3 |
| 2015 | A recommendation system for repairing violations detected by static architecture conformance checkingabstractSummary This paper describes a recommendation system that provides refactoring guidelines for maintainers when tackling architectural erosion. The paper formalizes 32 refactoring recommendations to repair violations raised by static architecture conformance checking approaches; it describes a tool—called ArchFix—that triggers the proposed recommendations; and it evaluates the application of this tool in two industrial‐strength systems. For the first system—a 21 KLOC open‐source strategic management system—our approach has indicated correct refactoring recommendations for 31 out of 41 violations detected as the result of an architecture conformance process. For the second system—a 728 KLOC customer care system used by a major telecommunication company—our approach has triggered correct recommendations for 624 out of 787 violations, as asserted by the system's architect. Moreover, the architects have scored 82% of these recommendations as havingmoderateormajorcomplexity. Copyright © 2013 John Wiley & Sons, Ltd. Ricardo Terra, Marco Túlio Valente, Krzysztof Czarnecki 0001, Roberto da Silva Bigonha |
Softw. Pract. Exp. | 1 |
| 2014 | Recommending automated extract method refactoringsabstractExtract Method is a key refactoring for improving program comprehension. However, recent empirical research shows that refactoring tools designed to automate Extract Methods are often underused. To tackle this issue, we propose a novel approach to identify and rank Extract Method refactoring opportunities that are directly automated by IDE-based refactoring tools. Our approach aims to recommend new methods that hide structural dependencies that are rarely used by the remaining statements in the original method. We conducted an exploratory study to experiment and define the best strategies to compute the dependencies and the similarity measures used by the proposed approach. We also evaluated our approach in a sample of 81 extract method opportunities generated for JUnit and JHotDraw, achieving a precision of 48% (JUnit) and 38% (JHotDraw). Danilo Silva 0002, Ricardo Terra, Marco Túlio Valente |
ICPC | 2 |
| 2014 | Do developers discuss design?abstractDesign is often raised in the literature as important to attaining various properties and characteristics in a software system. At least for open-source projects, it can be hard to find evidence of ongoing design work in the technical artifacts produced as part of the development. Although developers usually do not produce specific design documents, they do communicate about design in different ways. In this paper, we provide quantitative evidence that developers address design through discussions in commits, issues, and pull requests. To achieve this, we built a discussions' classifier and automatically labeled 102,122 discussions from 77 projects. Based on this data, we make four observations about the projects: i) on average, 25% of the discussions in a project are about design; ii) on average, 26% of developers contribute to at least one design discussion; iii) only 1% of the developers contribute to more than 15% of the discussions in a project; and iv) these few developers who contribute to a broad range of design discussions are also the top committers in a project. João Brunet, Gail C. Murphy, Ricardo Terra, Jorge C. A. de Figueiredo, Dalton Serey Guerrero |
MSR | 3 |
| 2013 | Measuring the Structural Similarity between Source Code Entities (S)
Ricardo Terra, João Brunet, Luis Fernando Miranda, Marco Túlio Valente, Dalton Serey Guerrero, Douglas Castilho 0001, Roberto da Silva Bigonha |
SEKE | 1 |
| 2009 | A dependency constraint language to manage object-oriented software architecturesabstractAbstract This paper presents a domain‐specific dependency constraint language that allows software architects to restrict the spectrum of structural dependencies, which can be established in object‐oriented systems. The ultimate goal is to provide architects with means to define acceptable and unacceptable dependencies according to the planned architecture of their systems. Once defined, such restrictions are statically enforced by a tool, thus avoiding silent erosions in the architecture. The paper also presents results from applying the proposed approach to different versions of a real‐world human resource management system. Copyright © 2009 John Wiley & Sons, Ltd. Ricardo Terra, Marco Túlio Valente |
Softw. Pract. Exp. | 1 |
| 2008 | Towards a Dependency Constraint Language to Manage Software Architectures
Ricardo Terra, Marco Túlio Valente |
ECSA | 1 |