Application Fingerprinting for Precise Software Relationship Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application marketplaces struggle to accurately categorize and recommend applications that are similar in functionality, as current categorization methods often fail to provide sufficient refinement, leading to users and developers seeking similar applications facing difficulties in locating and comparing them effectively.

Innovation Solution

The implementation of application fingerprinting, which generates unique profiles based on API usage, software libraries, hardware devices, resource consumption patterns, and user behavior, allowing for the analysis of related applications within categories, and providing reporting data and recommendations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional application categorization methods are used, then applications can be grouped into broad categories, but the categorization lacks precision and fails to identify closely related applications

Engineering Contradiction:
Improvecategorization precisionVSAvoidanalysis complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the application analysis process into multiple components: extracting technical features (APIs, libraries, hardware), analyzing user behavior patterns, and generating composite profiles. This segmentation allows for precise categorization by breaking down the complex task of application comparison into manageable feature extraction and matching steps, thereby improving measurement precision without overwhelming system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameters used for application categorization from broad category labels to detailed technical parameters including specific APIs, software libraries, hardware devices, and user behavior metrics. By transforming the categorization system to operate on these granular parameters, the patent achieves higher precision in identifying related applications while managing complexity through systematic parameter organization and comparison.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If application profiles are generated based on multiple features (APIs, libraries, hardware, user behavior), then related applications can be identified more accurately, but the data processing and analysis complexity increases

Engineering Contradiction:
Improveapplication relationship identification accuracyVSAvoiddata processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a universal application profile structure that can accommodate multiple feature types (technical features like APIs and libraries, hardware features, and user behavior features) within a single standardized framework. This multi-functional profile design allows the system to process diverse data sources through a unified analysis mechanism, improving identification accuracy while controlling processing complexity through standardization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces application profiles as intermediary structures that mediate between raw data from multiple sources (API usage, library dependencies, hardware access, user behavior) and the final relationship identification process. These profiles serve as standardized intermediate representations that simplify the comparison process, allowing accurate identification of related applications without directly processing the full complexity of all source data simultaneously.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If comprehensive application analysis is performed to provide refined recommendations, then user and developer insights are improved, but the computational resources and time required increase

Engineering Contradiction:
Improveuser navigation easeVSAvoidanalysis time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis by pre-generating application profiles that capture technical features, hardware characteristics, and user behavior patterns before actual recommendation queries are made. This preliminary action stores processed information in ready-to-use profiles, allowing rapid comparison and recommendation generation when users or developers seek related applications, thereby reducing real-time analysis time while maintaining comprehensive analysis quality.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces traditional mechanical search and categorization methods with automated profile-based comparison systems. By substituting manual or simple algorithmic approaches with automated analysis of pre-computed profiles containing multiple feature dimensions, the system provides comprehensive insights and refined recommendations more efficiently, reducing the time loss associated with thorough analysis while improving ease of operation for users and developers.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS9454565B1Identifying relationships between applications
Publication Date: 2016.09.27 AMAZON TECH INC
  • US9454565B1 patent drawing
  • US9454565B1 patent drawing
  • US9454565B1 patent drawing

AI summary

In various embodiments, static, dynamic, and behavioral analysis may be performed on an application. A set of software libraries or code fragments employed by the application may be determined. A set of device resources employed by the application may be determined. An application fingerprint is generated for the application. The application fingerprint encodes identifiers for the set of software libraries or code fragments and identifiers for the set of device resources.