IP Library Granted Patent US 12,293,165
Granted Patent B2
US 12,293,165 · App. 17/822,408 · Granted May 6, 2025

System and method for monitoring of software applications and health analysis

Inventors: Shubhabrata Mohanty (Pune, IN); Pritam Sadhukhan (Pune, IN)
Assignee: Calibo LLC
G06F8/10G06F8/20G06F8/311G06F8/34G06F8/447G06F8/51G06F8/60G06F8/77G06F9/451G06F11/3608H04L41/082
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 12,293,165
App. No.
17/822,408
Granted
May 6, 2025
Kind
B2
Abstract

A system for facilitating analysis of a software product is provided. The system includes processing circuitry that collects data logs from various technologies associated with at least one stage of a software development life cycle (SDLC) of the software product. The processing circuitry identifies entities associated with each collected data log, and standardizes the collected data logs such that each collected data log is standardized based on standard data formats associated with the identified entities. Each entity corresponds to at least one stage of the SDLC of the software product. Further, the processing circuitry updates data models associated with the entities based on the standardized data logs and generates a unified data model that is indicative of a correlation between the entities. Based on the correlation indicated by the unified data model, the processing circuitry executes an automated action.

Claims (96)

1. A system for facilitating analysis of a software product, the system comprising:

processing circuitry configured to:

collect a plurality of data logs from a plurality of technologies, wherein each of the plurality of technologies is associated with at least one of a plurality of stages of a software development life cycle (SDLC) of the software product;

identify, from a plurality of entities, a set of entities associated with each of the collected plurality of data logs, wherein each of the plurality of entities corresponds to at least one of the plurality of stages of the SDLC of the software product, and wherein the plurality of entities is associated with a plurality of data models;

standardize the collected plurality of data logs;

update, based on each of the standardized plurality of data logs, a set of data models, of the plurality of data models, wherein the set of data models are associated with the set of entities;

generate, based on the updated set of data models and a relationship matrix associated with the plurality of entities, a unified data model that is indicative of a correlation between the plurality of entities, wherein the relationship matrix corresponds to one or more rules that define the correlation between the plurality of entities; and

execute an automated action based on the correlation indicated by the unified data model.

2. The system of claim 1 , wherein the plurality of stages of the SDLC of the software product includes a definition stage, a design stage, a development stage, a deployment stage, a post-deployment monitoring stage, and a management stage.

3. The system of claim 1 ,

wherein each of the collected plurality of data logs includes a plurality of technology-specific attributes and a plurality of attribute values for the plurality of technology-specific attributes,

wherein each data model of the plurality of data models, associated with a corresponding entity of the plurality of entities, includes a plurality of standard attributes, and

wherein each of the plurality of technology-specific attributes and each of the plurality of standard attributes are associated with at least one of the plurality of stages of the SDLC of the software product.

4. The system of claim 3 , wherein to standardize each of the collected plurality of data logs, the processing circuitry is further configured to:

segregate, based on the set of entities, the plurality of technology-specific attributes into one or more sets of technology-specific attributes such that each of the one or more sets of technology-specific attributes is associated with one of the set of entities;

identify one or more sets of standard attributes corresponding to the one or more sets of technology-specific attributes, respectively, wherein each of the one or more sets of standard attributes is associated with an entity of the set of entities and is identified from the plurality of standard attributes associated with the corresponding entity; and

convert each of the one or more sets of technology-specific attributes to the corresponding set of standard attributes of the one or more sets of standard attributes.

5. The system of claim 4 ,

wherein each of the collected plurality of data logs is standardized based on a set of standard data formats associated with the set of entities,

wherein each of the one or more sets of standard attributes is associated with a standard data format of the set of standard data formats, and

wherein each of the one or more sets of technology-specific attributes is converted, based on the associated standard data format of the set of standard data formats, to the corresponding set of standard attributes of the one or more sets of standard attributes.

6. The system of claim 4 ,

wherein each entity of the plurality of entities includes a plurality of sub-entities, and

