Automated Porting Difficulty Assessment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Porting applications across different operating systems and hardware platforms is time-consuming and difficult due to the need for manual identification and verification of system-specific functions, with no effective automation available to streamline this process.

Innovation Solution

A computer-implemented method that constructs feature vectors for each function, classifies them into system function families, and identifies the most similar functions between source and target platforms, providing an assessment of porting difficulty and recommending candidate functions for mismatched or missing functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual identification and verification of system-specific functions is performed, then porting accuracy can be maintained, but porting time and complexity increase significantly

Engineering Contradiction:
Improveporting accuracyVSAvoidporting time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent replaces manual mechanical verification processes with automated computer-based function analysis. The system automatically compares source platform functions with target platform functions using computational algorithms, eliminating the need for manual review while maintaining accuracy in identifying equivalent functions and detecting mismatches.

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

Solution Approach 2:

The porting system performs self-verification by automatically analyzing function signatures, parameters, and return types to identify equivalent functions between platforms. The system independently detects mismatches and generates porting recommendations without requiring human intervention in the verification process.

Inventive Principle:
Principle #25Self-service

2Productivity

If automated function comparison is implemented, then porting speed increases, but system complexity increases

Engineering Contradiction:
Improveporting speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the complex porting assessment into distinct functional components: function signature analysis, parameter type comparison, return value verification, and equivalence determination. Each component handles a specific aspect of function comparison independently, making the overall complex system manageable through modular decomposition.

Inventive Principle:
Principle #1Segmentation

3Reliability

If manual configuration steps are required to meet hypervisor requirements, then system compatibility can be ensured, but porting effort and time increase

Engineering Contradiction:
Improvesystem compatibilityVSAvoidporting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary analysis of function requirements and compatibility constraints before the actual porting begins. The system pre-identifies potential compatibility issues, required configuration changes, and equivalent functions in advance, allowing porters to prepare configuration settings beforehand rather than performing tedious manual configuration steps during the porting process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11907711B2Fast porting of projects
Publication Date: 2024.02.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11907711B2 patent drawing
  • US11907711B2 patent drawing
  • US11907711B2 patent drawing

AI summary

Aspects of the invention include systems and methods configured to efficiently evaluate the efforts of a code migration (e.g., porting task) between different platforms. A non-limiting example computer-implemented method includes receiving a function of a source platform. The function can include a plurality of fields. An initial vector is constructed for each of the plurality of fields. The initial vector encodes a value of the respective field according to an encoding rule. The initial vectors are merged into a single final vector and the final vector is classified into one of a plurality of system function families of the source platform. A vector of a target platform at a minimum distance to the final vector is identified and an assessment is provided that includes a difficulty in porting a project comprising the function between the source platform and the target platform based at least in part on the minimum distance.