IP Library Granted Patent US 12682078
Granted Patent B2
US 12682078 · App. 18/756,194 · Granted Jul 14, 2026

Software library upgrades using risk analyses

Inventors: Nisan Haimov (Beer Sheva, IL); Boris Shpilyuck (Ashdod, IL); Igor Dubrovsky (Beer Sheva, IL); Maxim Balin (Gan-Yavne, IL)
Assignee: Dell Products L.P.
G06F21/577G06F8/65G06F2221/033
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 12682078
App. No.
18/756,194
Granted
Jul 14, 2026
Kind
B2
Abstract

Methods and systems for managing software libraries in a deployment are disclosed. The software libraries may be managed by using risk analyses to weigh a level of risk for an upgrade plan. The upgrade plan may be used to rectify a vulnerability in a software library of the software libraries. The risk analyses may include (i) performing a security scan of the software library to find the vulnerability; (ii) performing the security scan of available software libraries that have rectified the vulnerability; and (iii) defining parameters that weight risk with using the solution against the risk presented by the vulnerability. Based on the parameters, the software library may be upgraded. The risk analyses may further include testing functionality to ensure that functionality is maintained even if the software library is upgraded.

Claims (78)

1 . A method for managing software libraries in a deployment, the method comprising:

identifying a vulnerability in a software library of the software libraries;

based on the identifying of the vulnerability in the software library:

obtaining a solution to rectify the vulnerability in the software library;

identifying risk with using the solution to rectify the vulnerability in the software library;

making a first determination regarding whether the risk with using the solution outweighs a risk presented by the vulnerability in the software library, wherein

the first determination is made, at least in part, using parameters defined by an operator of the deployment, the parameters being used to weight the risk with using the solution against the risk presented by the vulnerability in the software library, and

the parameters define priorities for addressing vulnerabilities exhibited by the deployment based on severity levels reported by entities that identify the vulnerabilities; and

in a first instance of the first determination where the risk with using the solution does not outweigh the risk presented by the vulnerability in the software library:

upgrading, using the solution, the software library to obtain an upgraded software library;

deploying the upgraded software library to at least one data processing system of the deployment to obtain an upgraded deployment; and

providing computer implemented services using the upgraded deployment.

2 . The method of claim 1 , wherein obtaining the solution to rectify the vulnerability in the software library comprises:

performing a scan of a set of available versions of the software library;

obtaining first vulnerabilities from the scan of the set of the available versions of the software library; and

obtaining a plan, based on the first vulnerabilities, to upgrade the software library to a version of the software library of the set of the available versions of the software library.

3 . The method of claim 1 , wherein the severity levels correspond to levels of access including access to code within the software library, access to an application that utilizes the software library, and access to data used by the application.

4 . The method of claim 1 , wherein the parameters further define a weight for the risk with using the solution based on a complexity level for using the solution in the deployment.

5 . The method of claim 4 , wherein the weight is based on, at least, numbers and types of modifications of other software hosted by the deployment to utilize the upgraded software library.

6 . The method of claim 1 , further comprising:

in a second instance of the first determination where the risk with using the solution outweighs the risk presented by the vulnerability in the software library:

continuing to provide computer implemented services without performing the upgrade in the software library.

7 . The method of claim 1 , wherein identifying the risk with using the solution to rectify the vulnerability in the software library comprises:

obtaining a complexity level of the solution, the complexity level being based on numbers and types of modifications of the solution to the software library, the number and the types of the modifications affecting functionality of the software library; and

obtaining the risk based on the complexity level of the solution.

8 . The method of claim 1 , further comprising:

before upgrading, using the solution, the software library to obtain the upgraded software library:

obtaining, by performing first tests on the deployment, a pre-upgrade baseline of the software library.

9 . The method of claim 8 , further comprising:

before deploying the upgraded software library to the at least one data processing system of the deployment:

obtaining, by performing second tests on the upgraded software library, a post-upgrade baseline of the upgraded software library;

performing a verification by comparing the pre-upgrade baseline to the post-upgrade baseline to ensure the post-upgrade baseline has a same functionality to the pre-upgrade baseline; and

in an instance of the performing where the verification indicates that post-upgrade baseline has the same functionality to the pre-upgrade baseline:

