Method and system of business rule extraction from existing...

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S152000

Reexamination Certificate

active

06389588

ABSTRACT:

CROSS REFERENCE TO RELATED APPLICATIONS
This application is related to copending application (Attorney Docket No. 37229/186694) entitled “Method And System For Recreating A User Interface Of An Existing Application Text Based User Interface Into A Graphical User Interface”, which was concurrently filed with this application.
FIELD OF THE INVENTION
The invention relates to a method and system for extracting and transforming business knowledge from existing applications to new applications to be deployed on the same and/or new platforms.
BACKGROUND OF THE INVENTION
Legacy systems are software applications that have been written some time ago and which do not conform or are not usable on new or modern software platforms. For example, a legacy system or application is any system or application implemented and used by a company for a number of years and which became an integral part of running the business. More specifically, it is a system which persists in use over a large turnover of managers of the system. Such systems or programs run fine, but each new manager has less knowledge of the system or program as time progresses. Examples of such legacy systems include mainframe programs written in COBOL, PL/I, and C. Such programs typically contain a great deal of business knowledge. It is often desirable to extract the business knowledge for implementation into a new application on more modern platforms. Examples of such modern platforms are Java, C++, or Visual Basic.
For purposes of the invention, a “business rule” is a self contained section of legacy code that is focused on the computation of a specific business policy expressed by a computation of value of a single or group of variables or, alternatively, by establishing an outcome of a specific business decision. Typical examples of such business rules include calculation of a bond's yield to maturity, determination of employment status, approval of loan eligibility or fulfillment of graduation requirements. Business rules can be described or defined at different levels, with a business rule often being composed of multiple business rules where it may become desirable to extract a higher level business rule, or one of the lower level business rules of a multiple number of business rules making up the higher level business rule. For example, a higher level business rule may be a subroutine that a banking system uses to qualify a user and determine a customer's mortgage. Such a higher level business rule can include lower level business rules such as the analysis done to determine whether: (1) the customer qualifies; (2) the availability of second mortgages; (3) determining whether based on customer data the customer merits a premium account; and/or (4) what is the best mortgage for the customer based on customer data. Thus, based on this description, it would be readily apparent to those of ordinary skill in the art what is intended by the term “business rule” as used herein.
It is well known that such business rules in legacy applications can be scattered throughout the entire program, and are most likely mixed in with other pieces of program logic. Further, under a typical legacy system, the mission critical business logic, or “business rules” therein are neither well documented nor easy to understand. The process of rediscovery is typically painful and costly, and once the legacy application, e.g., COBOL-based, “business rule” is isolated, the conversion of monolithic procedural code into a modern program language such as Java and the like must be dealt with in a manner which results in understandable hierarchies.
Thus, in implementing “business rules” from legacy applications in modern programs and platforms, the business rule must first be identified. One example of such an identification involves the end user of a COBOL program. Such an end user knows that the COBOL program does a value calculation that kicks off a sales process. Specifically, the program determines how often customers should be called based on the specific set of product lines they own. No one knows the basis on which the calculation is made. This may be identified as a “sales call rule” and is thus an ideal candidate for extraction as its own modular object. In accordance with the necessary steps to be taken to find and extract such a business rule, the rule in the legacy source code must be located and extracted as a self contained routine. If the legacy code is well structured, the extraction of a business rule may be as simple as “cut and paste”. However, most legacy code presents a number of challenges because such a rule can be scattered, for example, in a program of approximately 4,000 lines of code or more.
Thus, in accordance with the invention, the problems of meticulous and burdensome searching through legacy code to identify and extract a business rule for implementation on modern platforms and in modern applications is avoided in accordance with the method and system of the invention.
SUMMARY OF THE INVENTION
The invention is directed to a method of extracting and transforming a business rule from an existing program, typically a legacy application, to a new and more modern application, existing on the same or new platforms. For example, an existing application based on COBOL, PL/I, or C is transformed into a new application based on the same language or new application based on Java, C++, or Visual Basic. The method includes the steps of identifying the business rule. Thereafter, the business rule code in the existing program is located and extracted in human readable code form, for example, source code, from the business rule code in the existing program. New code is generated for the new application, which contains the business rule therein. For example, such code can be generated by a translator or a code generator, which is conventional and well known to those of ordinary skill in the art. Thereafter, the code containing the business rule, which has been newly generated is integrated into the new application for implementing the business rule as part of the new application. Programs for conducting such integration of code are also conventional and well known to those of ordinary skill in the art. For example, such code can be integrated by a compiler, which is conventional and well known to those of ordinary skill in the art.
In a more specific aspect, the business rule code is located in the existing program through the use of a graphical editor such as those that are readily commercially available. The business rule code is identified and located by identifying the business rule's point of origin and/or the boundaries in the existing program using the graphical editor. More specifically, for purposes of this disclosure, “point of origin” are places in the program where the business rule originates. For example, such points in the program is where the data goes into and out of the program. Boundaries define which portions of the program functionality to exclude from the business rule. Thus, with the graphical editor, a user can point to a variable in a place in the program and specify at what point to extract the code after analysis of the code.
For purposes of this disclosure, a typical graphical editor which can be used is the graphical editor program sold under the name Hyperview™ by Relativity Technologies of Cary, North Carolina as part of its RescueWare™ software offering. While specific reference to product tools has been made, implementation of the invention is not limited to those tools. Any conventional tool developed, or easily developed, for example, a syntax based editor can be used in place of the noted tool. For purposes herein, a syntax based editor is an editor that recognizes particular syntax constructs of a language. For example, such an editor may display an outline of the program or it may colorize verbs and variables in different colors. Another example of such a tool is one marketed and made available under the name Visual Developer Studio
97
™, available commercially from M

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system of business rule extraction from existing... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system of business rule extraction from existing..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system of business rule extraction from existing... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2845229

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.