Deriving Microservice Architectural Perspectives Using Static Code Analysis for C\# Platform

Software Architecture Reconstruction is essential for understanding the structure and dependencies of a software system, particularly in microservices where system decomposition can result in lost knowledge of the overall structure. We introduce a method for reconstructing microservice systems' architectural perspectives using static analysis tailored to <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$\mathbf{C}$</tex> \#. Our approach focuses on two key architectural viewpoints of the system: (1) the domain perspective focusing on the system's context map and (2) the service view illustrating the communication and dependency aspects between microservices. We propose a methodology to determine these views from microservices. We conduct a case study wherein our proof-of-concept tool analyzes a mature microservice-based system that is widely used in practice. The tool accurately and efficiently captures key architectural elements and relationships and, by operating on live code, provides up-to-date system details, aiding practitioners in making informed decisions when maintaining and evolving the system without complex code reviews or outdated documentation.

Authors

Institutions

Publication Details

Published
2025-04-29
DOI
https://doi.org/10.1109/satrends66715.2025.00005
Primary Topic
Software System Performance and Reliability
Type
article
Field-Weighted Citation Impact
0.00

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Deriving Microservice Architectural Perspectives Using Static Code Analysis for C\# Platform

Amr S. Abdelfattah, Jorge Yero
Software System Performance and Reliability
article

Deriving Microservice Architectural Perspectives Using Static Code Analysis for C\# Platform

Amr S. Abdelfattah, Jorge Yero
article en

Abstract

Software Architecture Reconstruction is essential for understanding the structure and dependencies of a software system, particularly in microservices where system decomposition can result in lost knowledge of the overall structure. We introduce a method for reconstructing microservice systems' architectural perspectives using static analysis tailored to <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$\mathbf{C}$</tex> \#. Our approach focuses on two key architectural viewpoints of the system: (1) the domain perspective focusing on the system's context map and (2) the service view illustrating the communication and dependency aspects between microservices. We propose a methodology to determine these views from microservices. We conduct a case study wherein our proof-of-concept tool analyzes a mature microservice-based system that is widely used in practice. The tool accurately and efficiently captures key architectural elements and relationships and, by operating on live code, provides up-to-date system details, aiding practitioners in making informed decisions when maintaining and evolving the system without complex code reviews or outdated documentation.

University of Arizona (US), Baylor University (US)
National Science Foundation
Sustainable cities and communities
Openalex Percentile: Top 86%
Software System Performance and Reliability
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Deriving Microservice Architectural Perspectives Using Static Code Analysis for C\# Platform — Amr S. Abdelfattah, Jorge Yero · (2025) | TGRS Research Map | TGRS