SlideShare a Scribd company logo
Towards Recovering the Software Architecture
of Microservice-based Systems
Giona Granchelli, Mario Cardarelli, Paolo Di Francesco,
Ivano Malavolta, Ludovico Iovino, Amleto Di Salle
2Di Francesco et al.
Paolo Di Francesco
Roadmap
• Microservice Architectures (MSAs)
• MicroART Approach
• MicroART Prototype
• Conclusions
Roadmap
3Di Francesco et al.
Paolo Di Francesco
Microservice architectures
MSA is an architectural style inspired by service-oriented computing
• Small services
• Running in own process
• Lightweight communication
Introduction
4Di Francesco et al.
Paolo Di Francesco
Microservice architectures
• Products not Projects
• Cross-functional teams
• Infrastructure automation
• Intelligence in the endpoints
• Decentralized governance of
• Language
• Data
Introduction
Delivery Pipelines
Teams Capabilities
5Di Francesco et al.
Paolo Di Francesco
Microservice architectures
Introduction
Monolith
Microservices
6Di Francesco et al.
Paolo Di Francesco
MicroART Approach
• Problem: How to have a clear understanding of the overall
architecture?
• MicroART
1. Reverse Engineering
2. Model refinements
3. A Domain-specific language (DSL)
MicroART Approach
7Di Francesco et al.
Paolo Di Francesco
Reverse Engineering
Goal: Reconstruct the architecture of complex systems in an
automated manner
Reverse Engineering
8Di Francesco et al.
Paolo Di Francesco
Architecture Recovery
Architecture Recovery
9Di Francesco et al.
Paolo Di Francesco
Domain Specific Language
Domain Specific Language
10Di Francesco et al.
Paolo Di Francesco
Architecture Recovery
Architecture Recovery
11Di Francesco et al.
Paolo Di Francesco
Architecture Recovery
Architecture Recovery
12Di Francesco et al.
Paolo Di Francesco
Towards MSA Recovery
• Model refinements
• Produce an architectural model more significant to the
architect’s purposes
• Semi-automatic
• Iterative
Towards MSA Recovery
13Di Francesco et al.
Paolo Di Francesco
Architecture Refinement
• Service Discovery
• Services find each other dynamically in the network
• Loose coupling
• Mask “real” dependencies among services
Architecture Refinement
14Di Francesco et al.
Paolo Di Francesco
Architecture Refinement
Service Discovery Resolution
1. Remove Links
2. Remove the Service Discovery
3. Use log traces to identify new Links
Architecture Refinement
15Di Francesco et al.
Paolo Di Francesco
MicroART Tool
• Prototype
• GitHub
• Docker
• Benchmark
• Open source
• Third party
MicroART Tool
https://github.com/microart/microART-Tool
16Di Francesco et al.
Paolo Di Francesco
MicroART Validation
MicroART Validation
Architecture Model Architecture Refined Model
17Di Francesco et al.
Paolo Di Francesco
MicroART Tool
MicroART Tool
18Di Francesco et al.
Paolo Di Francesco
MicroART Approach
• Applicable to existing systems
• Benefits
• Model-based representations
• Graphic rendering
• Change impact analysis
• Reasoning
MicroART Approach
19Di Francesco et al.
Paolo Di Francesco
Conclusions
Conclusions

More Related Content

PPTX
Hypospadia repair
PPTX
Bladder neck reconstruction
PPTX
CLASSIFICATION OF BILE DUCT INJURY.pptx
PPT
Laparoscopy: The impact on the future
PPTX
Anatomy of pelvic floor,perineum,perineal pouches and its fascia
PPT
breast reduction ppt.ppt
PPT
01_Female pelvis. Fetus as object of delivery_d89cf4255712946e47ecd877adb6db5...
PPTX
Breast reconstruction manish jian
Hypospadia repair
Bladder neck reconstruction
CLASSIFICATION OF BILE DUCT INJURY.pptx
Laparoscopy: The impact on the future
Anatomy of pelvic floor,perineum,perineal pouches and its fascia
breast reduction ppt.ppt
01_Female pelvis. Fetus as object of delivery_d89cf4255712946e47ecd877adb6db5...
Breast reconstruction manish jian

Similar to Towards Recovering the Software Architecture of Microservice-based Systems (20)

PPTX
MicroART: A Software Architecture Recovery Tool for Maintaining Microservice-...
PPTX
Architecting Microservices
PPTX
Research on Architecting Microservices: Trends, Focus, and Potential for Indu...
PDF
Micro Frontends
PDF
2024-06 ICSA Industrial Keynote - Demystifying Hypes in Software Architecture
PDF
Building Big Architectures XP Conference 2016
PDF
Building Big Architectures by Ramit Surana
PDF
Explicit architecture
PDF
Practical Microservice Architecture (edition 2022).pdf
PDF
Boston Data Engineering: Kedro Python Framework for Data Science: Overview an...
PDF
From 50 to 500 product engineers – data-driven approach to building impactful...
PPTX
Cytoscape CI Chapter 2
PDF
2019-Nov: Domain Driven Design (DDD) and when not to use it
PDF
Scaling frontend applications with micro-frontends Presentation.pdf
PDF
Domain Driven Design Big Picture Strategic Patterns
PDF
第1回バイオインフォマティクスデータ可視化セミナー@Riken
PPTX
The Pink road – Dorothy’s journey through an all pink wonderland
PDF
Data Science in Production: Technologies That Drive Adoption of Data Science ...
PDF
Using patterns and pattern languages to make better architectural decisions
PDF
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
MicroART: A Software Architecture Recovery Tool for Maintaining Microservice-...
Architecting Microservices
Research on Architecting Microservices: Trends, Focus, and Potential for Indu...
Micro Frontends
2024-06 ICSA Industrial Keynote - Demystifying Hypes in Software Architecture
Building Big Architectures XP Conference 2016
Building Big Architectures by Ramit Surana
Explicit architecture
Practical Microservice Architecture (edition 2022).pdf
Boston Data Engineering: Kedro Python Framework for Data Science: Overview an...
From 50 to 500 product engineers – data-driven approach to building impactful...
Cytoscape CI Chapter 2
2019-Nov: Domain Driven Design (DDD) and when not to use it
Scaling frontend applications with micro-frontends Presentation.pdf
Domain Driven Design Big Picture Strategic Patterns
第1回バイオインフォマティクスデータ可視化セミナー@Riken
The Pink road – Dorothy’s journey through an all pink wonderland
Data Science in Production: Technologies That Drive Adoption of Data Science ...
Using patterns and pattern languages to make better architectural decisions
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Ad

