IP Library Granted Patent US 11,947,946
Granted Patent B1
US 11,947,946 · App. 17/387,832 · Granted Apr 2, 2024

Intelligent software development, security, and operations workflow

Inventor: Meera Rao (Burtonsville, MD)
Assignee: Synopsys, Inc.
G06F8/65G06F21/57G06F2221/033G06N20/00
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,947,946
App. No.
17/387,832
Granted
Apr 2, 2024
Kind
B1
Abstract

Disclosed herein are system, computer-implemented method, and computer program product (computer-readable storage medium) embodiments for implementing an intelligent DevSecOps workflow. An embodiment includes receiving, by at least one processor, a risk profile associated with a software deployment, and an update related to the software deployment; and evaluating, by the at least one processor, at least one parameter associated with the update, to produce an evaluation result. Additionally, the at least one processor may determine a set of actions in response to the update, based at least in part on the evaluation result, an application dataset corresponding to the software deployment, and a group of specified criteria on which the risk profile is based; or perform at least one action of the set of actions in response to the update, according to some example use cases.

Claims (50)

1. A method comprising:

receiving, by at least one processor, a risk profile associated with a software deployment, and an update related to the software deployment, the update comprising a merge of code into a source-code repository;

evaluating, by the at least one processor, at least one parameter associated with the update to produce an evaluation result, the evaluation result comprising a determination that a risk associated with one or more components of the software deployment in isolation has increased as a result of the update;

determining, by the at least one processor, a modified set of actions in response to the update, based at least in part on an initial set of actions, the evaluation result, a group of specified criteria on which the risk profile is based, and a component manifest corresponding to the software deployment, wherein the initial set of actions is associated with the one or more components of the software deployment in isolation, wherein the modified set of actions comprises at least one action not included in the initial set of actions, wherein the at least one action not included in the initial set of actions corresponds to the increased risk associated with the one or more components of the software deployment in isolation, and wherein the at least one action not included in the initial set of actions affects at least one additional component not included in the one or more components of the software deployment in isolation; and

performing, by the at least one processor, at least one action of the modified set of actions in response to the update.

2. The method of claim 1 , wherein the update related to the software deployment comprises an update to at least one of the specified criteria corresponding to the risk profile associated with the software deployment.

3. The method of claim 2 , further comprising:

calculating, by the at least one processor, an updated risk profile corresponding to the software deployment, based at least in part on the update to the at least one of the specified criteria corresponding to the risk profile associated with the software deployment.

4. The method of claim 1 , wherein the at least one action of the modified set of actions in response to the update comprises:

updating, by the at least one processor, a log entry or a tracking system;

updating, by the at least one processor, a metric in a monitoring system;

triggering, by the at least one processor, an out-of-band activity;

interrupting, by the at least one processor, a build process; or

generating, by the at least one processor, a notification via at least one channel.

5. The method of claim 1 , wherein determining the modified set of actions in response to the update is further based on an output of a machine-learning algorithm.

6. The method of claim 1 , wherein the at least one parameter comprises at least one result of at least one type of security testing.

7. The method of claim 1 , wherein the group of specified criteria comprises at least one of a requirement, a weighting value, a classification, a configuration option, a risk tolerance, or an accessibility level.

8. The method of claim 1 , wherein the component manifest comprises a code repository, a vulnerability database, or a combination thereof.

9. A system comprising:

a memory; and

at least one processor coupled to the memory and configured to:

receive a risk profile associated with a software deployment, and an update related to the software deployment, the update comprising a merge of code into a source-code repository;

evaluate at least one parameter associated with the update, to produce an evaluation result, the evaluation result comprising a determination that a risk associated with one or more components of the software deployment in isolation has increased as a result of the update;

determine a modified set of actions in response to the update, based at least in part on an initial set of actions, the evaluation result, a group of specified criteria on which the risk profile is based, and a component manifest corresponding to the software deployment, wherein the initial set of actions is associated with the one or more components of the software deployment in isolation, wherein the modified set of actions comprises at least one action not included in the initial set of actions, wherein the at least one action not included in the initial set of actions corresponds to the increased risk associated with the one or more components of the software deployment in isolation, and wherein the at least one action not included in the initial set of actions affects at least one additional component not included in the one or more components of the software deployment in isolation; and

