Business Rule Extraction from Legacy Source Code
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The transformation of legacy software applications to meet current business requirements is hindered by the computationally tedious and time-consuming process of extracting complex business rules from embedded source code, which involves tangled rule flows and conditional statements.
Innovation Solution
A method and system that perform control flow analysis to create a call structure, recognize parent and child programs, group conditional statements, and identify business rules by comparing them with pre-defined patterns and determining statements involving hard-coded values, mapping these statements to business rule templates for extraction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional manual methods are used to extract business rules from legacy source code, then extraction accuracy can be maintained, but the process becomes extremely time-consuming and labor-intensive
Solution Approach 1:
The patent replaces manual mechanical analysis of source code with an automated computer-based system that uses control flow analysis, pattern matching, and rule template comparison to extract business rules. This substitution of manual mechanical processes with automated computational methods dramatically reduces extraction time while maintaining accuracy through systematic analysis of conditional statements and program call structures.
Solution Approach 2:
The patent introduces intermediate structures including call structures that map program relationships, pattern libraries that represent common business rule constructs, and rule templates that serve as targets for matching. These intermediaries bridge the gap between raw source code and extracted business rules, enabling automated extraction while preserving accuracy through structured transformation steps.
2Extent of automation
If existing automated solutions are used to transform software applications, then some automation is achieved, but the business rule extraction process remains computationally tedious and time-consuming
Solution Approach 1:
The patent segments the source code analysis into distinct components: control flow analysis to build call structures, pattern identification to recognize business rule constructs, and template matching to extract specific rules. This segmentation allows each component to be optimized independently and processed efficiently, transforming the overall extraction process from computationally tedious to scalable and productive.
Solution Approach 2:
The patent performs preliminary control flow analysis to construct call structures and identify program relationships before the actual business rule extraction. It also pre-defines pattern libraries and rule templates in advance. These preliminary actions organize the code structure upfront, making the subsequent extraction process faster and more efficient rather than analyzing everything from scratch.
3Adaptability or versatility
If the application source code contains tangled rule flows with complex conditional statements, then the business logic becomes more comprehensive, but the extraction complexity increases significantly
Solution Approach 1:
The patent uses call structures as intermediary representations that simplify tangled rule flows. By transforming complex conditional statements into structured call relationships and matching them against predefined patterns, the system handles business logic complexity without proportionally increasing extraction process complexity. The intermediaries act as buffers that organize complexity in a manageable form.
Solution Approach 2:
The patent changes the representation parameters of business rules from raw conditional statements to standardized rule templates with defined parameters. This parameterization allows complex business logic to be expressed in a consistent format, reducing extraction complexity by applying uniform processing rules regardless of the underlying logical complexity.
Data Source
AI summary
Disclosed is a method and system for extracting a business rule embedded in an application source code. The method comprises creating a call structure of one or more programs present in the application source code by performing a control flow analysis on the application source code. The method further comprises recognizing one or more parent programs and one or more child programs for a parent program. The method further comprises grouping the parent program and the one or more child programs into a group. Also, the method comprises identifying one or more conditional statements. The one or more conditional statements comprise the business rule. The one or more conditional statements are identified by comparing the plurality of conditional statements with pre-defined patterns identified from the application source code, and determining a conditional statement comparing a variable with a hard-coded value. The method further comprises mapping the one or more conditional statements with the business rule.


