2026

How does ROS-based Robot Software Evolve? An Empirical Study on Architectural Evolution

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

European Conference on Software Architecture (ECSA). 2026.  Just Accepted!   🎉

ROS-based robotic systems are rarely static as developers continuously add, remove, and rewire components as their systems evolve, often without documentation. In this work, we study how these architectural changes evolve across open-source ROS repositories by building a differential, cross-language recovery tool that tracks component, connection, and configuration changes across releases. We applied it to hundreds of repositories spanning ROS 1 and ROS 2 in C/C++, Python, and XML. We find that evolution diverges by level of analysis: repositories keep growing as new packages are integrated, while individual packages consolidate by pruning connections and configurations as they mature. Changes also tend to co-occur: when a component is removed, its connections and configurations tend to follow in the same release. These findings give specification writers a clearer picture of the maintenance burden of keeping architectural descriptions up-to-date, and point analysis tools toward the mostchange-prone elements.

How does ROS-based Robot Software Evolve? An Empirical Study on Architectural Evolution
How does ROS-based Robot Software Evolve? An Empirical Study on Architectural Evolution

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

European Conference on Software Architecture (ECSA). 2026.  Just Accepted!   🎉

ROS-based robotic systems are rarely static as developers continuously add, remove, and rewire components as their systems evolve, often without documentation. In this work, we study how these architectural changes evolve across open-source ROS repositories by building a differential, cross-language recovery tool that tracks component, connection, and configuration changes across releases. We applied it to hundreds of repositories spanning ROS 1 and ROS 2 in C/C++, Python, and XML. We find that evolution diverges by level of analysis: repositories keep growing as new packages are integrated, while individual packages consolidate by pruning connections and configurations as they mature. Changes also tend to co-occur: when a component is removed, its connections and configurations tend to follow in the same release. These findings give specification writers a clearer picture of the maintenance burden of keeping architectural descriptions up-to-date, and point analysis tools toward the mostchange-prone elements.

LGTM! Characteristics of Auto-Merged LLM-based Agentic PRs

Ruben Branco*, Paulo Canelas*, Catarina Gamboa*, Alcides Fonseca (* equal contribution)

Mining Challenge at International Conference on Mining Software Repositories (MSR). 2026.  

LGTM! Characteristics of Auto-Merged LLM-based Agentic PRs
LGTM! Characteristics of Auto-Merged LLM-based Agentic PRs

Ruben Branco*, Paulo Canelas*, Catarina Gamboa*, Alcides Fonseca (* equal contribution)

Mining Challenge at International Conference on Mining Software Repositories (MSR). 2026.  

2025

ROSpec: A Domain-Specific Language for ROS-based Robot Software

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

Proceedings of the ACM on Programming Languages (PACMPL), OOPSLA. 2025.  

ROSpec: A Domain-Specific Language for ROS-based Robot Software
ROSpec: A Domain-Specific Language for ROS-based Robot Software

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

Proceedings of the ACM on Programming Languages (PACMPL), OOPSLA. 2025.  

The Usability Argument for ROS-based Robot Architectural Description Languages

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

PLATEAU - The Annual Workshop on the Intersection of HCI and PL. 2025.  

The Usability Argument for ROS-based Robot Architectural Description Languages
The Usability Argument for ROS-based Robot Architectural Description Languages

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

PLATEAU - The Annual Workshop on the Intersection of HCI and PL. 2025.  

Are Large Language Models Memorizing Bug Benchmarks?

Daniel Ramos, Claudia Mamede*, Kush Jain*, Paulo Canelas*, Catarina Gamboa*, Claire Le Goues (* equal contribution)

Large Language Models for Code (LLM4Code) Workshop. 2025.  🏆 Best Paper Award.

Are Large Language Models Memorizing Bug Benchmarks?
Are Large Language Models Memorizing Bug Benchmarks?

Daniel Ramos, Claudia Mamede*, Kush Jain*, Paulo Canelas*, Catarina Gamboa*, Claire Le Goues (* equal contribution)

Large Language Models for Code (LLM4Code) Workshop. 2025.  🏆 Best Paper Award.

2024

Understanding Misconfigurations in ROS: An Empirical Study and Current Approaches

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

International Symposium on Software Testing and Analysis (ISSTA). 2024.  

The Robot Operating System (ROS) is a popular framework for building robot software from reusable components, but configuring and connecting these components correctly is challenging. Developers often face issues due to unstated assumptions, leading to misconfigurations that can result in unpredictable and dangerous behavior. To improve the reliability of ROS projects, it is critical to identify the broader set of misconfigurations. To that end, we perform a study on ROS Answers, a Q&A platform, to categorize these misconfigurations and evaluate how well existing detection techniques cover them. We identified 12 high-level categories and 50 sub-categories, with 27 not covered by current techniques.

Understanding Misconfigurations in ROS: An Empirical Study and Current Approaches
Understanding Misconfigurations in ROS: An Empirical Study and Current Approaches

Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley

International Symposium on Software Testing and Analysis (ISSTA). 2024.  