perform at least one action of the modified set of actions in response to the update.

10. The system of claim 9 , wherein the update related to the software deployment comprises an update to at least one of the specified criteria corresponding to the risk profile associated with the software deployment.

11. The system of claim 10 , wherein the at least one processor is configured to calculate an updated risk profile corresponding to the software deployment, based at least in part on the update to the at least one of the specified criteria corresponding to the risk profile associated with the software deployment.

12. The system of claim 9 , wherein the at least one action of the modified set of actions in response to the update further configures the at least one processor to:

update a log entry or a tracking system;

update a metric in a monitoring system;

trigger an out-of-band activity;

interrupt a build process; or

generate a notification via at least one channel.

13. The system of claim 9 , wherein determining the modified set of actions in response to the update is further based on an output of a machine-learning algorithm.

14. The system of claim 9 , wherein the at least one parameter comprises at least one result of at least one type of security testing.

15. The system of claim 9 , wherein the group of specified criteria comprises at least one of a requirement, a weighting value, a classification, a configuration option, a risk tolerance, or an accessibility level.

16. The system of claim 9 , wherein the component manifest comprises a code repository, a vulnerability database, or a combination thereof.

17. A non-transitory computer-readable storage device storing instructions that, when executed by at least one processor, cause the at least one processor to perform operations comprising:

receiving a risk profile associated with a software deployment, and an update related to the software deployment, the update comprising a merge of code into a source-code repository;

evaluating at least one parameter associated with the update, to produce an evaluation result, the evaluation result comprising a determination that a risk associated with one or more components of the software deployment in isolation has increased as a result of the update;

determining a modified set of actions in response to the update, based at least in part on an initial set of actions, the evaluation result, a group of specified criteria on which the risk profile is based, and a component manifest corresponding to the software deployment, wherein the initial set of actions is associated with the one or more components of the software deployment in isolation, wherein the modified set of actions comprises at least one action not included in the initial set of actions, wherein the at least one action not included in the initial set of actions corresponds to the increased risk associated with the one or more components of the software deployment in isolation, and wherein the at least one action not included in the initial set of actions affects at least one additional component not included in the one or more components of the software deployment in isolation; and

performing at least one action of the modified set of actions in response to the update.

18. The non-transitory computer-readable storage device of claim 17 , wherein the update related to the software deployment comprises an update to at least one of the specified criteria corresponding to the risk profile associated with the software deployment.

19. The non-transitory computer-readable storage device of claim 18 , the operations further comprising calculating an updated risk profile corresponding to the software deployment, based at least in part on the update to the at least one of the specified criteria corresponding to the risk profile associated with the software deployment.

20. The non-transitory computer-readable storage device of claim 17 , wherein the at least one action of the modified set of actions in response to the update comprises:

updating a log entry or a tracking system;

updating a metric in a monitoring system;

triggering an out-of-band activity;

interrupting a build process; or

generating a notification via at least one channel.

Assignments (4)
SECURITY INTEREST Recorded Sep 30, 2024
From: BLACK DUCK SOFTWARE, INC.
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 069083/0149 →
CHANGE OF NAME Recorded Jul 30, 2024
From: SOFTWARE INTEGRITY GROUP, INC.
To: BLACK DUCK SOFTWARE, INC.
Reel/Frame 068191/0490 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2024
From: SYNOPSYS, INC.
To: SOFTWARE INTEGRITY GROUP, INC.
Reel/Frame 066664/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2024
From: RAO, MEERA
To: SYNOPSYS, INC.
Reel/Frame 066462/0429 →
Continuity (1)
Provisional Application 63059471 · Jul 31, 2020
Cited By (28)
US 12,236,212 US 12,261,866 US 12,267,345 US 12,284,197 US 12,299,133 US 12,309,236 US 12,323,449 US 12,335,348 US 12,355,793 US 12,360,763 US 12,393,401 US 12,481,487 US 12,481,794 US 12,517,702 US 12,526,297 US 12,556,548 US 12,591,667 US 12,592,950 US 12,613,930 US 12,621,324 US 12,634,376 US 12,639,068 US 12,659,343 US 12,669,992 US 12,695,768 US 12,699,746 US 12,706,980 US 12,712,897