Sign In to Follow Application
View All Documents & Correspondence

A System And A Method For Automatic Conversion Of Monolithic Services To Micro Services

Abstract: A system and method for conversion of monolithic services to micro-services is provided. One or more features related to service associated with domain implemented by monolithic service source code are identified. Features are identified for creating first feature set. One or more features are determined related to dependencies and cross-dependencies amongst one or more service functions associated with service, implemented by monolithic service source code, and between service functions and entities associated with domain expressed in the monolithic service source code. One or more features related to dependencies and cross-dependencies are determined for creating second feature set. Relationship between features present in first feature set and second feature set is determined. The relationship is representative of similarity of the features present in first feature set and second feature set. One or more micro-services are created based on similarity between features present in first feature set and second feature set.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
26 July 2019
Publication Number
05/2021
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
dev.robinson@amsshardul.com
Parent Application

Applicants

Cognizant Technology Solutions India Pvt. Ltd.
Techno Complex, No. 5/535, Old Mahabalipuram Road, Okkiyam Thoraipakkam, Chennai

Inventors

1. Tapodhan Sen
17/17 Baishnabghata Road, Flat# 6, 2nd Floor, Kolkata – 700047
2. Saroj Pradhan
251A/27 NSC Bose Road, Kolkata - 700047
3. Swastika Basu
59 Bholanath Street, Baranagar, Kolkata – 700036
4. Arunava Pal
32, Shaktigarh, Kalibari Lane, P.O. Jadavpur, Kolkata – 700032
5. Sandip Bandyopadhyay
123 B. K. Street, Uttarpara, Hooghly – 712258

Specification

We claim:
1. A method for conversion of monolithic services to micro-services, wherein the method is implemented by a processor executing instructions stored in a memory, the method comprising:
identifying one or more features related to a service associated with a domain implemented by a monolithic service source code, wherein the features are identified for creating a first feature set;
determining one or more features related to dependencies and cross-dependencies amongst one or more service functions associated with the service, implemented by the monolithic service source code, and between the service functions and entities associated with the domain expressed in the monolithic service source code, wherein the one or more features related to dependencies and cross-dependencies are determined for creating a second feature set;
determining a relationship between the features present in the first feature set and the features present in the second feature set, wherein the relationship is representative of similarity of the features present in the first feature set and the second feature set; and
creating one or more micro-services based on the similarity between the features present in the first feature set and the second feature set.
2-i The method as claimed in claim 1, wherein the service domain features present in the monolithic service source code may relate to domain identifiers and domain expressions present in the monolithic service source code.

3. The method as claimed as claim 1, wherein the monolithic service source code is parsed for extracting monolithic source code syntax and an abstract syntax tree (AST) is formed based on the extracted syntax.
4. The method as claimed in claim 1, wherein the second feature set is representative of coupling of the service functions implemented by the monolithic service source code to the domain entities which are expressed in the monolithic service source code.
5. The method as claimed in claim 1, wherein the first feature set and the second feature set are combined for subsequent identification of redundant features that are present in the first feature set and the second feature set.
6. The method as claimed in claim 1, wherein the similar features present in the first feature set and the second feature set are grouped into one or more clusters based on the relationship between the features present in the first feature set and the second feature set.
7. The method as claimed in claim 6, wherein one or more bounded context features are determined from the clustered similar features, wherein the bounded context features are representative of stable boundaries between different services, having respective similar features, implemented by the monolithic service source code.
8. The method as claimed in claim 1, wherein the formed micro-services comprises one or more atomic micro-services; and one or more composite micro-services.
9. The method as claimed in claim 8, wherein the atomic micro-services and the composite micro-services are formed from

the services present in the bounded context features based on the interaction of the services present in the bounded context features.
10. The method as claimed in claim 9, wherein one or more application programming interface (API) specifications of the atomic micro-services and the composite micro-services are generated.
11. A system for conversion of monolithic services to micro-services, the system comprising:
a memory storing program instructions;
a processor configured to execute program instructions stored in the memory; and
a service conversion engine executed by the processor and configured to:
identify one or more features related to a service
associated with a domain implemented by a monolithic
service source code, wherein the features are identified
for creating a first feature set;
determine one or more features related to dependencies and cross-dependencies amongst one or more service functions associated with the service, implemented by the monolithic service source code, and between the service functions and entities associated with the domain expressed in the monolithic service source code, wherein the one or more features related to dependencies and cross-dependencies are determined for creating a second feature set;
determine a relationship between the features present in the first feature set and the features present in the second feature set, wherein the relationship is representative of

