Function Result Prediction via Historical Execution Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In software development, developers face inefficiencies when writing functions as they often do not know the exact output until runtime, leading to potential exceptions that are only identified at execution, increasing development time and requiring extensive testing for repeated functions.

Innovation Solution

A method and system that generate a log of previously executed functions and their responses, allowing for the identification of expected results by matching new function calls with historical functions, thereby predicting outcomes and reducing the need for extensive testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If developers execute functions at runtime to get results, then they can obtain actual execution output, but development time increases and exceptions are only identified at execution

Engineering Contradiction:
Improveaccuracy of result predictionVSAvoiddevelopment time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary action by executing functions before final deployment and storing their execution responses in a log. When a function is called during development, the system checks the log for historical execution results and provides them as predictions, eliminating the need for immediate runtime execution to see results.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of historical execution responses and uses them to predict outcomes of function calls. Instead of executing the same function multiple times to get results, the system replicates and reuses previously obtained execution responses, providing immediate feedback without actual re-execution.

Inventive Principle:
Principle #26Copying

2Reliability

If developers perform extensive testing to identify exceptions, then reliability of code increases, but productivity decreases

Engineering Contradiction:
Improvecode reliabilityVSAvoidfunction writing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements feedback by continuously logging execution responses and using them to predict outcomes of subsequent function calls. This immediate feedback loop allows developers to see expected results and potential exceptions before actual execution, reducing the need for extensive manual testing while maintaining code reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary testing and exception identification by analyzing historical execution responses before developers write new code. Potential exceptions and edge cases are identified in advance through log analysis, allowing developers to write more reliable code with less manual testing.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If developers manually test each function call, then they can verify expected results, but the process becomes time-consuming and repetitive

Engineering Contradiction:
Improveease of function writingVSAvoidtesting time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system provides self-service by automatically generating execution logs and using them to predict function call outcomes. Instead of requiring developers to manually test and verify each function call, the system serves itself by maintaining the log and providing predictions automatically, freeing developers from repetitive manual testing.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system copies historical execution responses and uses them to provide immediate predictions for new function calls. This eliminates the need for developers to manually recreate test scenarios and verify results, significantly reducing repetitive testing time while maintaining ease of function writing.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12072793B2Function result prediction
Publication Date: 2024.08.27 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12072793B2 patent drawing
  • US12072793B2 patent drawing
  • US12072793B2 patent drawing

AI summary

A computer-implemented method, system, and computer program product for writing and checking functions of a code file in interactive development environments. The method may include, responsive to determining the function matches a historical function in a log of previously executed functions and their corresponding execution responses, identifying the execution response corresponding to the matching historical function in the log. The method may also include determining an expected result of the function based on the identified execution response.