CPC G06F 8/72 (2013.01) [G06F 8/75 (2013.01); G06F 9/547 (2013.01)] | 20 Claims |
1. A computer-implemented method, the method comprising:
obtaining a plurality of candidate microservices for refactoring a monolith application, each candidate microservice comprising one or more of a plurality of software classes of the monolith application;
analyzing the monolith application to identify one or more software functions in the plurality of software classes to expose as one or more application programming interfaces;
automatically isolating non-overlapping software functions of the monolith application between the plurality of candidate microservices, wherein the isolating comprises: determining that one or more software functions of a given one of the plurality of software classes are used by other software classes from at least two different ones of the plurality of candidate microservices; and creating, for each of the at least two different candidate microservices, a respective additional software class comprising at least a portion of the one or more software functions associated with the corresponding one of the at least two different candidate microservices;
converting source code corresponding to the identified one or more software functions into a standardized application programming interface format based at least in part on the isolating; and
using the converted source code to generate a plurality of deployable microservices corresponding to the plurality of candidate microservices;
wherein the method is carried out by at least one computing device.
|