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
Tópicos
de interesse
Detalhes

Detalhes

  • Nome

    Tiago Boldt Sousa
  • Cargo

    Investigador Colaborador Externo
  • Desde

    01 outubro 2011
Publicações

2025

A Survey on the State of the Art of Causally Consistent Cloud Systems

Autores
Freitas, D; Degrandis, P; Sousa, TB;

Publicação
ACM COMPUTING SURVEYS

Abstract
In geo-replicated distributed systems, data is redundantly stored across nodes at different geographical sites, increasing fault tolerance and ensuring low access latency by placing data closer to the end user. With data being concurrently updated across sites, replicas should converge to a consistent view of the data, which leads toward adopting fine-tuned consistency models, namely causal consistency (CC). On the one hand, CC respects the causality between operations, resulting in intuitive outcomes for end users and programmers. On the other hand, it avoids the latency penalty of stronger consistency models and bypasses their availability constraints in the presence of network partitions. Furthermore, when coupled with read-only transactions (ROTs) capable of extracting a unified view of the data, CC avoids the anomalies of weaker consistency models. ROTs, however, cause additional coordination overhead compared to non-transactional reads. This overhead is particularly unwelcome considering the prevalence of read operations in real-world applications, and hence the impact of ROTs on the overall performance of read-heavy systems. With this in mind, there has been a growing effort to optimize the latency and throughput of causally consistent ROTs and to understand how the design of existing systems impacts their performance. In light of these recent developments, the present work surveys the state-of-the-art of causally consistent distributed systems, summarizing and comparing their core characteristics and tradeoffs and examining how their design decisions impact the performance of ROTs. To this end, it first defines some key concepts and presents two impossibility results concerning the properties of ROT algorithms. It then reviews several causally consistent systems with ROT support by identifying their recurring strategies to ensure causality and summarizing each of their designs and properties, stressing their implications on the performance of ROTs. It also surveys two architectural approaches to CC, which present progress toward a standard implementation for causally consistent systems. Finally, it discusses the open challenges identified in the literature.

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.

2022

Preface

Autores
Sousa T.B.;

Publicação
ACM International Conference Proceeding Series

Abstract

2022

Customer Data Platforms: A Pattern Language for Digital Marketing Optimization with First-Party Data

Autores
Boldt Sousa, T;

Publicação
ACM International Conference Proceeding Series

Abstract
The internet is used by the majority of the world's population. Many of its contents are free for consumers, supported by digital marketing investment. The current large online population can render digital marketing campaigns inefficient for brands buying ads if the right message is not reaching the right audience. Customer Data Platforms (CDPs) enables brands to collect first-party data about their customers and leverage it to reach the right audience, without sharing private customer data with third parties. This paper documents how CDPs work, by detailing their main components as patterns and relating them as a pattern language. The language is composed of five patterns: Event Tracking, ID Matching, User Profile Storage, Segmentation, and Activation. The pattern language can be used by marketeers and engineers in digital marketing as an introduction or reference to how CDPs are designed and work. © 2022 ACM.

2021

Preface

Autores
Boldt T.;

Publicação
ACM International Conference Proceeding Series

Abstract