The Robot Operating System (ROS) is a popular framework for building robot software from reusable components, but configuring and connecting these components correctly is challenging. Developers often face issues due to unstated assumptions, leading to misconfigurations that can result in unpredictable and dangerous behavior. To improve the reliability of ROS projects, it is critical to identify the broader set of misconfigurations. To that end, we perform a study on ROS Answers, a Q&A platform, to categorize these misconfigurations and evaluate how well existing detection techniques cover them. We identified 12 high-level categories and 50 sub-categories, with 27 not covered by current techniques.

Is it a Bug? Understanding Physical Unit Mismatches in Robot Software

Paulo Canelas, Trenton Tabor, John-Paul Ore, Alcides Fonseca, Claire Le Goues, Christopher S. Timperley

International Conference in Robotics and Automation (ICRA). 2024.  

Is it a Bug? Understanding Physical Unit Mismatches in Robot Software
Is it a Bug? Understanding Physical Unit Mismatches in Robot Software

Paulo Canelas, Trenton Tabor, John-Paul Ore, Alcides Fonseca, Claire Le Goues, Christopher S. Timperley

International Conference in Robotics and Automation (ICRA). 2024.  

2023

Usability-Oriented Design of Liquid Types for Java

Catarina Gamboa, Paulo Canelas, Alcides Fonseca, Christopher S. Timperley

International Conference in Software Engineering (ICSE). 2023.  

Usability-Oriented Design of Liquid Types for Java
Usability-Oriented Design of Liquid Types for Java

Catarina Gamboa, Paulo Canelas, Alcides Fonseca, Christopher S. Timperley

International Conference in Software Engineering (ICSE). 2023.  

2022

Data types as a more ergonomic frontend for Grammar-Guided Genetic Programming

Guilherme Espada, Leon Ingelse, Paulo Canelas, Pedro Barbosa, Alcides Fonseca

International Conference on Generative Programming: Concepts and Experiences. 2022.  

Data types as a more ergonomic frontend for Grammar-Guided Genetic Programming
Data types as a more ergonomic frontend for Grammar-Guided Genetic Programming

Guilherme Espada, Leon Ingelse, Paulo Canelas, Pedro Barbosa, Alcides Fonseca

International Conference on Generative Programming: Concepts and Experiences. 2022.  

An Experience Report on Challenges in Learning the Robot Operating System

Paulo Canelas, Miguel Tavares, Ricardo Cordeiro, Alcides Fonseca, Christopher S. Timperley

International Workshop on Robotics Software Engineering (RoSE) at the International Conference in Software Engineering (ICSE). 2022.  

An Experience Report on Challenges in Learning the Robot Operating System
An Experience Report on Challenges in Learning the Robot Operating System

Paulo Canelas, Miguel Tavares, Ricardo Cordeiro, Alcides Fonseca, Christopher S. Timperley

International Workshop on Robotics Software Engineering (RoSE) at the International Conference in Software Engineering (ICSE). 2022.  

Grammatical Evolution Mapping for Semantically-Constrained Genetic Programming

Alcides Fonseca, Paulo Santos, Guilherme Espada, Sara Silva

Genetic Programming Theory and Practice XVIII. 2022.  

Grammatical Evolution Mapping for Semantically-Constrained Genetic Programming
Grammatical Evolution Mapping for Semantically-Constrained Genetic Programming

Alcides Fonseca, Paulo Santos, Guilherme Espada, Sara Silva

Genetic Programming Theory and Practice XVIII. 2022.  

2021

Augmenting Search-based Techniques with Static Synthesis-based Input Generation

Paulo Santos, José Campos, Christopher S. Timperley, Alcides Fonseca

International Workshop on Search-Based Software Testing (SBST) at the International Conference in Software Engineering (ICSE). 2021.  

Augmenting Search-based Techniques with Static Synthesis-based Input Generation
Augmenting Search-based Techniques with Static Synthesis-based Input Generation

Paulo Santos, José Campos, Christopher S. Timperley, Alcides Fonseca

International Workshop on Search-Based Software Testing (SBST) at the International Conference in Software Engineering (ICSE). 2021.  

2020

The Usability Argument for Refinement Typed Genetic Programming

Alcides Fonseca, Paulo Santos, Sara Silva

International Conference on Parallel Problem Solving From Nature. 2020.  

The Usability Argument for Refinement Typed Genetic Programming
The Usability Argument for Refinement Typed Genetic Programming

Alcides Fonseca, Paulo Santos, Sara Silva

International Conference on Parallel Problem Solving From Nature. 2020.  

Towards the Conceptualization of Refinement Typed Genetic Programming

Paulo Santos

Masters Thesis. Faculty of Sciences of University of Lisbon. 2020.  

Advised by Alcides Fonseca

Towards the Conceptualization of Refinement Typed Genetic Programming
Towards the Conceptualization of Refinement Typed Genetic Programming

Paulo Santos

Masters Thesis. Faculty of Sciences of University of Lisbon. 2020.  

Advised by Alcides Fonseca

Refined Typed Genetic Programming as a user interface for Genetic Programming

Paulo Santos, Alcides Fonseca, Sara Silva

Short Paper. Genetic and Evolutionary Computation Conference Companion (GECCO). 2020.  

Refined Typed Genetic Programming as a user interface for Genetic Programming
Refined Typed Genetic Programming as a user interface for Genetic Programming

Paulo Santos, Alcides Fonseca, Sara Silva

Short Paper. Genetic and Evolutionary Computation Conference Companion (GECCO). 2020.