Search for contacts, projects,
courses and publications

Understanding data access in microservices applications using interactive treemaps

Additional information

Authors
André M., Raglianti M., Cleve A., Lanza M.
Type
Article in conference proceedings
Year
2025
Language
English
Abstract
Over the past decade, microservices have gained significant popularity, impacting how applications are designed and deployed. Maintaining a comprehensive high-level view of microservices applications is essential, especially for software evolution tasks, enabling developers to understand, maintain, and optimize the complex interactions across various services. Developers struggle to obtain such an overview, particularly from a data perspective. Currently, when changes occur, they must identify data access code fragments dependent on the modified parts, or manually search through the entire codebase for potentially impacted ones. This process is time-consuming, error-prone, and cumbersome, especially in large codebases residing in multiple repositories and accessing multiple databases. We present a novel approach to support code and data coevolution comprehension. We mine data access fragments using a custom static analyzer and use interactive treemaps to generate a high-level view of the architecture, which can be explored at various levels of detail allowing, among the others, several and quick what-if analyses to assess the impact of changes (e.g., data concept modification, technology switch). As a case study, we use Overleaf, a popular online LATEX collaborative authoring platform, to evaluate our approach. We compared multiple versions and analyzed the evolution of 1.9 k code fragments associated to more than 350 data concepts across 13 microservices, 855 directories, and 3.5 k files mixing different data access technologies. We complement our analysis with insights and reflections on the promising approach.
Keywords
Microservices, Data access, Treemap, Program comprehension
Conference proceedings
2025 IEEE/ACM 33rd International Conference on Program Comprehension (ICPC)
Pages (or article number)
216-220

Diffusion

License
Rights reserved
Visibility
Public
Status open access
Green