CharM: a model for characterizing the architecture of service-based systems

Detalhes bibliográficos
Ano de defesa: 2023
Autor(a) principal: Rosa, Thatiane de Oliveira
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Biblioteca Digitais de Teses e Dissertações da USP
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://www.teses.usp.br/teses/disponiveis/45/45134/tde-27092023-165159/
Resumo: Service-based architecture emerged to overcome software development challenges, such as difficulty to scale, low productivity, and strong dependence between elements. Microservice is a service-based architectural style that 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 ad-hoc literature reviews, discussions with experts, two case studies, and a survey. The main contribution of this thesis is the CharM, which is an easily understandable architectural characterization model that helps professionals with different profiles to understand, document, and maintain the architecture of service-based systems.