-
公开(公告)号:US11809841B1
公开(公告)日:2023-11-07
申请号:US17118361
申请日:2020-12-10
Applicant: Amazon Technologies, Inc.
Inventor: Jiangtao Zhang , Mark Fawaz , Gunja Agrawal
Abstract: Techniques are described for enabling the automatic refactoring of software application source code to mitigate identified anti-patterns and other software modernization-related issues. A software modernization system analyzes software applications to generate various types of modernization report information, where the report information can include identifications of various types of design and cloud anti-patterns, proposed decompositions of monolithic applications into subunits, refactoring cost information, recommended modernization tools and migration paths, among other such information. A software modernization system further includes a refactoring engine that can automatically refactor source code based on such application analysis information, e.g., to automatically address identified anti-patterns, restructure code for decomposition, etc. A refactoring engine performs refactoring actions based on refactoring templates, machine learning (ML) refactoring models, or other input.
-
公开(公告)号:US12020025B1
公开(公告)日:2024-06-25
申请号:US17951861
申请日:2022-09-23
Applicant: Amazon Technologies, Inc.
Inventor: Jiangtao Zhang , Mark Fawaz , Vivek Chawda , Sreenaath Vasudevan , Ramu Panayappan , Abdul Jabbar Abdul Rasheed , Donghao Wei , Javier Arturo Thiele-Ruiz , Kanishk Kaul , Pranav Prabhakar Firake , Emery Jacob Comstock
Abstract: Techniques are described for assisting users with the process of modernizing software applications from a source software architectural pattern (e.g., a model—view—controller (MVC) pattern, a multitier architecture, etc.) to a target architectural pattern (e.g., microservices, event-driven architecture, etc.). A decomposition analyzer receives as input artifacts associated with a software application under analysis and an architectural pattern that a user desires to use for a modernized version of the software application. The decomposition analyzer generates, based on the application artifacts, a graph-based model of the software application, where the model includes nodes representing application components (e.g., classes) and edges representing dependency relationships among the components. The decomposition analyzer further uses machine learning techniques and other types of analyses to identify recommended groupings of nodes from the graph-based model for decomposition. These recommendations can be displayed to users in a visualization providing decomposition assessment information.
-
公开(公告)号:US11579868B1
公开(公告)日:2023-02-14
申请号:US17118375
申请日:2020-12-10
Applicant: Amazon Technologies, Inc.
Inventor: Jiangtao Zhang , Mark Fawaz , Gunja Agrawal
Abstract: Techniques are described for enabling the automatic refactoring of software application source code to mitigate identified anti-patterns and other software modernization-related issues. A software modernization system analyzes software applications to generate various types of modernization report information, where the report information can include identifications of various types of design and cloud anti-patterns, proposed decompositions of monolithic applications into subunits, refactoring cost information, recommended modernization tools and migration paths, among other such information. A software modernization system further includes a refactoring engine that can automatically refactor source code based on such application analysis information, e.g., to automatically address identified anti-patterns, restructure code for decomposition, etc. A refactoring engine performs refactoring actions based on refactoring templates, machine learning (ML) refactoring models, or other input.
-
-