similarity of the features present in the first feature set and the second feature set; and
create one or more micro-services based on the similarity between the features present in the first feature set and the second feature set.
12. The system as claimed in claim 11, wherein the service conversion engine comprises a domain identification unit executed by the processor, the domain identification unit configured to combine the features identified from the monolithic service source code for creating the first feature set.
13. The system as claimed in claim 11, wherein the service conversion engine comprises a code parsing unit executed by the processor, wherein the code parsing unit is configured to parse the monolithic service source code utilizing a code parser for extracting source code syntax and forming an abstract syntax tree (AST) based on the extracted syntax.
14. The system as claimed in claim 13, wherein the code parsing unit is configured to traverse AST for determining the features related to dependencies and cross-dependencies amongst and between the service functions and the domain entities.
15. The system as claimed in claim 11, wherein the service conversion engine comprises a boundary detection unit executed by the processor, the boundary detection unit is configured to cluster the similar features present in the first feature set and the second feature set together into one or more clusters based on the relationship between the one or more features present in the first feature set and the second feature set.

16. The system as claimed in claim 15, wherein the boundary detection unit is configured to determine separate stable bounded context features from the clustered similar features, wherein the bounded context features are representative of stable boundaries between different services, having respective similar features, implemented by the monolithic service source code.
17. The system as claimed in claim 11, wherein the service conversion engine comprises a service augmentation unit executed by the processor, the service augmentation unit is configured to process the bounded context features for identifying and classifying the services present in the bounded context features into one or more atomic micro-services and one or more composite micro-services.

Documents

Application Documents

# Name Date
1 201941030313-FER.pdf 2021-11-09
1 201941030313-STATEMENT OF UNDERTAKING (FORM 3) [26-07-2019(online)].pdf 2019-07-26
2 201941030313-PROOF OF RIGHT [26-07-2019(online)].pdf 2019-07-26
2 201941030313-FORM 3 [09-10-2019(online)].pdf 2019-10-09
3 201941030313-POWER OF AUTHORITY [26-07-2019(online)].pdf 2019-07-26
3 201941030313-Form 1 (Submitted on date of filing) [07-08-2019(online)].pdf 2019-08-07
4 201941030313-Request Letter-Correspondence [07-08-2019(online)].pdf 2019-08-07
4 201941030313-FORM 1 [26-07-2019(online)].pdf 2019-07-26
5 201941030313-DRAWINGS [26-07-2019(online)].pdf 2019-07-26
5 Correspondence by Agent _Form 26_Form 1_01-08-2019.pdf 2019-08-01
6 201941030313-COMPLETE SPECIFICATION [26-07-2019(online)].pdf 2019-07-26
6 201941030313-FORM 18 [29-07-2019(online)].pdf 2019-07-29
7 201941030313-COMPLETE SPECIFICATION [26-07-2019(online)].pdf 2019-07-26
7 201941030313-FORM 18 [29-07-2019(online)].pdf 2019-07-29
8 201941030313-DRAWINGS [26-07-2019(online)].pdf 2019-07-26
8 Correspondence by Agent _Form 26_Form 1_01-08-2019.pdf 2019-08-01
9 201941030313-FORM 1 [26-07-2019(online)].pdf 2019-07-26
9 201941030313-Request Letter-Correspondence [07-08-2019(online)].pdf 2019-08-07
10 201941030313-POWER OF AUTHORITY [26-07-2019(online)].pdf 2019-07-26
10 201941030313-Form 1 (Submitted on date of filing) [07-08-2019(online)].pdf 2019-08-07
11 201941030313-PROOF OF RIGHT [26-07-2019(online)].pdf 2019-07-26
11 201941030313-FORM 3 [09-10-2019(online)].pdf 2019-10-09
12 201941030313-STATEMENT OF UNDERTAKING (FORM 3) [26-07-2019(online)].pdf 2019-07-26
12 201941030313-FER.pdf 2021-11-09

Search Strategy

1 searchhistoryE_04-10-2021.pdf