wherein each of the one or more sets of standard attributes includes one or more subsets of standard attributes associated with one or more sub-entities of the plurality of sub-entities, respectively.

7. The system of claim 4 , wherein the processing circuitry is further configured to:

identify, from the plurality of attribute values, one or more sets of attribute values associated with the one or more sets of technology-specific attributes, respectively;

map the one or more sets of attribute values to the one or more sets of standard attributes, respectively; and

update the set of data models, associated with the set of entities, based on the mapped one or more sets of attribute values of each of the standardized plurality of data logs.

8. The system of claim 3 , wherein the unified data model includes the plurality of standard attributes of each of the plurality of data models and a set of attribute values, of the plurality of attribute values, mapped to each standard attribute of the plurality of standard attributes.

9. The system of claim 8 ,

wherein the correlation between the plurality of entities corresponds to one or more standard attributes associated with one entity of the plurality of entities being correlated with one or more standard attributes associated with at least one remaining entity of the plurality of entities, and

wherein the plurality of standard attributes includes each of the one or more standard attributes associated with the one entity, and the one or more standard attributes associated with the at least one remaining entity.

10. The system of claim 8 ,

wherein the processing circuitry is further configured to determine, based on a set of metrics and the unified data model, an insight associated with the software product,

wherein the set of metrics is indicative of two or more sets of standard attributes, associated with two or more entities of the plurality of entities, respectively, required to determine the insight, and

wherein the plurality of standard attributes includes the two or more sets of standard attributes.

11. The system of claim 10 ,

wherein the insight is indicative of at least one of a health of the software product, a security level of the software product, a performance of the software product, or a quality level of the software product,

wherein the automated action is executed based on the insight, and

wherein the execution of the automated action corresponds to a generation of an alert.

12. The system of claim 10 , wherein the processing circuitry is further configured to:

receive, from a user device of a user, a user input to generate the set of metrics;

identify, from the plurality of entities, the two or more entities associated with the user input;

identify, for the two or more entities, from the plurality of standard attributes, the two or more sets of standard attributes, respectively;

generate a query based on the two or more sets of standard attributes;

validate the query based on the unified data model; and

generate the set of metrics based on (i) the validation of the query and (ii) the two or more sets of standard attributes.

13. The system of claim 10 , wherein to determine the insight associated with the software product, the processing circuitry is further configured to:

generate a query based on the set of metrics, wherein the query is indicative of a correlation between the two or more entities;

retrieve, from the unified data model based on the query, response data that includes two or more sets of attribute values of the two or more sets of standard attributes, respectively; and

process the response data, wherein the insight associated with the software product is determined based on the processed response data.

14. The system of claim 1 , wherein the processing circuitry is further configured to determine, based on the unified data model, an insight associated with the software product, wherein the insight is indicative of at least one of a health of the software product, a security level of the software product, a performance of the software product, or a quality level of the software product, wherein the automated action is executed based on the insight, and wherein the execution of the automated action corresponds to a generation of an alert.

15. A method for facilitating analysis of a software product, the method comprising:

collecting, by processing circuitry, a plurality of data logs from a plurality of technologies, wherein each of the plurality of technologies is associated with at least one of a plurality of stages of a software development life cycle (SDLC) of the software product;

identifying, by the processing circuitry, from a plurality of entities, a set of entities associated with each of the collected plurality of data logs, wherein each of the plurality of entities corresponds to at least one of the plurality of stages of the SDLC of the software product, and wherein the plurality of entities is associated with a plurality of data models;

standardizing, by the processing circuitry, the collected plurality of data logs;

updating, based on each of the standardized plurality of data logs, set of data models, of the plurality of data models, wherein the set of data models are associated with the set of entities;

generating, by the processing circuitry, based on the updated set of data models and a relationship matrix associated with the plurality of entities, a unified data model that is indicative of a correlation between the plurality of entities, wherein the relationship matrix corresponds to one or more rules that define the correlation between the plurality of entities; and

executing, by the processing circuitry, an automated action based on the correlation indicated by the unified data model.

