IP Library Granted Patent US 11,360,751
Granted Patent B2
US 11,360,751 · App. 16/824,597 · Granted Jun 14, 2022

Systems and methods for dependency analysis

Inventor: Soumik Sarkar (Redwood City, CA)
Assignee: CodeLogic, Inc.
G06F8/433G06F8/75
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,360,751
App. No.
16/824,597
Granted
Jun 14, 2022
Kind
B2
Abstract

An analysis of software stored and executing on one or more assets in an enterprise includes determining a hierarchy of nodes in the software and among the assets and analyzing dependencies among those nodes and assets through a static analysis of the software as it is stored as well as through a dynamic analysis of the software as it executes.

Claims (39)

1. A computer-implemented method for analyzing software dependencies, comprising:

on a first asset, executing a first technology agent configured to:

analyze a first type of software stored in memory of the first asset, the analysis comprising:

identifying nodes within a particular portion of software of the first type,

for each node, assigning an ID based on a hash of content related to the node,

recording a hierarchy of the nodes within the software using the node IDs,

performing a static analysis of the particular portion of software of the first type to identify any dependencies between that particular portion of software and other portions of software, and

communicating the hierarchy and the dependencies to a synthesis agent;

on the first asset, executing a second technology agent configured to:

analyze a second type of software stored in memory of the first asset, the analysis comprising:

identifying nodes within a particular portion of software of the second type,

for each node, assigning an ID based on a hash of content related to the node,

recording a hierarchy of the nodes within the software using the node IDs,

performing a static analysis of the particular portion of software of the second type to identify any dependencies between that particular portion of software and other portions of software, and

communicating the hierarchy and the dependencies to the synthesis agent and on the first asset, executing a third technology agent configured to:

analyze a particular type of software executing on the first asset, the analysis comprising:

performing a dynamic analysis of a particular portion of software of the particular type executing on the first asset to identify any dependencies between that particular portion of software and other portions of software, and

communicating the identified dependencies to the synthesis agent.

2. The method of claim 1 , wherein the analysis performed by the third technology agent is based at least in part on any dependencies identified by the first technology agent.

3. A computer-implemented method for analyzing software dependencies, comprising:

on a first asset, executing a first technology agent configured to:

analyze a particular portion of software stored in memory of the first asset, the analysis comprising:

identifying nodes within the particular portion of software,

for each node, assigning an ID based on a hash of content related to the node,

recording a hierarchy of the nodes within the software using the node IDs,

performing a static analysis of the particular portion of software to identify any dependencies between that particular portion of software and other portions of software, and

communicating the hierarchy and the dependencies to a synthesis agent;

on a second asset, executing a second technology agent configured to:

analyze a particular portion of software stored in memory of the second asset, the analysis comprising:

identifying nodes within the particular portion of software,

for each node, assigning an ID based on a hash of content related to the node,

recording a hierarchy of the nodes within the software using the node IDs,

performing a static analysis of the particular portion of software to identify any dependencies between that particular portion of software and other portions of software, and

communicating the hierarchy and the dependencies to a synthesis agent; and

on the first asset, executing a third technology agent configured to:

analyze software executing on the first asset, the analysis comprising:

performing a dynamic analysis of a particular portion of software executing on the first asset to identify any dependencies between that particular portion of software and other portions of software, and

communicating the identified dependencies to the synthesis agent.

4. The method of claim 3 , wherein the analysis performed by the third technology agent is based at least in part on any dependencies identified by the first technology agent.

Assignments (3)
NUNC PRO TUNC ASSIGNMENT Recorded Mar 25, 2021
From: CROSSCODE, INC.
To: CODELOGIC, INC.
Reel/Frame 055725/0822 →
SECURITY INTEREST Recorded May 1, 2020
From: CROSSCODE, INC.
To: ANKUR DESAI - COLLATERAL AGENT FOR THE HOLDERS OF THE BORROWER'S SENIOR SECURITY PROMISSORY NOTE
Reel/Frame 052552/0240 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2020
From: SARKAR, SOUMIK
To: CROSSCODE, INC.
Reel/Frame 052190/0063 →
Continuity (1)
Related Publication 20210294584A1 · Sep 23, 2021