IP Library Granted Patent US 11,487,539
Granted Patent B2
US 11,487,539 · App. 17/227,502 · Granted Nov 1, 2022

Systems and methods for automating and monitoring software development operations

Inventor: Naresh Muddakkagari (Chicago, IL)
G06F8/77G06F8/33G06F8/71G06F11/3664G06F16/901G06F16/903G06F40/14
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,487,539
App. No.
17/227,502
Granted
Nov 1, 2022
Kind
B2
Abstract

Systems and methods are disclosed for automating and monitoring software development operations. The systems may facilitate a user to submit a request to receive information related to a software application development across a development operations (DevOps) pipeline, and to efficiently receive an accurate response to the request. A natural language processing application may use query parameters from the request to form a query. The query may be sent to an artificial intelligence markup language (AIML) interpreter to retrieve the requested information from a database. Alternatively or additionally, the query may be sent to an application associated with an integration of a plurality of DevOps tools in the DevOps pipeline. The application may develop a dynamic response to the request.

Claims (83)

1. A method comprising:

receiving, from a database, a response to a request for information associated with a software application development across a development operations (DevOps) pipeline;

forming a query based on the request, the query comprising an identifier of the software application development and one or more query parameters;

identifying one or more relevant DevOps tools in the DevOps pipeline based on the query parameters;

determining, for each of the one or more relevant DevOps tools, an alias identifier for each of one or more of the software application development or query parameter;

sending, to a source integrator for each of the one or more relevant DevOps tools, a request for an individual response to the query, and the alias identifiers corresponding to the one or more of the software application development or query parameter;

receiving, from the source integrator and for each of the one or more relevant DevOps tools, the individual response to the query;

integrating the individual response from the source integrator for each of the one or more relevant DevOps tools into a response to the request;

validating the response; and

presenting the response to a user device via a communication network.

2. The method of claim 1 , further comprising updating the database by:

receiving, for each of a plurality of software application developments across a DevOps pipeline, information for one or more events from a plurality of software development tools in the DevOps pipeline; and

entering, for each of the plurality of software application developments, the information for the one or more events within data structures associated with the software application development.

3. The method of claim 2 , further comprising updating the database by:

receiving a notification of a new software application development; and

creating a new data structure using an identifier of the new software application development.

4. The method of claim 1 , wherein validating the response comprises:

determining that the response to the request does not meet a threshold validity metric;

forming a revised query to send to the database; and

receiving, from the database, a revised response to the request.

5. The method of claim 1 , wherein the first response is an indication that the information requested to be received cannot be found in the database.

6. The method of claim 1 , wherein the sending the request for the individual response to the query and the alias identifiers comprises:

determining that the database does not store the information for the request; and

sending the query to a second computing device, wherein the second computing device is associated with an integration of a plurality of DevOps tools in the DevOps pipeline.

7. The method of claim 1 , wherein the presenting the response to the user device via the communication network further comprises:

displaying the response to the query on the user interface in a format desired by the user.

8. The method of claim 1 , wherein the query parameters include one or more of:

an identifier of the software application development;

an identifier of a build of the software application development, an identifier or date of a release of at least a part of the software application development or at least a part of the build;

a stage and/or process in the DevOps pipeline; or

a quality metric.

9. An apparatus comprising:

one or more processors; and

memory storing computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to:

receive, from a database, a response to a request for information associated with a software application development across a development operations (DevOps) pipeline;

generate, using a natural language processing (NLP) application, a query based on the request, the query comprising an identifier of the software application development and one or more query parameters;

identify one or more relevant DevOps tools in the DevOps pipeline based on the query parameters;

determine, for each of the one or more relevant DevOps tools, an alias identifier for each of one or more of the software application development or query parameter;

send, to a source integrator for each of the one or more relevant DevOps tools, a request for an individual response to the query, and the alias identifiers;

receive, from the source integrator and for each of the one or more relevant DevOps tools, the individual response to the query;

integrate the individual response from the source integrator for each of the one or more relevant DevOps tools into a response to the request;

validate the response; and

present the response to a user device via a communication network.

10. The apparatus of claim 9 , the memory storing computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to update the database by:

receiving, for each of a plurality of software application developments across a DevOps pipeline, information for one or more events from a plurality of software development tools in the DevOps pipeline; and

entering, for each of the plurality of software application developments, the information for the one or more events within data structures associated with the software application development.

11. The apparatus of claim 10 , the memory storing computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to update the database by:

receiving a notification of a new software application development; and

creating a new data structure using an identifier of the new software application development.

12. The apparatus of claim 10 , wherein validating the response comprises:

determining that the response to the request does not meet a threshold validity metric;

forming a revised query to send to the database; and

receiving, from the database, a revised response to the request.

13. One or more non-transitory computer readable media storing instructions that, when executed by one or more processors, cause the one or more processors to:

receive, from a database, a response to a request for information associated with a software application development across a development operations (DevOps) pipeline;

form, using a natural language processing (NLP) application, a query based on the request, the query comprising an identifier of the software application development and one or more query parameters;

identify one or more relevant DevOps tools in the DevOps pipeline based on the query parameters;

determine, for each of the one or more relevant DevOps tools, an alias identifier for each of one or more of the software application development or query parameter;

send, to a source integrator for each of the one or more relevant DevOps tools, a request for an individual response to the query, and the alias identifiers;

receive, from the source integrator and for each of the one or more relevant DevOps tools, the individual response to the query;

integrate the individual response from the source integrator for each of the one or more relevant DevOps tools into a response to the request; and

present the response to a user device via a communication network.

14. The one or more non-transitory computer readable media of claim 13 , storing instructions that, when executed by one or more processors, cause the one or more processors to:

receiving, for each of a plurality of software application developments across a DevOps pipeline, information for one or more events from a plurality of software development tools in the DevOps pipeline; and

entering, for each of the plurality of software application developments, the information for the one or more events within data structures associated with the software application development.

15. The one ore more non-transitory computer readable media of claim 13 , storing instructions that, when executed by one or more processors, cause the one or more processors to update the database by:

receiving a notification of a new software application development; and

creating a new data structure within a database using an identifier of the new software application development.

16. The one or more non-transitory computer readable media of claim 13 , storing instructions that, when executed by one or more processors, cause the one or more processors to update the database by:

determining that the response to the request does not meet a threshold validity metric;

forming a revised query to send to the database; and

receiving, from the database, a revised response to the request.

17. The one or more non-transitory computer readable media of claim 13 , wherein the response is an indication that the information requested to be received cannot be found in the database.

18. The one or more non-transitory computer readable media of claim 13 , wherein the sending the request for the individual response to the query and the alias identifiers comprises:

determining that the database does not store the information for the request; and

sending the query to the second computing device, wherein the second computing device is associated with an integration of a plurality of DevOps tools in the DevOps pipeline.

19. The one or more non-transitory computer readable media of claim 13 , wherein the presenting the response to the user device via the communication network further comprises:

displaying the response to the query on a user interface in a format desired by a user.

20. The one or more non-transitory computer readable media of claim 13 , wherein the query parameters include one or more of:

an identifier of the software application development;

an identifier of a build of the software application development, an identifier or date of a release of at least a part of the software application development or at least a part of the build;

a stage and/or process in the DevOps pipeline; or

a quality metric.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2021
From: MUDDAKKAGARI, NARESH
To: ALLSTATE INSURANCE COMPANY
Reel/Frame 055899/0096 →
Continuity (2)
Continuation 16257814 · Jan 25, 2019
Related Publication 20210232393A1 · Jul 29, 2021