Phased Mainframe Code Conversion with Rule Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Converting code from one type to another on mainframe devices is challenging due to the risk of generating coding errors, leading to extended unavailability and resource wastage in correcting these errors.

Innovation Solution

A method and system that convert code in phases from a first code type to a second code type, involving deconstruction, wrapper generation, and validation to minimize errors and conserve resources, allowing for incremental conversion before replacing the mainframe device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If code conversion is performed in phases from first code type to second code type, then coding errors are minimized and resource wastage is reduced, but conversion complexity and processing time increase

Engineering Contradiction:
Improvecode conversion reliabilityVSAvoidconversion process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The code conversion process is divided into multiple phases, where each phase converts a subset of code from the first code type to the second code type. This segmentation allows for incremental validation and error detection, improving reliability while managing complexity through structured progression.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Before full conversion, the system performs preliminary analysis of the code structure, data types, and dependencies. This preliminary action identifies potential conversion issues early, allowing for proactive error prevention and reducing overall conversion complexity.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If comprehensive validation rules are applied during code conversion, then coding errors are detected early, but processing time and computational resources increase

Engineering Contradiction:
Improvecode conversion precisionVSAvoidconversion processing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The validation process applies rules selectively based on the conversion phase and code criticality. Not all code segments undergo the same level of validation intensity, allowing for efficient error detection while minimizing unnecessary processing time for less critical conversions.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system continuously validates converted code against predefined rules and provides feedback for correction. This iterative feedback mechanism ensures high conversion precision by catching errors early, while the automated nature of the feedback loop minimizes manual intervention time.

Inventive Principle:
Principle #23Feedback

3Productivity

If the entire code base is converted at once, then conversion speed is maximized, but the risk of extended downtime and resource wastage increases

Engineering Contradiction:
Improvecode conversion speedVSAvoidsystem availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The codebase is segmented into convertible units that can be transformed independently. This allows parallel processing of multiple segments, maintaining high productivity while enabling rollback to previous versions if errors occur, thus preserving system availability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system maintains backup copies of the original code and implements validation checkpoints before full conversion. This cushioning approach prepares for potential conversion failures in advance, preventing extended downtime by enabling quick restoration if issues arise during conversion.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

4Manufacturing precision

If multiple validation rules are checked during conversion, then code quality is improved, but device resources are consumed for rule processing

Engineering Contradiction:
Improveconverted code qualityVSAvoidprocessing resource consumption
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

Different validation rules are applied to different portions of the code based on their specific characteristics and criticality. High-risk code segments receive more intensive validation, while lower-risk segments receive streamlined checking, optimizing resource consumption while maintaining code quality.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The validation process dynamically adjusts the stringency of rule checking based on conversion phase, code type, and detected complexity. This parameter adaptation allows the system to maintain high code quality while reducing resource consumption during less critical conversion stages.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10768901B2Converting code of a first code type on a mainframe device in phases to code of a second code type
Publication Date: 2020.09.08 ACCENTURE GLOBAL SOLUTIONS LTD
  • US10768901B2 patent drawing
  • US10768901B2 patent drawing
  • US10768901B2 patent drawing

AI summary

A device receives a first request indicating that a first portion of code of a first code type is to be converted to a first portion of code of a second code type. The device consolidates data structure access to a single point to retrieve rules associated with relevant data for further processing of the first request and accesses, from the data structure, the rules associated with the relevant data. The device validates the rules associated with the relevant data and the first request and performs, based on validating the rules, calculations associated with the relevant data and the first request to generate results. The device updates the results of the calculations associated with the relevant data and the first request to generate the first portion of code of the second code type and provides the first portion of code of the second code type.