Graph Attention Network for API Relationship Identification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for automated testing of application programming interfaces (APIs) are inefficient, particularly in frequent software development cycles, where test coverage often focuses on development and code rather than comprehensive API relationships.

Innovation Solution

A computer-implemented method and system using a graph attention network to identify and process entity information, generating a relationship network that determines degrees of relationships between APIs and other entities, thereby expanding test coverage and determining a minimal set of APIs for testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If current automated testing methods are used for APIs, then testing can be performed quickly, but test coverage is insufficient and focuses only on development and code rather than comprehensive API relationships

Engineering Contradiction:
Improvetest coverageVSAvoidtesting system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary system comprising an entity builder and a graph attention network that acts as a mediator between the testing system and API entities. This intermediary automatically constructs entity information and relationship graphs, enabling comprehensive API relationship analysis without requiring direct complex testing configurations. The intermediary processes entity information to identify relationships between APIs and other software entities, thereby expanding test coverage while maintaining system usability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If comprehensive API relationship analysis is performed to expand test coverage, then testing effectiveness improves, but the time and computational resources required increase

Engineering Contradiction:
Improvetesting effectivenessVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having the entity builder construct entity information and the graph attention network pre-process relationship data before actual testing begins. The system automatically builds a relationship graph that identifies degrees of relationships between APIs and other entities in advance, allowing testers to leverage this pre-computed structural information during testing. This preliminary processing of entity relationships enables more effective testing without proportionally increasing testing time.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the number of tests is increased to achieve better coverage, then more defects are detected, but the cost and complexity of testing increase

Engineering Contradiction:
Improvedefect detection capabilityVSAvoidtesting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by using the graph attention network to identify varying degrees of relationships between different API entities. Instead of treating all APIs uniformly, the system analyzes and prioritizes relationships based on their specific connection strengths and importance. This allows the testing system to focus testing efforts on high-priority API relationships that are most critical for defect detection, thereby improving defect detection capability without proportionally increasing overall testing cost and complexity.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12198050B2Artificial intelligence driven identification of application programming interface relationships
Publication Date: 2025.01.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12198050B2 patent drawing
  • US12198050B2 patent drawing
  • US12198050B2 patent drawing

AI summary

A computer-implemented method, system, and computer program product for identifying application programming interface relationships of a product. Entity information for the product is generated. The entity information identifies a plurality of entities of the product, attributes of the entities, and relationships between the entities. The plurality of entities include application programming interfaces of the product and other entities of the product. The entity information is processed by a graph attention network to identify degrees of relationships between the application programming interfaces and the entities of the product.