Source Code Scanning for Database Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database migration tools lack the ability to efficiently identify and revise mixed language applications accessing data in source and destination databases, as they require manual analysis of all source code files, which is impractical.

Innovation Solution

A framework and toolset for creating migration rules that filter and scan source code files to locate and automatically replace artifact expressions, using recognizer criteria and replacement rules tailored to specific database and language combinations, improving performance and accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If all source code files are manually analyzed to identify database calls, then completeness of identification is improved, but time consumption and complexity increase significantly

Engineering Contradiction:
Improvecompleteness of identificationVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the source code analysis by creating a subset of files that are likely to contain database calls, rather than analyzing all files. This is achieved through filtering mechanisms that divide the complete codebase into relevant and irrelevant portions, reducing analysis time while maintaining identification completeness for the critical subset.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary filtering layer between the complete source code and the analysis process. This intermediary component evaluates files against criteria to determine which ones should be scanned, acting as a mediator that reduces the workload of the main analysis engine while ensuring relevant files are not missed.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If all source code files are scanned to ensure no database calls are missed, then identification accuracy is improved, but processing speed deteriorates

Engineering Contradiction:
Improveidentification accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The source code base is segmented into a subset of files likely to contain database calls using filtering criteria. This segmentation allows the scanning process to focus only on relevant files, maintaining identification accuracy for database calls while dramatically improving processing speed by excluding irrelevant files from the scanning process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of scanning all files (excessive action), the patent applies partial action by scanning only the subset of files identified as likely to contain database calls. This partial scanning approach maintains sufficient identification accuracy for migration purposes while significantly reducing processing time and resource consumption.

Inventive Principle:
Principle #16Partial or excessive action

3Manufacturing precision

If manual revision of database calls is performed, then precision of revision is improved, but labor cost and time increase

Engineering Contradiction:
Improveprecision of revisionVSAvoidlabor cost
Core Design Contradiction:
Manufacturing precisionVSEase of manufacture

Solution Approach 1:

The patent implements self-service by enabling the system to automatically identify and revise database calls in source code files. The tool autonomously performs the revision process using identified migration rules, eliminating or reducing the need for manual human intervention while maintaining precision through systematic application of migration patterns.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent substitutes the mechanical manual process of reviewing and revising database calls with an automated computational system. This replacement uses algorithmic patterns and rules to automatically detect and revise database calls, reducing labor costs while maintaining or improving revision precision through consistent rule application.

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

Data Source

PatentUS9189504B2Application source code scanning for database migration
Publication Date: 2015.11.17 ORACLE INT CORP
  • US9189504B2 patent drawing
  • US9189504B2 patent drawing
  • US9189504B2 patent drawing

AI summary

Systems, methods, and other embodiments associated with application source code scanning for database migration are described. In one embodiment, a method includes identifying a subset of application source code files that are likely to require modification to access a destination database. The subset of application source code files is scanned for artifact expressions that access a source database and should be changed to access the destination database.