Cloud API Recommendation Engine for Automated Quality Assessment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developers face difficulty in selecting the appropriate web API from thousands of available options due to the complexity of determining the quality and performance of each API, especially when integrating automated test processes.

Innovation Solution

A cloud computing service retrieves test source code, identifies calls to specific web APIs, extracts usage information from log files, and recommends higher-quality APIs based on aggregated quality metrics, providing real-time recommendations to developers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If developers manually evaluate each web API from thousands of options, then they can select the most suitable API, but the time and effort required increases significantly

Engineering Contradiction:
ImproveAPI quality assessmentVSAvoidAPI selection time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system enables self-service by automatically evaluating APIs through log file analysis and quality metric computation, allowing the system to serve itself in identifying suitable APIs without manual developer intervention for each evaluation

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms by analyzing runtime log data from actual API usage, continuously improving quality assessments based on real-world performance data and feeding this information back to developers through automated recommendations

Inventive Principle:
Principle #23Feedback

2Measurement precision

If developers analyze comprehensive quality metrics for each API, then selection accuracy improves, but the complexity of the evaluation process increases

Engineering Contradiction:
ImproveAPI quality measurementVSAvoidevaluation system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system extracts only the essential quality metrics from comprehensive log data that are most relevant to API evaluation, separating critical performance indicators from unnecessary detailed information to maintain measurement precision while reducing complexity

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The evaluation system is designed to be universal by handling multiple API types and formats through a standardized quality assessment framework, enabling the same system to evaluate diverse APIs without requiring separate complex evaluation processes for each

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

3Reliability

If the system analyzes log files from multiple applications, then the quality assessment becomes more reliable, but the data processing time increases

Engineering Contradiction:
Improvequality assessment reliabilityVSAvoiddata processing duration
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The system performs preliminary actions by pre-processing and indexing log data as it is generated, organizing information in advance to enable faster aggregation and analysis when quality assessments are requested, reducing the processing time for comprehensive multi-application analysis

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10360087B2Web API recommendations based on usage in cloud-provided runtimes
Publication Date: 2019.07.23 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10360087B2 patent drawing
  • US10360087B2 patent drawing
  • US10360087B2 patent drawing

AI summary

A method for recommending a web application programming interface (API) includes: a cloud computing service retrieving test source code from a remote computer of the developer; the cloud computing service determining whether a call to a first web API among a plurality of web APIs is present in the test source code; and when it is determined that the call is present, the cloud computing service reading at least one log file to extract information about at least one application that has used the first web API; the cloud computing service determining a first quality of the first web API from the log file; and the cloud computing service sending a message to the remote computer recommending a second web API among the web APIs having a second quality higher than the first quality.