16. The method of claim 15 , wherein the plurality of stages of the SDLC of the software product includes a definition stage, a design stage, a development stage, a deployment stage, a post-deployment monitoring stage, and a management stage.

17. The method of claim 15 ,

wherein each of the collected plurality of data logs includes a plurality of technology-specific attributes and a plurality of attribute values for the plurality of technology-specific attributes,

wherein each data model of the plurality of data models, associated with a corresponding entity of the plurality of entities, includes a plurality of standard attributes, and

wherein each of the plurality of technology-specific attributes and each of the plurality of standard attributes are associated with at least one of the plurality of stages of the SDLC of the software product.

18. The method of claim 17 , wherein the standardization of each of the collected plurality of data logs comprises:

segregating, by the processing circuitry, based on the set of entities, the plurality of technology-specific attributes into one or more sets of technology-specific attributes such that each of the one or more sets of technology-specific attributes is associated with one of the set of entities;

identifying, by the processing circuitry, one or more sets of standard attributes corresponding to the one or more sets of technology-specific attributes, respectively,

wherein each of the one or more sets of standard attributes is associated with an entity of the set of entities and is identified from the plurality of standard attributes associated with the corresponding entity; and

converting, by the processing circuitry, each of the one or more sets of technology-specific attributes to the corresponding set of standard attributes of the one or more sets of standard attributes.

19. The method of claim 18 , further comprising:

identifying, by the processing circuitry, from the plurality of attribute values, one or more sets of attribute values associated with the one or more sets of technology-specific attributes, respectively;

mapping, by the processing circuitry, the one or more sets of attribute values to the one or more sets of standard attributes, respectively; and

updating the set of data models, associated with the set of entities, based on the mapped one or more sets of attribute values of each of the standardized plurality of data logs.

20. A system for facilitating analysis of a software product, the system comprising:

processing circuitry configured to:

collect a plurality of data logs from a plurality of technologies,

wherein each of the plurality of technologies is associated with at least one of a plurality of stages of a software development life cycle (SDLC) of the software product, and

wherein each of the collected plurality of data logs includes a plurality of technology-specific attributes and a plurality of attribute values for the plurality of technology-specific attributes;

identify, from a plurality of entities, a set of entities associated with each of the collected plurality of data logs, wherein each of the plurality of entities corresponds to at least one of the plurality of stages of the SDLC of the software product, and wherein the plurality of entities is associated with a plurality of data models;

standardize the collected plurality of data logs;

wherein each data model of the plurality of data models, associated with a corresponding entity of the plurality of entities, includes a plurality of standard attributes, and

wherein each of the plurality of technology-specific attributes and each of the plurality of standard attributes are associated with at least one of the plurality of stages of the SDLC of the software product;

update a set of data models, of the plurality of data models, associated with the set of entities based on each of the standardized plurality of data logs;

generate, based on the updated set of data models and a relationship matrix associated with the plurality of entities, a unified data model that is indicative of a correlation between the plurality of entities,

wherein the relationship matrix corresponds to one or more rules that define the correlation between the plurality of entities, and

wherein the unified data model includes the plurality of standard attributes of each of the plurality of data models and a set of attribute values, of the plurality of attribute values, mapped to each standard attribute of the plurality of standard attributes;

execute an automated action based on the correlation indicated by the unified data model;

determine, based on a set of metrics and the unified data model, an insight associated with the software product,

wherein the set of metrics is indicative of two or more sets of standard attributes, associated with two or more entities of the plurality of entities, respectively, required to determine the insight, and

wherein the plurality of standard attributes includes the two or more sets of standard attributes,

receive, from a user device of a user, a user input to generate the set of metrics;

identify, from the plurality of entities, the two or more entities associated with the user input;

identify, for the two or more entities, from the plurality of standard attributes, the two or more sets of standard attributes, respectively;

generate a query based on the two or more sets of standard attributes;

validate the query based on the unified data model; and

