Software Application Intelligence Platform for Dependency Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current software tools are inefficient in monitoring and detecting flaws in software application design due to a lack of asset management and application intelligence, particularly in identifying dependencies and data flows, leading to prolonged discovery times and inability to detect changes.
Innovation Solution
A system and method for collecting, analyzing, and compiling visibility data on software applications to identify dependencies and data flows using static analysis, generating a dataflow map, and enforcing control policies based on this data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If network-based discovery tools are used to monitor application activity, then application dependencies can be detected, but the discovery time is prolonged (usually months) and the tools cannot detect changes or associate applications with specific transactions
Solution Approach 1:
The patent instruments the application code during the development phase, before deployment, by inserting probes and hooks into the codebase. This preliminary action captures dependency information, data flows, and transaction associations directly from the code, eliminating the need for prolonged post-deployment monitoring and enabling immediate detection of application relationships and changes
Solution Approach 2:
The patent replaces the mechanical network monitoring approach with a code-level instrumentation system. Instead of passively monitoring network traffic and inferring dependencies, the system actively instruments the application code to directly report dependencies, data flows, and transactions, providing precise and immediate information without the time delays inherent in network-based discovery
2Ease of operation
If traditional software tools are used for monitoring, then basic application activity can be tracked, but the tools lack asset management capabilities and application intelligence for detecting design flaws
Solution Approach 1:
The patent creates a multi-functional system that combines code instrumentation, dependency analysis, data flow tracking, transaction association, and policy enforcement into a single platform. This universal system not only monitors application activity but also provides comprehensive asset management, detects design flaws, and enforces security policies, eliminating the information gaps present in traditional single-function tools
Solution Approach 2:
The patent introduces an intermediary instrumentation layer between the application code and the monitoring system. This intermediary layer captures detailed information about dependencies, data flows, and transactions directly from the code execution, bridging the gap between simple activity tracking and comprehensive application intelligence, enabling the detection of design flaws and provision of actionable insights
3Adaptability or versatility
If applications are designed to support multiple dependencies and frequent updates, then application functionality and adaptability are improved, but the complexity of monitoring and detecting design flaws increases
Solution Approach 1:
The patent instruments the application code during development, creating a comprehensive map of dependencies and data flows before the application is deployed. This preliminary action establishes a baseline understanding of the application's architecture and relationships, making it easier to monitor and detect design flaws even as the application evolves with multiple dependencies and frequent updates
Solution Approach 2:
The patent implements continuous feedback mechanisms that monitor application behavior in real-time and compare it against the instrumented baseline. When changes occur in dependencies or data flows, the system automatically detects and reports these changes, providing continuous feedback that simplifies monitoring complexity despite increasing application adaptability and functionality
Data Source
AI summary
A system and method for identifying distinct software applications. A method includes collecting, from a plurality of resources, data utilized to at least execute a plurality of software applications of an organization; analyzing the collected data to identify the plurality of software applications to determine how each of the plurality of software applications interact with its respective identified software applications to detect at least two applications that communicate with each other, wherein the detected at least two applications that communicate with each other are distinct software applications; determining, by using a static analysis process, dependencies between the distinct software applications; and compiling visibility data based on the at least identified distinct software applications and their determined dependencies.


