IP Library Granted Patent US 11,526,775
Granted Patent B2
US 11,526,775 · App. 17/163,757 · Granted Dec 13, 2022

Automatically evaluating application architecture through architecture-as-code

Inventors: Zachary Blizzard (Sterling, VA); Christopher Ocampo (Annandale, VA); Tanusree McCabe (Washington, DC); Bradley Dellinger (Philadelphia, PA); Bita Akhlaghi (McLean, VA); Francois Tur (Edgewater, MD); Diego Norri (Arlington, VA); Elizabeth Ashton (Arlington, VA); Asa Britten (McLean, VA); Jonathan Tran (Centreville, VA); Natalia Noyes (Washington, DC); Keith Spaar (Arlington, VA); Richard Dillon (Fairfax, VA); Abhishek Ravi (Lakeland, TN); Asher Gilani (Montville, NJ); Daniel Tran (McLean, VA); Claude Reyes (Sterling, VA); Blair Christopher (Richmond, VA)
Assignee: CAPITAL ONE SERVICES, LLC
G06N5/027G06F3/0482G06F8/73G06N5/025G06N20/00G06Q10/0635G06F8/34G06F8/35G06F21/577G06F2221/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 11,526,775
App. No.
17/163,757
Granted
Dec 13, 2022
Kind
B2
Abstract

The disclosed technology includes systems and methods for automatically generating a dynamic system context diagram based on machine-readable code. A method can include receiving, at a rules engine, machine-readable code describing interactions among a plurality of applications in software architecture, evaluating, with the rules engine in communication with a system of record (SoR), compliance of the interactions among the plurality of applications according to the SoR, identifying, with the rules engine, and based on compliance evaluation, one or more dependencies among the plurality of applications, generating, with an output engine, a system context diagram image comprising a graphical representation of the plurality of applications with associated interactions and dependencies, and outputting, for display, the system context diagram image.

Claims (48)

1. A system, comprising:

one or more processors;

a system of record (SoR) in communication with the one or more processors;

a rules engine in communication with the SoR;

an output engine in communication with the rules engine;

memory in communication with the one or more processors and storing instructions that, when executed by the one or more processors, are configured to cause the system to:

receive, at the rules engine, machine-readable code describing interactions among a plurality of applications in a software architecture;

evaluate, with the rules engine, compliance of the interactions among the plurality of applications according to the SoR;

identify, with the rules engine, and based on compliance evaluation, one or more dependencies among the plurality of applications;

generate, with the output engine, a system context diagram image comprising a graphical representation of the plurality of applications with associated interactions and dependencies; and

output, for display, the system context diagram image.

2. The system of claim 1 , wherein the machine-readable code describes dynamic software architecture interactions among the plurality of applications.

3. The system of claim 1 , wherein the machine-readable code is in a YAML format.

4. The system of claim 1 , wherein the rules engine utilizes authoritative data stored in the SoR to evaluate the compliance of the interactions among the plurality of applications against corporate standards or resiliency risks.

5. The system of claim 1 , wherein the instructions further cause the rules engine to evaluate and identify one or more critical dependencies among the plurality of applications.

6. The system of claim 5 , wherein the instructions further cause the output engine to generate unique graphical representations of the one or more critical dependencies.

7. The system of claim 5 , wherein the instructions further cause the rules engine to:

determine similarities among the critical dependencies;

pool similar critical dependencies; and

store the pooled similar critical dependencies in a repository.

8. The system of claim 5 , wherein the instructions are further configured to cause the rules engine to determine an overall risk score for the software architecture by computing a weighted average of each field of the machine-readable code associated with the one or more critical dependencies according to one or more of a dependency type and a dependency severity.

9. The system of claim 1 , wherein the output engine is configured to generate a graphical representation of network traffic associated with one or more of the plurality of applications.

10. The system of claim 1 , wherein the output engine is configured to generate a graphical representation of a resiliency risk for the software architecture.

11. The system of claim 1 , wherein the instructions are further configured to cause the one or more processors to:

output for display, a menu of one or more options for compliance remediation of the plurality of applications; and

remediate the machine-readable code automatically according to a selected option.

12. A method, comprising:

receiving, at a rules engine, machine-readable code describing interactions among a plurality of applications in a software architecture;

evaluating, with the rules engine in communication with a system of record (SoR), compliance of the interactions among the plurality of applications according to the SoR;

identifying, with the rules engine and based on the evaluating, one or more dependencies among the plurality of applications;

generating, with an output engine, a system context diagram image comprising a graphical representation of the plurality of applications with associated interactions and dependencies; and

outputting, for display, the system context diagram image.

13. The method of claim 12 , wherein the machine-readable code describes dynamic software architecture interactions among the plurality of applications.

14. The method of claim 12 , wherein the machine-readable code is in a YAML format.

15. The method of claim 12 , wherein the rules engine utilizes authoritative data stored in the SoR for evaluating the compliance of the interactions among the plurality of applications against one or more of corporate standards and resiliency risks.

16. The method of claim 12 , further comprising evaluating and identifying one or more critical dependencies among the plurality of applications.

17. The method of claim 16 , further comprising generating unique graphical representations of the one or more critical dependencies.

18. The method of claim 16 , further comprising:

determining similarities among the critical dependencies;

pooling similar critical dependencies; and

storing the pooled similar critical dependencies in a repository.

19. The method of claim 16 , further comprising determining an overall risk score for the software architecture by computing a weighted average of each field of the machine-readable code associated with the one or more critical dependencies according to one or more of a dependency type and a dependency severity.

20. A non-transitory computer-readable storage medium storing instructions that are configured to cause one or more processors to perform a method of:

receiving, at a rules engine, machine-readable code describing interactions among a plurality of applications in a software architecture;

evaluating, with the rules engine in communication with a system of record (SoR), compliance of the interactions among the plurality of applications according to the SoR;

identifying, with the rules engine and based on the evaluating, one or more dependencies among the plurality of applications;

generating, with an output engine, a system context diagram image comprising a graphical representation of the plurality of applications with associated interactions and dependencies; and

outputting, for display, the system context diagram image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2021
From: BLIZZARD, ZACHARY; OCAMPO, CHRISTOPHER; MCCABE, TANUSREE; DELLINGER, BRADLEY; AKHLAGHI, BITA; TUR, FRANCOIS; NORRI, DIEGO; ASHTON, ELIZABETH; BRITTEN, ASA; TRAN, JONATHAN; NOYES, NATALIA; SPAAR, KEITH; DILLON, RICHARD; RAVI, ABHISHEK; GILANI, ASHER; TRAN, DANIEL; REYES, CLAUDE; CHRISTOPHER, BLAIR
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 055094/0804 →
Continuity (1)
Related Publication 20220245475A1 · Aug 4, 2022