US 12,379,908 B2
Systems and methods for code clustering analysis and transformation
Albrecht Gass, Fullerton, CA (US); Stefan Hetges, Mannheim (DE); Nikolaos Faradouris, Mannheim (DE); and Oliver Flach, Leinfelden-Echterdingen (DE)
Assigned to SMARTSHIFT TECHNOLOGIES, INC., Boston, MA (US)
Filed by smartShift Technologies, Inc., Boston, MA (US)
Filed on Apr. 4, 2023, as Appl. No. 18/130,735.
Application 18/130,735 is a continuation of application No. 16/990,007, filed on Aug. 11, 2020, granted, now 11,620,117.
Application 16/990,007 is a continuation of application No. 15/890,003, filed on Feb. 6, 2018, granted, now 10,740,075, issued on Aug. 11, 2020.
Prior Publication US 2024/0078096 A1, Mar. 7, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/44 (2018.01); G06F 8/35 (2018.01); G06F 8/41 (2018.01); G06F 8/65 (2018.01); G06F 8/75 (2018.01); G06F 9/445 (2018.01); G06F 9/455 (2018.01)
CPC G06F 8/427 (2013.01) [G06F 8/35 (2013.01); G06F 8/425 (2013.01); G06F 8/436 (2013.01); G06F 8/4436 (2013.01); G06F 8/65 (2013.01); G06F 8/751 (2013.01); G06F 9/44505 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A non-transitory software installation device storing processor-executable instructions configured to cause a computing device to perform automated for cluster-based code analysis and transformation by executing a method comprising:
selecting, by an analysis agent executed by a computing device, a first plurality of code objects of a source installation of an application to be transformed to a target installation of the application, responsive to each code object in the first plurality of code objects having an output to a common second code object;
generating, by the analysis agent, a first identifier for the selected first plurality of code objects based on the common second code object;
adding, by a transformer executed by the computing device, the first identifier to each code object in the selected first plurality of code objects, wherein the first identifier identifies each code object in the selected first plurality of code objects as being in the first plurality of code objects;
determining, by the transformer, that the common second code object is replaced with a third code object during transformation of the source installation to the target installation;
responsive to the determination, identifying each code object in the first plurality of code objects, by the transformer, via the added first identifier based on the common second code object; and
updating, by the transformer, each code object in the identified first plurality of code objects, to output to the third code object, responsive to the determination.