Code Object Transformation for ERP System Upgrades

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge lies in efficiently upgrading customized software applications, particularly ERP systems like SAP, from a source installation to a target installation without requiring extensive manual rewriting of code objects, as custom code often becomes incompatible due to changes in naming conventions, features, or structural changes in the underlying system.

Innovation Solution

The system automatically identifies and transforms customized code objects by constructing a meta-model based on associations between code objects, applying transformation rules to ensure compatibility and functionality in the target installation, and simultaneously transforms reporting and view database schema to maintain functionality and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual rewriting of code objects is performed during system upgrade, then compatibility with the new version is achieved, but time consumption and cost increase significantly

Engineering Contradiction:
ImprovecompatibilityVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system creates a copy of the source installation's code objects and automatically transforms them to be compatible with the target installation. The transformation system generates transformed code objects that replicate the functionality of source code objects while adapting to the new version's naming conventions, features, and structural changes, thereby avoiding manual rewriting.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The transformation system modifies parameters of code objects such as naming conventions, data types, and structural attributes to align with the target installation's requirements. By systematically changing these parameters, the system ensures compatibility without requiring manual rewriting of the entire codebase.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If manual rewriting of code objects is performed during system upgrade, then compatibility with the new version is achieved, but cost increases significantly

Engineering Contradiction:
ImprovecompatibilityVSAvoidcost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system creates a copy of the source installation's code objects and automatically transforms them to be compatible with the target installation. The transformation system generates transformed code objects that replicate the functionality of source code objects while adapting to the new version's naming conventions, features, and structural changes, thereby avoiding manual rewriting.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The transformation system performs self-service by automatically analyzing source code objects, generating transformation rules, and producing transformed code objects without requiring manual intervention. This automation eliminates the need for expensive manual rewriting services while maintaining compatibility.

Inventive Principle:
Principle #25Self-service

3Loss of time

If automated transformation of code objects is implemented, then time and cost are reduced, but system complexity increases

Engineering Contradiction:
Improvetime consumptionVSAvoidsystem complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The transformation system is segmented into distinct functional modules: source installation analysis, transformation rule generation, code object transformation, and target installation validation. Each module handles a specific aspect of the transformation process, making the overall complex task manageable and systematic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces a transformation system as an intermediary between the source installation and target installation. This intermediary component automatically handles the complexity of code object transformation by analyzing source objects, generating appropriate transformation rules, and producing compatible target objects, thereby shielding users from the underlying complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If code objects are transformed automatically, then compatibility is maintained, but ensuring functionality and correctness becomes more challenging

Engineering Contradiction:
ImprovecompatibilityVSAvoidfunctionality and correctness
Core Design Contradiction:
ReliabilityVSManufacturing precision

Solution Approach 1:

The transformation system incorporates feedback mechanisms that validate transformed code objects against the target installation's requirements. The system analyzes transformed objects to ensure they maintain expected functionality and correctness, providing feedback loops that verify transformation accuracy and allow for corrective actions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary analysis of source code objects before transformation to understand their structure, functionality, and dependencies. This preliminary action enables the system to generate more accurate transformation rules and produces transformed objects that are more likely to be functionally correct, reducing the need for post-transformation validation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240211232A1Systems and methods for entry point-based code analysis and transformation
Publication Date: 2024.06.27 SMARTSHIFT TECHNOLOGIES INC
  • US20240211232A1 patent drawing
  • US20240211232A1 patent drawing
  • US20240211232A1 patent drawing

AI summary

The present application is directed towards systems and methods for identifying and grouping code objects into functional areas with boundaries crossed by entry points. An analysis agent may select a first functional area of a source installation of an application to be transformed to a target installation of the application from a plurality of functional areas of the source installation, each functional area comprising a plurality of associated code objects; and identify a first subset of the plurality of associated code objects of the first functional area having associations only to other code objects of the first functional area, and a second subset of the plurality of associated code objects of the first functional area having associations to code objects in additional functional areas, the second subset comprising entry points of the first functional area.