making a second determination to deploy the upgraded software library,

wherein the deploying is performed based on the second determination to deploy the upgraded software library.

10 . A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations for managing software libraries in a deployment, the operations comprising:

identifying a vulnerability in a software library of the software libraries;

based on the identifying of the vulnerability in the software library:

obtaining a solution to rectify the vulnerability in the software library;

identifying risk with using the solution to rectify the vulnerability in the software library;

making a first determination whether the risk with using the solution outweighs a risk presented by the vulnerability in the software library, wherein

the first determination is made, at least in part, using parameters defined by an operator of the deployment, the parameters being used to weight the risk with using the solution against the risk presented by the vulnerability in the software library, and

the parameters define priorities for addressing vulnerabilities exhibited by the deployment based on severity levels reported by entities that identify the vulnerabilities; and

in a first instance of the first determination where the risk with using the solution does not outweigh the risk presented by the vulnerability in the software library:

upgrading, using the solution, the software library to obtain an upgraded software library;

deploying the upgraded software library to at least one data processing system of the deployment to obtain an upgraded deployment; and

providing computer implemented services using the upgraded deployment.

11 . The non-transitory machine-readable medium of claim 10 , wherein obtaining the solution to rectify the vulnerability in the software library comprises:

performing a scan of a set of available versions of the software library;

obtaining first vulnerabilities from the scan of the set of the available versions of the software library; and

obtaining a plan, based on the first vulnerabilities, to upgrade the software library to a version of the software library of the set of the available versions of the software library.

12 . The non-transitory machine-readable medium of claim 10 , wherein the severity levels correspond to levels of access including access to code within the software library, access to an application that utilizes the software library, and access to data used by the application.

13 . The non-transitory machine-readable medium of claim 10 , wherein the parameters further define a weight for the risk with using the solution based on a complexity level for using the solution in the deployment.

14 . A data processing system, comprising:

a processor; and

a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform operations managing software libraries in a deployment, the operations comprising:

identifying a vulnerability in a software library of the software libraries;

based on the identifying of the vulnerability in the software library:

obtaining a solution to rectify the vulnerability in the software library;

identifying risk with using the solution to rectify the vulnerability in the software library;

making a first determination whether the risk with using the solution outweighs a risk presented by the vulnerability in the software library, wherein

the first determination is made, at least in part, using parameters defined by an operator of the deployment, the parameters being used to weight the risk with using the solution against the risk presented by the vulnerability in the software library, and

the parameters define priorities for addressing vulnerabilities exhibited by the deployment based on severity levels reported by entities that identify the vulnerabilities; and

in a first instance of the first determination where the risk with using the solution does not outweigh the risk presented by the vulnerability in the software library:

upgrading, using the solution, the software library to obtain an upgraded software library;

deploying the upgraded software library to at least one data processing system of the deployment to obtain an upgraded deployment; and

providing computer implemented services using the upgraded deployment.

15 . The data processing system of claim 14 , wherein obtaining the solution to rectify the vulnerability in the software library comprises:

performing a scan of a set of available versions of the software library;

obtaining first vulnerabilities from the scan of the set of the available versions of the software library; and

obtaining a plan, based on the first vulnerabilities, to upgrade the software library to a version of the software library of the set of the available versions of the software library.

16 . The data processing system of claim 14 , wherein the severity levels correspond to levels of access including access to code within the software library, access to an application that utilizes the software library, and access to data used by the application.

17 . The data processing system of claim 14 , wherein the parameters further define a weight for the risk with using the solution based on a complexity level for using the solution in the deployment.

18 . The non-transitory machine-readable medium of claim 13 , wherein the weight is based on, at least, numbers and types of modifications of other software hosted by the deployment to utilize the upgraded software library.

19 . The non-transitory machine-readable medium of claim 10 , further comprising:

in a second instance of the first determination where the risk with using the solution outweighs the risk presented by the vulnerability in the software library:

continuing to provide computer implemented services without performing the upgrade in the software library.

20 . The data processing system of claim 17 , wherein the weight is based on, at least, numbers and types of modifications of other software hosted by the deployment to utilize the upgraded software library.