Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Sobre

Sobre

Currently professor at FEUP and researcher at INESC TEC, formerly software architect, coach, and developer. His research interests focus in software engineering topics, namely on Software Architecture, Design Patterns, Cloud Computing, Continuous Delivery, Agility and Live Software Development. He is especially interested in microservice-based architectures and the highly maintainable and flexible systems that they allow to create.

Tópicos
de interesse
Detalhes

Detalhes

  • Nome

    Filipe Figueiredo Correia
  • Cargo

    Responsável de Área
  • Desde

    01 dezembro 2018
  • Nacionalidade

    Portugal
  • Contactos

    +351222094000
    filipe.correia@inesctec.pt
004
Publicações

2023

CharM - Evaluating a model for characterizing service-based architectures

Autores
Rosa, TD; Guerra, EM; Correia, FF; Goldman, A;

Publicação
JOURNAL OF SYSTEMS AND SOFTWARE

Abstract
Service-based architecture is an approach that emerged to overcome software development challenges such as difficulty to scale, low productivity, and strong dependence between elements. Microservice, an architectural style that follows this approach, offers advantages such as scalability, agility, resilience, and reuse. This architectural style has been well accepted and used in industry and has been the target of several academic studies. However, analyzing the state-of-the-art and -practice, we can notice a fuzzy limit when trying to classify and characterize the architecture of service-based systems. Furthermore, it is possible to realize that it is difficult to analyze the trade-offs to make decisions regarding the design and evolution of this kind of system. Some concrete examples of these decisions are related to how big the services should be, how they communicate, and how the data should be divided/shared. Based on this context, we developed the CharM, a model for characterizing the architecture of service-based systems that adopts microservices guidelines. To achieve this goal, we followed the guidelines of the Design Science Research in five iterations, composed of an ad-hoc literature review, discussions with experts, two case studies, and a survey. As a contribution, the CharM is an easily understandable model that helps professionals with different profiles to understand, document, and maintain the architecture of service-based systems.& COPY; 2023 Elsevier Inc. All rights reserved.

2023

Foundational DevOps Patterns

Autores
Marques, P; Correia, FF;

Publicação
CoRR

Abstract

2023

Tools for Refactoring to Microservices: A Preliminary Usability Report

Autores
Fritzsch, J; Correia, FF; Bogner, J; Wagner, S;

Publicação
CoRR

Abstract

2023

Deployment Tracking and Exception Tracking: monitoring design patterns for cloud-native applications

Autores
Albuquerque, C; Correia, FF;

Publicação
Proceedings of the 28th European Conference on Pattern Languages of Programs, EuroPLoP 2023, Irsee, Germany, July 5-9, 2023

Abstract
Monitoring a system over time is as important as ever with the increasing use of cloud-native software architectures. This paper expands the set of patterns published in a previous paper (Liveness Endpoint, Readiness Endpoint and Synthetic Testing) with two solutions for supporting teams in diagnosing occurring issues — Deployment Tracking and Exception Tracking. These patterns advise tracking relevant events that occur in the system. The Deployment Tracking pattern provides means to limit the sources of an anomaly, and the Exception Tracking pattern makes a specific class of anomalies visible so that a team can act on them. Both patterns help practitioners identify the root cause of an issue, which is instrumental in fixing it. They can help even less experienced professionals to improve monitoring processes, and reduce the mean time to resolve problems with their application. These patterns draw on documented industry best practices and existing tools. In order to help the reader find other patterns that supplement the ones suggested in this study, relations to already-existing monitoring patterns are also examined. © 2023 Copyright held by the owner/author(s).

2022

A Survey on the Adoption of Patterns for Engineering Software for the Cloud

Autores
Sousa, TB; Ferreira, HS; Correia, FF;

Publicação
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING

Abstract
This work takes as a starting point a collection of patterns for engineering software for the cloud and tries to find how they are regarded and adopted by professionals. Existing literature assesses the adoption of cloud computing with a focus on business and technological aspects and falls short in grasping a holistic view of the underlying approaches. Other authors delve into how independent patterns can be discovered (mined) and verified, but do not provide insights on their adoption. We investigate (1) the relevance of the patterns for professional software developers, (2) the extent to which product and company characteristics influence their adoption, and (3) how adopting some patterns might correlate with the likelihood of adopting others. For this purpose, we survey practitioners using an online questionnaire (n = 102). Among other findings, we conclude that most companies use these patterns, with the overwhelming majority (97 percent) using at least one. We observe that the mean pattern adoption tends to increase as companies mature, namely when varying the product operation complexity, active monthly users, and company size. Finally, we search for correlations in the adoption of specific patterns and attempt to infer causation, providing further clues on how some practices depend or influence the adoption of others. We conclude that the adoption of some practices correlates with specific company and product characteristics, and find relationships between the patterns that were not covered by the original pattern language and which might deserve further investigation.

Teses
supervisionadas

2023

Improving the Developer Experience of Dockerfiles

Autor
João Pereira da Silva Matos

Instituição
UP-FEUP

2023

Assisted and Incremental Refactoring Towards a Microservice Architecture

Autor
Rita Matos Maranhao Peixoto

Instituição
UP-FEUP

2022

Monitoring Design Patterns For Cloud Applications

Autor
Carlos Jorge Direito Albuquerque

Instituição
UP-FEUP

2022

Multi-Language Detection of Design Pattern Instances

Autor
Hugo Miguel Felgueira de Andrade

Instituição
UP-FEUP

2021

Continuous assessment of code quality through software analytics in a start-up environment

Autor
Duarte Filipe Machado de Oliveira

Instituição
UP-FEUP