Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
About
Download Photo HD

About

I started as an undergraduate student in Computer Science in U. Minho. After completion, I followed up my studies with a Master's degree in Informatics Engineering, also in U. Minho, specialising in Formal Methods and Distributed Systems. My Master's Thesis, named Applying Coding Standards to the Robot Operating System, focused on software quality, namely on studying various coding standards and how they can be applied in robotics software.

I am now a MAP-i Ph. D. student, and my research explores how robotics software can be further improved in terms of quality and safety.

Interest
Topics
Details

Details

  • Name

    André Filipe Santos
  • Role

    Research Assistant
  • Since

    15th February 2015
  • Nationality

    Portugal
  • Contacts

    +351253604440
    andre.f.santos@inesctec.pt
Publications

2019

Static-Time Extraction and Analysis of the ROS Computation Graph

Authors
Santos, A; Cunha, A; Macedo, N;

Publication
Proceedings - 3rd IEEE International Conference on Robotic Computing, IRC 2019

Abstract
The Robot Operating System (ROS) is one of the most popular open source robotic frameworks, and has contributed significantly to the fast development of robotics. Even though ROS provides many ready-made components, a robotic system is inherently complex, in particular regarding the architecture and orchestration of such components. Availability and analysis of a system's architecture at compile time is fundamental to ease comprehension and development of higher-quality software. However, ROS developers have to overcome this complexity relying mostly on testing and runtime visualisers. This work aims to enhance static-time support by proposing, firstly, a metamodel to describe the software architecture of ROS systems (the ROS Computation Graph) and, secondly, model extraction and visualisation tools for such architectural models. The provided tools allow users to specify custom-made queries over these models, enabling the static verification of relevant properties that had to be (manually) checked at runtime before. © 2019 IEEE.

2019

Applying Software Static Analysis to ROS: The Case Study of the FASTEN European Project

Authors
Neto, T; Arrais, R; Sousa, A; Santos, A; Veiga, G;

Publication
Robot 2019: Fourth Iberian Robotics Conference - Advances in Robotics, Volume 1, Porto, Portugal, 20-22 November, 2019.

Abstract

2019

Bootstrapping MDE Development from ROS Manual Code - Part 2: Model Generation

Authors
Garcia, NH; Deval, L; Luedtke, M; Santos, A; Kahl, B; Bordignon, M;

Publication
2019 ACM/IEEE 22ND INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS 2019)

Abstract
In principle, Model-Driven Engineering (MDE) addresses central aspects of robotics software development. Domain experts could leverage the expressiveness of models; implementation details over different hardware could be handled by automatic code generation. In practice, most evidence points to manual code development as the norm, despite several MDE efforts in robotics. Possible reasons for this disconnect are the wide ranges of applications and target platforms making all-encompassing MDE IDEs hard to develop and maintain, with developers reverting to writing code manually. Acknowledging this, and given the opportunity to leverage a large corpus of open-source software widely adopted by the robotics community, we pursue modeling as a complement, rather than an alternative, to manually written code. Our previous work introduced metamodels to describe components, their interactions, and their resulting composition, as inspired by, but not limited to, the de-facto standard Robot Operating System (ROS). In this paper we put such metamodels into use through two contributions [1]. First, we automate the generation of models from manually written artifacts through extraction from source code and runtime system monitoring. Second, we make available an easy-to-use web infrastructure to perform the extraction, together with a growing database of models so generated. Our aim with this tooling, publicly available both as-a-service and as source code, is to lower the MDE barrier for practitioners and leverage models to 1) improve the understanding of manually written code; 2) perform correctness checks; and 3) systematize the definition and adoption of best practices through large-scale generation of models from existing code. A comprehensive example is provided as a walk-through for robotics software practitioners.

2018

Property-based testing for the robot operating system

Authors
Santos, A; Cunha, A; Macedo, N;

Publication
Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation - A-TEST 2018

Abstract

2017

Mining the usage patterns of ROS primitives

Authors
Santos, A; Cunha, A; Macedo, N; Arrais, R; dos Santos, FN;

Publication
2017 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2017, Vancouver, BC, Canada, September 24-28, 2017

Abstract