Monolithic to Microservice Split via Graph Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Transitioning from a monolithic to a microservice architecture is time-consuming and costly when done manually, as developers spend significant time and resources sorting out and splitting the code structure.
Innovation Solution
A computer-implemented method that maps the source code of a monolithic application into a directed graph, splits it into subgraphs using a Community Overlap PRopagation Algorithm (COPRA) and label classification model, and optimizes these subgraphs to recommend a microservice splitting scheme, automating the process of converting the architecture.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If manual code splitting is performed to transition from monolithic to microservice architecture, then the architecture can be successfully transformed, but the process becomes time-consuming and resource-intensive
Solution Approach 1:
The system performs self-service by automatically analyzing the monolithic codebase, generating service boundary recommendations, and creating the microservice architecture without requiring manual developer intervention for the splitting process itself
Solution Approach 2:
The patent replaces the manual mechanical process of code analysis and splitting with an automated computational system that uses graph theory algorithms and machine learning models to perform the same function
2Adaptability or versatility
If manual code splitting is performed to transition from monolithic to microservice architecture, then the architecture can be successfully transformed, but significant developer resources are required
Solution Approach 1:
The system performs self-service by automatically analyzing the monolithic codebase, generating service boundary recommendations, and creating the microservice architecture without requiring manual developer intervention for the splitting process itself
Solution Approach 2:
The patent introduces an intermediary automated system that acts as a mediator between the monolithic architecture and the desired microservice architecture, handling the complex transformation work that would otherwise require significant developer resources
3Ease of operation
If the monolithic architecture is split into multiple microservices, then the system becomes more manageable and scalable, but the complexity of the system increases
Solution Approach 1:
The patent applies segmentation by dividing the monolithic codebase into distinct service modules based on graph analysis of code dependencies and relationships, creating naturally-bound microservice boundaries that reduce operational complexity
Solution Approach 2:
The patent introduces a new dimension of analysis by mapping code relationships into a graph structure with nodes and edges, enabling the system to understand and optimize service boundaries in a multi-dimensional space rather than simple linear code organization
Data Source
AI summary
A method and related system detail a split of an architecture of a monolithic application into an architecture of a micro service application. The method receives source code for the monolithic application, and maps the source code into a directed graph. The graph is split into subgraphs and optimized. The method further provides the detailing of the micro service application split, based on the subgraphs.