generate the set of metrics based on (i) the validation of the query and (ii) the two or more sets of standard attributes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2023
From: MOHANTY, SHUBHABRATA; SADHUKHAN, PRITAM
To: CALIBO LLC
Reel/Frame 064159/0244 →
Continuity (2)
Provisional Application 63260723 · Aug 30, 2021
Related Publication 20230067084A1 · Mar 2, 2023
References Cited (40)
US 8108234B2 · Suenbuel et al. · 2012 [cited by applicant]
US 10749939B2 · Moon et al. · 2020 [cited by applicant]
US 10810074B2 · Yu et al. · 2020 [cited by applicant]
US 11314758B2 · Marquardt et al. · 2022 [cited by applicant]
US 11586423B2 · Körner · 2023 [cited by applicant]
US 11748064B2 · Mohanty et al. · 2023 [cited by applicant]
US 20050160104A1 · Meera et al. · 2005 [cited by applicant]
US 20100011337A1 · Young · 2010 [cited by examiner]
US 20110225163A1 · Lyon · 2011 [cited by applicant]
US 20130086116A1 · Agarwal et al. · 2013 [cited by applicant]
US 20140096104A1 · Novak et al. · 2014 [cited by applicant]
US 20140130036A1 · Gurikar et al. · 2014 [cited by applicant]
US 20180046455A1 · Walsh et al. · 2018 [cited by applicant]
US 20180082233A1 · Apshankar · 2018 [cited by examiner]
US 20190095478A1 · Tankersley et al. · 2019 [cited by applicant]
US 20190227824A1 · Kuchoor et al. · 2019 [cited by applicant]
US 20200026641A1 · Rajagopalan et al. · 2020 [cited by applicant]
US 20200117427A1 · Mcgloin et al. · 2020 [cited by applicant]
US 20200167215A1 · Sidhu · 2020 [cited by applicant]
US 20200337648A1 · Saripalli · 2020 [cited by examiner]
US 20200358757A1 · Kulkarni et al. · 2020 [cited by applicant]
US 20200401379A1 · Appel et al. · 2020 [cited by applicant]
US 20210117313A1 · Geary · 2021 [cited by applicant]
US 20210216293A1 · Siram et al. · 2021 [cited by applicant]
US 20210286638A1 · Fan et al. · 2021 [cited by applicant]
US 20210334146A1 · Kulkarni et al. · 2021 [cited by applicant]
US 20220051162A1 · Fox et al. · 2022 [cited by applicant]
US 20220334950A1 · Balan et al. · 2022 [cited by applicant]
JP 2004265278A · 2004 [cited by applicant]
A. Kumar, N. Karnik and C. K. Ravindranath, “Moving from data modeling to process modeling in CIM,” 2005 9th IFIP/IEEE International Symposium on Integrated Network Management, 2005. IM 2005., Nice, France, 2005, pp. 67… [cited by examiner]
S. Martínez-Fernández et al., “Continuously Assessing and Improving Software Quality With Software Analytics Tools: A Case Study,” in IEEE Access, vol. 7, pp. 68219-68239, 2019. (Year: 2019). [cited by examiner]
Notice of Allowance received in U.S. Appl. No. 17/027,163 on May 24, 2023. [cited by applicant]
“Splunk Observability Cloud Integrations” available at <<https://www.splunk.com/en_us/app-integrations.html>>. [cited by applicant]
“Splunk® Intelligence Management—Welcome to Splunk Intelligence Management” available at <<https://docs.splunk.com/Documentation/SIM/current/Intro/Glossary>>. [cited by applicant]
“BigPanda's Open Integration Hub” available at <<https://www.bigpanda.io/our-product/open-integration-hub/>>. [cited by applicant]
“Algorithmic Correlation” available at <<https://docs.bigpanda.io/docs/correlation>>. [cited by applicant]
Cingolani et al., “BigDataScript: a scripting language for data pipelines” (Year: 2015). [cited by applicant]
Notice of allowance for U.S. Appl. No. 17/823,402, dated Mar. 14, 2024. [cited by applicant]
Notice of Allowance, U.S. Appl. No. 17/899,387, received on Dec. 27, 2023. [cited by applicant]
Non-final office action, U.S. Appl. No. 17/823,321, received on Jan. 25, 2024. [cited by applicant]