Structural Coupling for Microservices

03/08/2021
by   Sebastiano Panichella, et al.
0

Cloud-native Applications are 'distributed, elastic and horizontal-scalable systems composed of (micro)services which isolate states in a minimum of stateful components'. Hence, an important property is to ensure a low coupling and a high cohesion among the (micro)services composing the cloud-native application. Loosely coupled and highly cohesive services allow development teams to work in parallel, reducing the communication overhead between teams. However, despite both practitioners and researchers agree on the importance of this general property, there are no validated metrics to effectively measure or test the actual coupling level between services. In this work, we propose ways to compute and visualize the coupling between microservices, by extending and adapting the concepts behind the computation of the traditional structural coupling. We validate these measures with a case study involving 17 open-source projects and we provide an automatic approach to measure them. The results of this study highlight how these metrics provide to practitioners a quantitative and visual view of services compositions, which can be useful to conceive advanced systems to monitor the evolution of the service.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/07/2023

Evaluating Microservice Organizational Coupling based on Cross-service Contribution

For traditional modular software systems, "high cohesion, low coupling" ...
research
08/07/2020

Security Design Patterns in Distributed Microservice Architecture

Micro service architecture has revolutionized the landscape for the deve...
research
03/14/2022

Development Frameworks for Microservice-based Applications: Evaluation and Comparison

The microservice architectural style has gained much attention from both...
research
06/15/2018

On Challenges of Cloud Monitoring

Cloud services are becoming increasingly popular: 60% of information tec...
research
06/28/2022

Manu: A Cloud Native Vector Database Management System

With the development of learning-based embedding models, embedding vecto...
research
06/03/2023

On the Empirical Evidence of Microservice Logical Coupling. A Registered Report

[Context] Coupling is a widely discussed metric by software engineers wh...
research
05/21/2021

Functionals in the Clouds: An abstract architecture of serverless Cloud-Native Apps

Cloud Native Application CNApp (as a distributed system) is a collection...

Please sign up or login with your details

Forgot password? Click here to reset