A Hierarchical-DBSCAN Method for Extracting Microservices from Monolithic Applications
Khaled Sellami (1), Mohamed Aymen Saied (1), Ali Ouni (2, 3), ((1) Laval University, (2) ETS Montreal, (3) University of Quebec)

TL;DR
This paper introduces a hierarchical-DBSCAN based method to automatically identify microservices from monolithic applications by analyzing code similarities and dependencies, aiming to facilitate automated migration to microservice architecture.
Contribution
The paper presents a novel hierarchical clustering approach that leverages code interactions and domain terminology to extract microservices, outperforming existing methods in cohesion and interaction minimization.
Findings
Achieves up to 0.9 precision compared to human-designed microservices.
Generates more cohesive microservices with fewer inter-service interactions.
Outperforms five baseline methods in empirical evaluations.
Abstract
The microservices architectural style offers many advantages such as scalability, reusability and ease of maintainability. As such microservices has become a common architectural choice when developing new applications. Hence, to benefit from these advantages, monolithic applications need to be redesigned in order to migrate to a microservice based architecture. Due to the inherent complexity and high costs related to this process, it is crucial to automate this task. In this paper, we propose a method that can identify potential microservices from a given monolithic application. Our method takes as input the source code of the source application in order to measure the similarities and dependencies between all of the classes in the system using their interactions and the domain terminology employed within the code. These similarity values are then used with a variant of a density-based…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Cloud Computing and Resource Management · IoT and Edge/Fog Computing