Recently uploaded (20)

PDF
WOOl fibre morphology and structure.pdf for textiles
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PPTX
Chapter 5: Probability Theory and Statistics
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Architecture types and enterprise applications.pdf
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
STKI Israel Market Study 2025 version august
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
TLE Review Electricity (Electricity).pptx
PDF
Developing a website for English-speaking practice to English as a foreign la...
WOOl fibre morphology and structure.pdf for textiles
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Chapter 5: Probability Theory and Statistics
Group 1 Presentation -Planning and Decision Making .pptx
Final SEM Unit 1 for mit wpu at pune .pptx
DP Operators-handbook-extract for the Mautical Institute
Architecture types and enterprise applications.pdf
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Tartificialntelligence_presentation.pptx
STKI Israel Market Study 2025 version august
A comparative study of natural language inference in Swahili using monolingua...
Module 1.ppt Iot fundamentals and Architecture
1 - Historical Antecedents, Social Consideration.pdf
Enhancing emotion recognition model for a student engagement use case through...
Hindi spoken digit analysis for native and non-native speakers
Getting started with AI Agents and Multi-Agent Systems
A novel scalable deep ensemble learning framework for big data classification...
TLE Review Electricity (Electricity).pptx
Developing a website for English-speaking practice to English as a foreign la...
Ad

Towards Recovering the Software Architecture of Microservice-based Systems

  • 1. Towards Recovering the Software Architecture of Microservice-based Systems Giona Granchelli, Mario Cardarelli, Paolo Di Francesco, Ivano Malavolta, Ludovico Iovino, Amleto Di Salle
  • 2. 2Di Francesco et al. Paolo Di Francesco Roadmap • Microservice Architectures (MSAs) • MicroART Approach • MicroART Prototype • Conclusions Roadmap
  • 3. 3Di Francesco et al. Paolo Di Francesco Microservice architectures MSA is an architectural style inspired by service-oriented computing • Small services • Running in own process • Lightweight communication Introduction
  • 4. 4Di Francesco et al. Paolo Di Francesco Microservice architectures • Products not Projects • Cross-functional teams • Infrastructure automation • Intelligence in the endpoints • Decentralized governance of • Language • Data Introduction Delivery Pipelines Teams Capabilities
  • 5. 5Di Francesco et al. Paolo Di Francesco Microservice architectures Introduction Monolith Microservices
  • 6. 6Di Francesco et al. Paolo Di Francesco MicroART Approach • Problem: How to have a clear understanding of the overall architecture? • MicroART 1. Reverse Engineering 2. Model refinements 3. A Domain-specific language (DSL) MicroART Approach
  • 7. 7Di Francesco et al. Paolo Di Francesco Reverse Engineering Goal: Reconstruct the architecture of complex systems in an automated manner Reverse Engineering
  • 8. 8Di Francesco et al. Paolo Di Francesco Architecture Recovery Architecture Recovery
  • 9. 9Di Francesco et al. Paolo Di Francesco Domain Specific Language Domain Specific Language
  • 10. 10Di Francesco et al. Paolo Di Francesco Architecture Recovery Architecture Recovery
  • 11. 11Di Francesco et al. Paolo Di Francesco Architecture Recovery Architecture Recovery
  • 12. 12Di Francesco et al. Paolo Di Francesco Towards MSA Recovery • Model refinements • Produce an architectural model more significant to the architect’s purposes • Semi-automatic • Iterative Towards MSA Recovery
  • 13. 13Di Francesco et al. Paolo Di Francesco Architecture Refinement • Service Discovery • Services find each other dynamically in the network • Loose coupling • Mask “real” dependencies among services Architecture Refinement
  • 14. 14Di Francesco et al. Paolo Di Francesco Architecture Refinement Service Discovery Resolution 1. Remove Links 2. Remove the Service Discovery 3. Use log traces to identify new Links Architecture Refinement
  • 15. 15Di Francesco et al. Paolo Di Francesco MicroART Tool • Prototype • GitHub • Docker • Benchmark • Open source • Third party MicroART Tool https://github.com/microart/microART-Tool
  • 16. 16Di Francesco et al. Paolo Di Francesco MicroART Validation MicroART Validation Architecture Model Architecture Refined Model
  • 17. 17Di Francesco et al. Paolo Di Francesco MicroART Tool MicroART Tool
  • 18. 18Di Francesco et al. Paolo Di Francesco MicroART Approach • Applicable to existing systems • Benefits • Model-based representations • Graphic rendering • Change impact analysis • Reasoning MicroART Approach
  • 19. 19Di Francesco et al. Paolo Di Francesco Conclusions Conclusions