IP Library Granted Patent US 10,423,520
Granted Patent B2
US 10,423,520 · App. 15/438,762 · Granted Sep 24, 2019

Method and system for real-time identification of anomalous behavior in a software program

Inventor: Ruchika Gupta (Norwalk, CT)
Assignee: Webomates LLC
G06F11/3684G06F11/3692G06F8/60G06F11/323G06F11/3466G06F11/362G06F11/3604G06F11/3636G06F11/3664G06F11/3672
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 10,423,520
App. No.
15/438,762
Granted
Sep 24, 2019
Kind
B2
Abstract

Disclosed is a system and method for real-time identification of anomalous behavior in a software program. The system is configured to generate a set of signatures files corresponding to a set of test cases. In one embodiment, each signature file is configured to maintain trace data generated after running the one or more test cases on the software program in a staging environment. Further, the system may capture real-time trace data from the software program, wherein the software program is deployed in a production environment. Further, the system may analyze the real-time trace data to identify a subset of signature files, from the set of signature files, applicable to the real-time trace data. Further, the system may compare the real-time trace data with the sub set of signature files to identify anomalous behavior in the software program.

Claims (44)

1. A system for real-time identification of anomalous behavior in a software program, the system comprising: a memory; and

a processor coupled to the memory, wherein the processor is configured to execute program instructions stored in the memory for:

generating a set of signatures files corresponding to a set of test cases for testing the functional and non functional requirements of the software program, wherein each signature file corresponds to one or more test cases from the set of test cases, wherein each signature file is configured to maintain trace data generated after running the one or more test cases on the software program in a staging environment, wherein the trace data comprises log data associated with the software program in the staging environment;

capturing real-time trace data from the software program, wherein the software program is deployed in a production environment, wherein the real-time trace data comprises log data associated with the software program in the production environment;

analyzing the real-time trace data to identify a subset of signature files, from the set of signature files, applicable to the real-time trace data, wherein the subset of signature files is identified by

determining one or more use cases corresponding to the real-time trace data,

identifying a subset of test cases from the set of test case that are applicable to the one or more use cases, and

identifying the sub set of signature files corresponding to the real-time trace data based on the subset of test cases;

comparing each signature file corresponding to the trace data with the sub set of signature files corresponding to the real-time trace data to identify anomalous behavior in the software program; and

wherein the signature file corresponding to one or more test cases is identified from mapping information comprising mapping between the one or more test cases and each of the signature file.

2. The system of claim 1 , wherein each signature file from the set of signature files is generated in the staging environment by:

enabling a user to create a set of test cases, wherein each test case from the set of test cases is configured to test a plurality of lines of code of the software program,

capturing trace data generated after running the one or more test cases, from the set of test cases, on the software program, and

storing the trace data in a separate log file, there by generating a signature file corresponding to the one or more test cases.

3. The system of claim 1 , wherein anomalous behavior corresponds to at least one of longevity bugs, performance bugs, security flaws, and functional bugs.

4. The system of claim 1 , the software program corresponds to at least one of a web page, a software code, a software application, SAAS, PAAS, and mobile application.

5. The systems of claim 1 , wherein the one or more test cases are configured to test a feature, a module, or a web page associated with the software program for identifying anomalous behavior in the software program.

6. The system of claim 1 , wherein the trace data and the real-time trace data comprises at least one of a system and application log, a system and application log count, system resources count, network traffic, and logs generated from system resources including memory, CPU, file handle, socket handle, and running process associated with the software program.

7. A method for real-time identification of anomalous behavior in a software program, the method comprising steps of:

generating, by a processor, a set of signatures files corresponding to a set of test cases for testing the functional and non functional requirements of the software program, wherein each signature file corresponds to one or more test cases from the set of test cases, wherein each signature file is configured to maintain trace data generated after running the one or more test cases on the software program in a staging environment, wherein the trace data comprises log data associated with the software program in the staging environment;

capturing, by the processor, real-time trace data from the software program, wherein the software program is deployed in a production environment, wherein the real-time trace data comprises log data associated with the software program in the production environment;

analyzing, by the processor, the real-time trace data to identify a subset of signature files, from the set of signature files, applicable to the real-time trace data, wherein the subset of signature files is identified by

determining one or more use cases corresponding to the real-time trace data,

identifying a subset of test cases from the set of test case that are applicable to the one or more use cases, and

identifying the sub set of signature files corresponding to the real-time trace data based on the subset of test cases;

comparing, by the processor, each signature file corresponding to the trace data with the sub set of signature files corresponding to the real-time trace data to identify anomalous behavior in the software program; and

wherein the signature file corresponding to one or more test cases is identified from mapping information comprising mapping between the one or more test cases and each of the signature file.

8. The method of claim 7 , wherein each signature file from the set of signature files is generated in the staging environment by:

enabling a user to create a set of test cases, wherein each test case from the set of test cases is configured to test a plurality of lines of code of the software program,

capturing trace data generated after running the one or more test cases, from the set of test cases, on the software program, and

storing the trace data in a separate log file, there by generating a signature file corresponding to the one or more test cases.

9. The method of claim 7 , wherein anomalous behavior corresponds to at least one of longevity bugs, performance bugs, security flaws, and functional bugs.

10. The method of claim 7 , the software program corresponds to at least one of a web page, a software code, a software application, SAAS, PAAS, and mobile application.

11. The method of claim 7 , wherein the one or more test cases are configured to test a feature, a module, or a web page associated with the software program for identifying anomalous behavior in the software program.

12. The method of claim 7 , wherein the trace data and the real-time trace data comprises at least one of a system and application log, a system and application log count, system resources count, network traffic, and logs generated from system resources including memory, CPU, file handle, socket handle, and running process associated with the software program.

13. A non-transitory computer readable medium embodying a program executable in a computing device for real-time identification of anomalous behavior in a software program, the program comprising a program code:

a program code for generating a set of signatures files corresponding to a set of test cases for testing the functional and non functional requirements of the software program, wherein each signature file corresponds to one or more test cases from the set of test cases, wherein each signature file is configured to maintain trace data generated after running the one or more test cases on the software program in a staging environment, wherein the trace data comprises log data associated with the software program in the staging environment;

a program code for capturing real-time trace data from the software program, wherein the software program is deployed in a production environment, wherein the real-time trace data comprises log data associated with the software program in the production environment;

a program code for analyzing the real-time trace data to identify a subset of signature files, from the set of signature files, applicable to the real-time trace data, wherein the subset of signature files is identified by

determining one or more use cases corresponding to the real-time trace data,

identifying a subset of test cases from the set of test case that are applicable to the one or more use cases, and

identifying the sub set of signature files corresponding to the real-time trace data based on the subset of test cases;

a program code for comparing each signature file corresponding to the trace data with the sub set of signature files corresponding to the real-time trace data to identify anomalous behavior in the software program; and

wherein the signature file corresponding to one or more test cases is identified from mapping information comprising mapping between the one or more test cases and each of the signature file.

Assignments (2)
CHANGE OF NAME Recorded Mar 5, 2025
From: WEBOMATES, LLC
To: WEBOMATES, INC
Reel/Frame 070405/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2017
From: GUPTA, RUCHIKA
To: WEBOMATES LLC
Reel/Frame 041382/0956 →
Continuity (1)
Related Publication 20180239688A1 · Aug 23, 2018