US 11,853,725 B2
Microservices recommendation framework
Shivali Agarwal, Ghaziabad (IN); Raunak Sinha, Greater Noida (IN); Srikanth Govindaraj Tamilselvam, Chennai (IN); and Amith Singhee, Bangalore (IN)
Assigned to International Business Machines Corporation, Armonk, NY (US)
Filed by International Business Machines Corporation, Armonk, NY (US)
Filed on Dec. 6, 2021, as Appl. No. 17/542,894.
Prior Publication US 2023/0176831 A1, Jun. 8, 2023
Int. Cl. G06F 8/34 (2018.01); G06F 11/36 (2006.01); G06F 16/2457 (2019.01)
CPC G06F 8/34 (2013.01) [G06F 11/3616 (2013.01); G06F 16/2457 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processors to cause the one or more processors to:
generate a plurality of recommendations comprising a plurality of program components as candidates for assignment to a plurality of microservices, wherein respective ones of the plurality of program components are in respective ones of a plurality of programming languages, and wherein, in generating the plurality of recommendations, the program instructions cause the one or more processors to transform respective implementation structures of the respective ones of the plurality of program components from the respective ones of the plurality of programming languages to a common format;
determine roles of the respective ones of the plurality of program components;
provide a user interface configured to allow a user to modify one or more of the plurality of recommendations based at least in part on the roles;
analyze modifications to the one or more of the plurality of recommendations;
compute one or more metrics based at least in part on the analysis, wherein the one or more metrics comprise an enterprise relevance score of the respective ones of the plurality of program components, and wherein the enterprise relevance score is computed based at least in part on call volume to the respective ones of the plurality of program components over a given time period;
determine a plurality of finalized recommendations for one or more of the respective ones of the plurality of program components for assignment to one or more of the plurality of microservices based at least in part on the one or more metrics; and
generate one or more application programming interfaces for executing the one or more of the plurality of microservices.