Paulo Meirelles

dblp:37/5038 · also Paulo Roberto Miranda Meirelles · DBLP profile ↗
← Back
18ranked-venue papers
2as first author
10since 2021 · last 2026
0000-0002-8923-2814ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 15 · 1 first-author · 10 since 2021Systems, architecture and hardware · 2Human-computer interaction and ubiquitous computing · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1 · 1 first-author
YearPublicationVenuePosition
2026 When Do You Repeat Yourself? Voices from the Trenches of Linux Kernel Maintainers on Code Duplication
abstract
The Don’t Repeat Yourself (DRY) principle is central to software maintainability, but empirical studies challenge its rigid use, describing beneficial cases of duplication. However, these rely on retrospective analyses, leaving a gap in understanding real-time decision-making and socio-technical dynamics. This paper presents an ethnographic study on how the Linux kernel community manages duplication debt via deduplication contributions. We conducted a multimethod ethnographic study by submitting patches to the AMDGPU and IIO subsystems. Our analysis of the patch reviews identified two tolerated duplications, driver-forking (T1) and readability prioritization (T2), that partially contradict the literature and warrant further investigation. Furthermore, these analyses identify two new Linux-specific factors that affect deduplication acceptance: integration overhead (T3) and performance impact (T4). This work offers a fresh discussion, grounded in new empirical observations and perspectives, of the dogmatic adherence to DRY.
Luan Arcanjo, David Tadokoro, Marcelo Spessoto, Rafael Passos, Paulo Meirelles
TechDebt@ICSE5
2025 Automatically Augmenting GitHub Issues with Informative User Reviews
abstract
Development teams for mobile applications can receive thousands of user reviews daily. At the same time, these developers use different communication channels, such as the GitHub issue tracker. Although GitHub issues are accessible and manageable for developers, their content often differs starkly from what users write in app reviews. Issues may lack steps to reproduce bugs or insights that justify the priority of new feature requests. The sheer volume of user reviews for a popular app, combined with their heterogeneity and varying quality, makes manual integration into issue trackers unfeasible. We present an approach that automatically augments GitHub issues with informative user reviews to bridge the gap between user feedback and developer-managed issues. Using a state-of-the-art large language model (LLM), our approach automatically retrieves user reviews with high semantic textual similarity (STS) to the issue content and suggests reviews that augment developers' understanding of the issue. In this paper, we present large-scale quantitative and qualitative analyses to assess the feasibility of enriching development workflows with user-written information. Using over 37,000 issues and 750,000 reviews from 19 popular Free/Libre/Open Source Software (FLOSS) mobile applications, our approach augments 3,017(8%) issues with 7,287 (1%) potentially informative reviews. In addition to providing insights into user-reported bugs and feature requests, the information from these matches points toward a novel and promising way to leverage user reviews for concerted app evolution.
Arthur Pilone, Marco Raglianti, Michele Lanza 0001, Fabio Kon, Paulo Meirelles
ICSME5
2025 Streamlining Analyses on the Linux Kernel with DUKS
abstract
With its remarkably extensive code base, uniquely long lifespan, and undeniable importance to modern society, the Linux kernel is trivially hard to maintain. However, its decentralized development spread over many git trees and mailing lists makes empirically assessing the health of its maintainership model nothing short of a challenge. Off-the-shelf data analysis tools fail to capture crucial nuances exclusive to the kernel development model, such as the current authors who take part in every patch submitted, or how the commit flow between trees changes as new release candidates are created for every merge and stabilization window. We propose the Dashboard for Unified Kernel Statistics (DUKS), an innovative framework that supports multiple visualizations and data analyses previously unsupported for the Linux kernel. Using the Linux kernel mainline as an example, we demonstrate how DUKS could provide valuable insights for understanding the health of the kernel maintainership model. By coupling information from the kernel git trees collected from the Software Heritage repository alongside authorship information shared in mailing lists, we envision DUKS as a cornerstone open-access utility to support analyses on the Linux kernel evolution and maintenance. DUKS demo video: https://youtu.be/2RvUgzdr1fo
Rafael Passos, Arthur Pilone, David Tadokoro, Paulo Meirelles
VISSOFT4
2025 An Approach Based on Metadata to Implement Convention Over Configuration Decoupled From Framework Logic
abstract
ABSTRACT Frameworks are essential for software development, providing code design and facilitating reuse for their users. Well‐known Java frameworks and APIs rely on metadata configuration through code annotations, using Reflection API to consume and process them. Code elements that share the same annotations often exhibit similarities, creating the opportunity to use conventions as a metadata source. This paper proposes a model for defining Convention over Configuration (CoC) for annotation usage, decoupled from the metadata reading logic. With this model, if a convention is present, the framework will automatically consider that element to be annotated. We implemented this model in the Esfinge Metadata API and evaluated it in an experiment where participants implemented the CoC pattern using two approaches: our proposed one and the Java Reflection API. As a result, 75% of participants implemented our approach faster than with just the Reflection API, and we observed a higher failure rate with the Reflection API than with the Esfinge API. Moreover, the code produced with our approach also resulted in fewer lines of code. Based on these results, we confirmed that the proposed approach fulfilled its goal of supporting the definition of conventions decoupled from the framework logic, thereby improving code readability and maintainability.
Everaldo Gomes, Eduardo Guerra 0001, Phyllipe Lima, Paulo Meirelles
J. Softw. Evol. Process.4
2024 How do annotations affect Java code readability?
Eduardo Guerra 0001, Everaldo Gomes, Jeferson Ferreira, Igor Scaliante Wiese, Phyllipe Lima, Marco Aurélio Gerosa, Paulo Meirelles
Empir. Softw. Eng.7
2024 Harmonizing DevOps taxonomies - A grounded theory study
abstract
DevOps responds to the growing need of companies to streamline the software development process and thus has experienced widespread adoption in the past few years. However, the successful adoption of DevOps requires companies to address important cultural and organizational changes. Nevertheless, it is crucial to recognize that various DevOps taxonomies exist, both from academic and practitioner perspectives, which may lead to misleading or failed adoption of DevOps. This paper presents empirical research on the structure of DevOps teams in software-producing organizations. The goal is to better understand the organizational structure and characteristics of teams adopting DevOps by harmonizing the existing knowledge. To achieve this, we employed a grounded theory approach with collaborative coding, involving two research groups. Inter-Coder Agreement (ICA) was utilized to guide the discussion rounds. We conducted a comprehensive analysis of existing studies on DevOps teams and taxonomies to gain a deeper understanding of the subject. From the analysis, we built a substantive and analytic theory of DevOps taxonomies. The theory is substantive in that the scope of validity refers to the ten secondary studies processed and analytic in that it analyzes “what is” rather than explaining causality or attempting predictive generalizations. A public repository with all the data related to the products resulting from the analysis and generation of the theory is available. We built a theory on DevOps taxonomies and tested whether it harmonizes the existing taxonomies, i.e., whether our theory can instantiate the others. This is the first step to define which taxonomies are best suited to approach DevOps culture and practices according to the companies’ objectives and capabilities. Editor’s note: Open Science material was validated by the Journal of Systems and Software Open Science Board.
Jessica Díaz, Jorge Enrique Pérez-Martínez, Isaque Alves, Fabio Kon, Leonardo A. F. Leite, Paulo Meirelles, Carla Rocha
J. Syst. Softw.6
2023 CADV: A software visualization approach for code annotations distribution
Phyllipe Lima, Jorge Melegati, Everaldo Gomes, Nathalya Stefhany Pereira, Eduardo Guerra 0001, Paulo Meirelles
Inf. Softw. Technol.6
2023 A Theory of Organizational Structures for Development and Infrastructure Professionals
abstract
DevOps and continuous delivery have impacted the organizational structures of development and infrastructure groups in software-producing organizations. Our research aims at revealing the different options adopted by the software industry to organize such groups, understanding why different organizations adopt distinct structures, and discovering how organizations handle the drawbacks of each structure. We interviewed 68 carefully-selected IT professionals, 45 working in Brazil, 10 in the USA, 8 in Europe, 1 in Canada, and 4 in globally distributed teams. By analyzing these conversations through a Grounded Theory process, we identified conditions, causes, reasons to avoid, consequences, and contingencies related to each discovered structure (segregated departments, collaborative departments, API-mediated departments, and single department). In this way, we offer a theory to explain organizational structures for development and infrastructure professionals. This theory can support practitioners and researchers in comprehending and discussing the DevOps phenomenon and its related issues, and also provides valuable input to practitioners’ decision-making.
Leonardo A. F. Leite, Nelson Lago, Claudia de O. Melo, Fabio Kon, Paulo Meirelles
IEEE Trans. Software Eng.5
2021 What Makes a Great Maintainer of Open Source Projects?
abstract
Although Open Source Software (OSS) maintainers devote a significant proportion of their work to coding tasks, great maintainers must excel in many other activities beyond coding. Maintainers should care about fostering a community, helping new members to find their place, while also saying "no" to patches that although are well-coded and well-tested, do not contribute to the goal of the project. To perform all these activities masterfully, maintainers should exercise attributes that software engineers (working on closed source projects) do not always need to master. This paper aims to uncover, relate, and prioritize the unique attributes that great OSS maintainers might have. To achieve this goal, we conducted 33 semi-structured interviews with well-experienced maintainers that are the gatekeepers of notable projects such as the Linux Kernel, the Debian operating system, and the GitLab coding platform. After we analyzed the interviews and curated a list of attributes, we created a conceptual framework to explain how these attributes are connected. We then conducted a rating survey with 90 OSS contributors. We noted that "technical excellence" and "communication" are the most recurring attributes. When grouped, these attributes fit into four broad categories: management, social, technical, and personality. While we noted that "sustain a long term vision of the project" and being "extremely careful" seem to form the basis of our framework, we noted through our survey that the communication attribute was perceived as the most essential one.
Edson Dias, Paulo Meirelles, Fernando Castor Filho, Igor Steinmacher, Igor Scaliante Wiese, Gustavo Pinto 0001
ICSE2
2021 The organization of software teams in the quest for continuous delivery: A grounded theory approach
abstract
Context: To accelerate time-to-market and improve customer satisfaction, software-producing organizations have adopted continuous delivery practices, impacting the relations between development and infrastructure professionals. Yet, no substantial literature has substantially tackled how the software industry structures the organization of development and infrastructure teams. Objective: In this study, we investigate how software-producing organizations structure their development and infrastructure teams, specifically how is the division of labor among these groups and how they interact. Method: After brainstorming with 7 DevOps experts to better formulate our research and procedures, we collected and analyzed data from 37 semi-structured interviews with IT professionals, following Grounded Theory guidelines. Results: After a careful analysis, we identified four common organizational structures: (1) siloed departments, (2) classical DevOps, (3) cross-functional teams, and (4) platform teams. We also observed that some companies are transitioning between these structures. Conclusion: The main contribution of this study is a theory in the form of a taxonomy that organizes the found structures along with their properties. This theory could guide researchers and practitioners to think about how to better structure development and infrastructure professionals in software-producing organizations.
Leonardo A. F. Leite, Gustavo Pinto 0001, Fabio Kon, Paulo Meirelles
Inf. Softw. Technol.4
2020 Leading successful government-academia collaborations using FLOSS and agile values
abstract
Government and academia share concerns for efficiently and effectively servicing societal demands, which includes the development of e-government software. Government-academia partnerships can be a valuable approach for improving productivity in achieving these goals. However, governmental and academic institutions tend to have very different agendas and organizational and managerial structures, which can hinder the success of such collaborative projects. In order to identify effective approaches to overcome collaboration barriers, we systematically studied the case of the Brazilian Public Software portal project, a 30-month government-academia collaboration that, using Free/Libre/Open Source Software practices and agile methods for project management, developed an unprecedented platform in the context of the Brazilian government. We gathered information from experience reports and data collection from repositories and interviews to derive a collection of practices that contributed to the success of the collaboration. In this paper, we describe how the data analysis led to the identification of a set of three high-level decisions supported by the adoption of nine best practices that improved the project performance and enabled professional training of the whole team.
Melissa Wen, Rodrigo Siqueira, Nelson Lago, Diego Camarinha, Antonio Soares de Azevedo Terceiro, Fabio Kon, Paulo Meirelles
J. Syst. Softw.7
2019 A Students' Perspective of Native and Cross-Platform Approaches for Mobile Application Development
Paulo Meirelles, Carla S. R. Aguiar, Felipe Assis, Rodrigo Siqueira, Alfredo Goldman
ICCSA (5)1
2019 Ranking warnings from multiple source code static analyzers via ensemble learning
abstract
While there is a wide variety of both open source and proprietary source code static analyzers available in the market, each of them usually performs better in a small set of problems, making it hard to choose one single tool to rely on when examining a program looking for bugs in the source code. Combining the analysis of different tools may reduce the number of false negatives, but yields a corresponding increase in the absolute number of false positives (which is already high for many tools). A possible solution, then, is to filter these results to identify the issues least likely to be false positives. In this study, we post-analyze the reports generated by three tools on synthetic test cases provided by the US National Institute of Standards and Technology. In order to make our technique as general as possible, we limit our data to the reports themselves, excluding other information such as change histories or code metrics. The features extracted from these reports are used to train a set of decision trees using AdaBoost to create a stronger classifier, achieving 0.8 classification accuracy (the combined false positive rate from the used tools was 0.61). Finally, we use this classifier to rank static analyzer alarms based on the probability of a given alarm being an actual bug in the source code.
Athos Ribeiro, Paulo Meirelles, Nelson Lago, Fabio Kon
OpenSym2
2018 A Metrics Suite for code annotation assessment
Phyllipe Lima, Eduardo Guerra 0001, Paulo Meirelles, Lucas Kanashiro, Hélio Silva, Fábio Fagundes Silveira
J. Syst. Softw.3
2017 Brazilian Public Software Portal: an integrated platform for collaborative development
abstract
The Brazilian Public Software (SPB) is a program promoted by the Brazilian Federal Government to foster sharing and collaboration on Free/Libre/Open Source Software (FLOSS) solutions for the public administration. In this context, a public software is considered a public good and the Federal Government assumes some responsibilities related to its use. Once its devolpment principles is the same of the FLOSS projects, we have designed the SPB Portal, a platform based on the integration and evolution of existing FLOSS tools. It provides several modern features for software collaborative development, helping the Brazilian public administration in sharing its solutions. In this paper, we present this integrated software development platform that was developed for the SPB program by a heterogeneous team composed by professors, master students and undergraduate students, as well as by professionals from FLOSS communities. The development of this platform used several FLOSS projects, providing a non-trivial integration among them. This effort has also produced several new features that were contributed back to these projects. Alongside the architectural challenges, we also discuss in this paper our work process, based on agile and free software development practices, and the lessons learned during 30 months of work on the SPB project.
Paulo Meirelles, Melissa Wen, Antonio Soares de Azevedo Terceiro, Rodrigo Siqueira, Lucas Kanashiro, Hilmer Neri
OpenSym1
2017 Implementing Federated Social Networking: Report from the Trenches
abstract
The federation of social networks aims at integrating users by means of a decentralized structure, enabling the interoperability among multiple social networks in a transparent way. Despite a few isolated initiatives in federating open social networks, there is no adoption of any standard, which hinders the emergence of new, effective federated systems. To understand the difficulties in the development and standardization of federated services, we have conducted research on existing specifications and implementations of interoperability among social networks. We have developed a federation proof of concept within the Noosfero platform, implementing a subset of the Diaspora protocol to federate users and public content, in addition to complementary specifications, such as Salmon and WebFinger. In this work, we introduce our results to federate Noosfero with Diaspora networks, pointing the required steps before further development. We aim to implement the Diaspora protocol within Noosfero, finishing its specification and improving its documentation, encouraging more projects to adopt this protocol.
Gabriel Silva, Larissa Reis, Antonio Soares de Azevedo Terceiro, Paulo Meirelles, Fabio Kon
OpenSym4
2008 A High-Fault-Coverage Approach for the Test of Data, Control and Handshake Interconnects in Mesh Networks-on-Chip
abstract
A novel strategy to detect interconnect faults between distinct channels in networks-on-chip is proposed. Short faults between distinct channels in the data, control and communication handshake lines are considered in a cost-effective test sequence for Mesh NoC topologies based on XY routing.
Érika F. Cota, Fernanda Lima Kastensmidt, Maico Cassel, Marcos Hervé, Paulo Meirelles, Alexandre M. Amory, Marcelo Lubaszewski
IEEE Trans. Computers6
2007 Redefining and testing interconnect faults in Mesh NoCs
abstract
An extended fault model and novel strategy to tackle interconnect faults in network-on-chips are proposed. Short faults between distinct channels are considered in a cost-effective test sequence for mesh NoC topologies based on XY routing.
Érika F. Cota, Fernanda Lima Kastensmidt, Maico Cassel, Paulo Meirelles, Alexandre M. Amory, Marcelo Lubaszewski
ITC4