Abstract: The present invention relates to a method of pattern based service extraction from legacy application comprising defining service patterns, specifying the said patterns into a workbench to generate the pattern matcher, using said pattern matcher to identify services and marking the identified services.
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
COMPLETE SPECIFICATION
(See section 10; rule 13)
A SYSTEM AND METHOD FOR PATTERN BASED SERVICE EXTRACTION
Applicant : Tata Consultancy Services Ltd Nationality: An Indian company
Address: Air India Building„11th floor, Nariman
Point, Mumbai -400 021, Maharashtra, India
The following specification particularly describes and ascertains the nature of this invention and the manner in which it is to be performed.
FIELD OF THE INVENTION:
The present invention relates to a system and method for pattern based service extraction.
More particularly, the present invention relates to a system and method comprising Program Abstractions and automated extraction of Services based on service patterns from the legacy code.
PRIOR ART AND ITS LIMITATIONS
References:
EP1221090
US 6,550,054
US 6,578,195
US 6,687,873
US 6,847,981
US 0050154979
In EP1221090, the concept of a service is introduced. A service denotes collaboration between different software artifacts of the software architecture at varying levels of abstractions. This service concept provides the ability to trace identified services from one abstraction level to another within the software system, which supports the mapping of features to code and vice versa. According to a preferred embodiment, the method for describing software architecture comprises steps such as determining interfaces between software artifacts that make up the software architecture and structuring the determined interfaces into basic dialogues. The dialogues are recorded or written in formal definitions of each, and the purpose and usage of dialogues and interactions as services are documented. Each logical service is then mapped to each physical service used in its implementation, and a determination is made as to whether the mapping is simple enough. When the mapping is simple enough, it is formally
2
documented. Prior to the documentation of purpose and usage of the dialogues, a determination is made as to the interactions between applications within the system.
In US 6,550,054 a computer-implemented method is disclosed for automatically converting text-based screen applications of a legacy computer system into a graphical-based representation thereof. The method includes the steps of transforming a terminal-based screen application into an application specification; converting the application specification into a modeling language-based representation; and, displaying the modeling language-based representation with a graphical user interface. The method of this invention also includes the capability of generating document type definitions of the modeling language-based representation, which enables transmission of the representation among modeling tools.
In US 6,578,195 a method for data encapsulation in large scale legacy software code comprising the steps of: (a) generating a symbol table output from the legacy software code; (b) automatically scanning the symbol table to determine global variables therein; and (c) replacing the global variables with an object for use in one or more separate object instances.
In US 6,687,873 a method and system for modifying program applications of a legacy
computer system to directly output data in XML format models the legacy computer system, maps the model to an XML schema and automatically modifies one or more applications to directly output XML formatted data in cooperation with a writer engine and a context table. A modeling engine lists the incidents within the applications that write data and generates a report data model. The report data model includes statically determined value or type of the data fields and is written in a formal grammar that describes how the write operations are combined. A modification specification is created to define modifications to the legacy computer system applications that relate applications that write data to the XML schema. A code generation engine then applies the modification specification to the applications to write modified applications that, in cooperation with a writer engine and context table, directly output XML formatted data from the legacy computer system without a need for transforming the data.
3
In US 6,847,981 disclosed is a system and method for generating EJB components by extracting reusable business logic from servlet programs that is one of web program languages used in web-based applications. The system a servlet code analyzer that is a reverse engineering module for analyzing the existing servlet program source, a visualizer for visualizing the analyzed information, a business logic extractor for extracting a reusable business logic, and an EJB component generator for generating the EJB components using the extracted information. The servlet code analyzer considers the flexibility of coding permitted by the servlet program and the use of a multi-language, and the visualizer helps the understanding of the existing legacy program. The business logic extractor extracts the reusable module by extracting the business logic within many user interface related codes, and thus enable the reuse of software. The EJB component generator generates Java codes in a jar file that can be deployed.
In US 0050154979 a system and method that converts legacy and proprietary documents into extended mark-up language format which treats the conversion as transforming ordered trees of one schema and/or model into ordered trees of another schema and/or model. In embodiments, the tree transformers are coded using a learning method that decomposes the converting task into three components which include path re-labeling, structural composition and input tree traversal, each of which involves learning approaches. The transformation of an input tree into an output tree may involve labeling components in the input tree with valid labels or paths from a particular output schema, composing the labeled elements into the output tree with a valid structure, and finding such a traversal of the input tree that achieves the correct composition of the output tree and applies structural rules.
BACKGROUND OF THE INVENTION
The advancement in technologies is demanding a need for easy and effective development and maintenance of software applications. Easy integration options for software applications are a must for to-days distributed & collaborative environment. Legacy applications can also be re-architected to take benefits from the state of the art practices if they can be re-factored with ease.
4
In Legacy systems functionalities or activities are complex and intertwined. The present invention aims at re architecting them by segregating applications/ functionalities into services.
The present invention takes legacy applications towards service oriented architecture.
Legacy systems/applications 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, AS/400 programs written in RPG etc. 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.
The present invention splits the legacy systems into individual functionalities, each of which serves a specific purpose and interacts with each other to build the functionality of the original legacy system. The purpose could be either infrastructure related or business related.
It is the object of the invention to move from monolithic architecture to modem service oriented architecture.
It is yet another object of the invention to migrate legacy programs irrespective of the platforms.
It is the object of the present invention to formulate various service patterns.
5
Legacy applications typically follow conversational and/or pseudo conversational style of programming containing code that implements presentation layer logic and the business logic in the same program. These programs deal with multiple aspects of the architecture and pose challenges in maintenance such as identifying a problem or adding new feature, as this would be more expensive and a time consuming exercise.
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. It eliminates the task of manual functioning thus facilitating simplicity and saves time. It is a very cost effective measure
SUMMARY OF THE INVENTION
The invention is directed to a system and method of evolving service patterns for extracting services and converting an existing business system, typically a legacy application/program, to a new and more modem system, on the same or new platforms.
The inventive step involved is a system of defining a new program abstraction (Service abstraction) and method to extract Services from the Legacy code in an automated way based on predetermined patterns. The present invention employs a metatool Pro-AX (Programmable Analysis & Transformation workbench) for automation.
. In the present invention the extracted services form a basis for re-factoring the code utilizing modern design patterns, which can either be used for the transformation of the code into new language or re-engineer the code in the same language for better maintenance.
The present invention is preferably applicable to business applications having user interface.
6
ADVANTAGES
1. It facilitates extraction and abstraction suitable for any platform.
2. It is a very effective tool in modern business.
3. It involves establishment of service patterns that can be changed with changing times to suit the application.
4. It saves manpower and cost.
5. It is a very intellectual tool that brings about effective and efficient results.
6. The service patterns are specified and not programmed.
Dated this 12in day of April, 2006
7
Anand Deshpande (Agent For Applicant)
| Section | Controller | Decision Date |
|---|---|---|
| # | Name | Date |
|---|---|---|
| 1 | 654-MUM-2006-ABSTRACT(2-6-2015).pdf | 2018-08-09 |
| 1 | 654-MUM-2006_EXAMREPORT.pdf | 2018-08-09 |
| 2 | 654-MUM-2006-CLAIMS(26-4-2007).pdf | 2018-08-09 |
| 2 | 654-MUM-2006-SPECIFICATION(AMENDED)-(2-6-2015).pdf | 2018-08-09 |
| 3 | 654-MUM-2006-REPLY TO HEARING(2-6-2015).pdf | 2018-08-09 |
| 3 | 654-MUM-2006-CLAIMS(AMENDED)-(2-6-2015).pdf | 2018-08-09 |
| 4 | 654-MUM-2006-REPLY TO EXAMINATION REPORT(3-6-2013).pdf | 2018-08-09 |
| 4 | 654-MUM-2006-CLAIMS(MARKED COPY)-(3-6-2013).pdf | 2018-08-09 |
| 5 | 654-MUM-2006-POWER OF ATTORNEY(25-3-2008).pdf | 2018-08-09 |
| 5 | 654-MUM-2006-CORRESPNDENCE(15-4-2010).pdf | 2018-08-09 |
| 6 | 654-MUM-2006-PETITION UNDER RULE-137(3-6-2013).pdf | 2018-08-09 |
| 6 | 654-mum-2006-correspondance-received.pdf | 2018-08-09 |
| 7 | 654-MUM-2006-OTHER DOCUMENT(3-6-2013).pdf | 2018-08-09 |
| 7 | 654-MUM-2006-CORRESPONDENCE 1(27-4-2009).pdf | 2018-08-09 |
| 8 | 654-MUM-2006-OTHER DOCUMENT(2-6-2015).pdf | 2018-08-09 |
| 8 | 654-MUM-2006-CORRESPONDENCE(10-6-2014).pdf | 2018-08-09 |
| 9 | 654-MUM-2006-CORRESPONDENCE(25-4-2006).pdf | 2018-08-09 |
| 9 | 654-MUM-2006-MARKED COPY(2-6-2015).pdf | 2018-08-09 |
| 10 | 654-MUM-2006-CORRESPONDENCE(27-4-2009).pdf | 2018-08-09 |
| 10 | 654-mum-2006-form-2.pdf | 2018-08-09 |
| 11 | 654-MUM-2006-CORRESPONDENCE(27-7-2009).pdf | 2018-08-09 |
| 12 | 654-MUM-2006-CORRESPONDENCE(6-8-2009).pdf | 2018-08-09 |
| 12 | 654-mum-2006-form-1.pdf | 2018-08-09 |
| 13 | 654-MUM-2006-CORRESPONDENCE(IPO)-(DECISION)-(26-1-2016).pdf | 2018-08-09 |
| 13 | 654-MUM-2006-FORM 5(8-5-2008).pdf | 2018-08-09 |
| 14 | 654-MUM-2006-CORRESPONDENCE(IPO)-(FER)-(22-8-2012).pdf | 2018-08-09 |
| 14 | 654-MUM-2006-FORM 3(3-6-2013).pdf | 2018-08-09 |
| 15 | 654-MUM-2006-CORRESPONDENCE(IPO)-(FER)-(3-6-2013).pdf | 2018-08-09 |
| 15 | 654-MUM-2006-FORM 3(27-7-2009).pdf | 2018-08-09 |
| 16 | 654-MUM-2006-CORRESPONDENCE(IPO)-(HEARING NOTICE)-(10-6-204).pdf | 2018-08-09 |
| 16 | 654-MUM-2006-FORM 3(2-6-2015).pdf | 2018-08-09 |
| 17 | 654-MUM-2006-FORM 3(15-4-2010).pdf | 2018-08-09 |
| 17 | 654-MUM-2006-CORRESPONDENCE(IPO)-(HEARING NOTICE)-(4-6-204).pdf | 2018-08-09 |
| 18 | 654-MUM-2006-FORM 26(6-8-2009).pdf | 2018-08-09 |
| 18 | 654-mum-2006-description (complete).pdf | 2018-08-09 |
| 19 | 654-MUM-2006-DESCRIPTION(COMPLETE)-(26-4-2007).pdf | 2018-08-09 |
| 19 | 654-MUM-2006-FORM 2(TITLE PAGE)-(PROVISIONAL)-(25-4-2006).pdf | 2018-08-09 |
| 20 | 654-MUM-2006-DESCRIPTION(PROVISIONAL)-(25-4-2006).pdf | 2018-08-09 |
| 20 | 654-MUM-2006-FORM 2(TITLE PAGE)-(COMPLETE)-(26-4-2007).pdf | 2018-08-09 |
| 21 | 654-MUM-2006-DRAWING(26-4-2007).pdf | 2018-08-09 |
| 21 | 654-MUM-2006-FORM 2(PROVISIONAL)-(25-4-2006).pdf | 2018-08-09 |
| 22 | 654-MUM-2006-FORM 1(26-4-2007).pdf | 2018-08-09 |
| 22 | 654-MUM-2006-FORM 2(COMPLETE)-(26-4-2007).pdf | 2018-08-09 |
| 23 | 654-MUM-2006-FORM 1(3-6-2013).pdf | 2018-08-09 |
| 23 | 654-MUM-2006-FORM 18(8-5-2008).pdf | 2018-08-09 |
| 24 | 654-MUM-2006-FORM 13(8-5-2008).pdf | 2018-08-09 |
| 24 | 654-MUM-2006-FORM 13(8-5-2008)-1.pdf | 2018-08-09 |
| 25 | 654-MUM-2006-FORM 13(8-5-2008)-1.pdf | 2018-08-09 |
| 25 | 654-MUM-2006-FORM 13(8-5-2008).pdf | 2018-08-09 |
| 26 | 654-MUM-2006-FORM 1(3-6-2013).pdf | 2018-08-09 |
| 26 | 654-MUM-2006-FORM 18(8-5-2008).pdf | 2018-08-09 |
| 27 | 654-MUM-2006-FORM 1(26-4-2007).pdf | 2018-08-09 |
| 27 | 654-MUM-2006-FORM 2(COMPLETE)-(26-4-2007).pdf | 2018-08-09 |
| 28 | 654-MUM-2006-DRAWING(26-4-2007).pdf | 2018-08-09 |
| 28 | 654-MUM-2006-FORM 2(PROVISIONAL)-(25-4-2006).pdf | 2018-08-09 |
| 29 | 654-MUM-2006-DESCRIPTION(PROVISIONAL)-(25-4-2006).pdf | 2018-08-09 |
| 29 | 654-MUM-2006-FORM 2(TITLE PAGE)-(COMPLETE)-(26-4-2007).pdf | 2018-08-09 |
| 30 | 654-MUM-2006-DESCRIPTION(COMPLETE)-(26-4-2007).pdf | 2018-08-09 |
| 30 | 654-MUM-2006-FORM 2(TITLE PAGE)-(PROVISIONAL)-(25-4-2006).pdf | 2018-08-09 |
| 31 | 654-mum-2006-description (complete).pdf | 2018-08-09 |
| 31 | 654-MUM-2006-FORM 26(6-8-2009).pdf | 2018-08-09 |
| 32 | 654-MUM-2006-CORRESPONDENCE(IPO)-(HEARING NOTICE)-(4-6-204).pdf | 2018-08-09 |
| 32 | 654-MUM-2006-FORM 3(15-4-2010).pdf | 2018-08-09 |
| 33 | 654-MUM-2006-CORRESPONDENCE(IPO)-(HEARING NOTICE)-(10-6-204).pdf | 2018-08-09 |
| 33 | 654-MUM-2006-FORM 3(2-6-2015).pdf | 2018-08-09 |
| 34 | 654-MUM-2006-CORRESPONDENCE(IPO)-(FER)-(3-6-2013).pdf | 2018-08-09 |
| 34 | 654-MUM-2006-FORM 3(27-7-2009).pdf | 2018-08-09 |
| 35 | 654-MUM-2006-CORRESPONDENCE(IPO)-(FER)-(22-8-2012).pdf | 2018-08-09 |
| 35 | 654-MUM-2006-FORM 3(3-6-2013).pdf | 2018-08-09 |
| 36 | 654-MUM-2006-FORM 5(8-5-2008).pdf | 2018-08-09 |
| 36 | 654-MUM-2006-CORRESPONDENCE(IPO)-(DECISION)-(26-1-2016).pdf | 2018-08-09 |
| 37 | 654-MUM-2006-CORRESPONDENCE(6-8-2009).pdf | 2018-08-09 |
| 37 | 654-mum-2006-form-1.pdf | 2018-08-09 |
| 38 | 654-MUM-2006-CORRESPONDENCE(27-7-2009).pdf | 2018-08-09 |
| 39 | 654-MUM-2006-CORRESPONDENCE(27-4-2009).pdf | 2018-08-09 |
| 39 | 654-mum-2006-form-2.pdf | 2018-08-09 |
| 40 | 654-MUM-2006-CORRESPONDENCE(25-4-2006).pdf | 2018-08-09 |
| 40 | 654-MUM-2006-MARKED COPY(2-6-2015).pdf | 2018-08-09 |
| 41 | 654-MUM-2006-CORRESPONDENCE(10-6-2014).pdf | 2018-08-09 |
| 41 | 654-MUM-2006-OTHER DOCUMENT(2-6-2015).pdf | 2018-08-09 |
| 42 | 654-MUM-2006-CORRESPONDENCE 1(27-4-2009).pdf | 2018-08-09 |
| 42 | 654-MUM-2006-OTHER DOCUMENT(3-6-2013).pdf | 2018-08-09 |
| 43 | 654-MUM-2006-PETITION UNDER RULE-137(3-6-2013).pdf | 2018-08-09 |
| 43 | 654-mum-2006-correspondance-received.pdf | 2018-08-09 |
| 44 | 654-MUM-2006-POWER OF ATTORNEY(25-3-2008).pdf | 2018-08-09 |
| 44 | 654-MUM-2006-CORRESPNDENCE(15-4-2010).pdf | 2018-08-09 |
| 45 | 654-MUM-2006-REPLY TO EXAMINATION REPORT(3-6-2013).pdf | 2018-08-09 |
| 45 | 654-MUM-2006-CLAIMS(MARKED COPY)-(3-6-2013).pdf | 2018-08-09 |
| 46 | 654-MUM-2006-REPLY TO HEARING(2-6-2015).pdf | 2018-08-09 |
| 46 | 654-MUM-2006-CLAIMS(AMENDED)-(2-6-2015).pdf | 2018-08-09 |
| 47 | 654-MUM-2006-SPECIFICATION(AMENDED)-(2-6-2015).pdf | 2018-08-09 |
| 47 | 654-MUM-2006-CLAIMS(26-4-2007).pdf | 2018-08-09 |
| 48 | 654-MUM-2006-ABSTRACT(2-6-2015).pdf | 2018-08-09 |
| 48 | 654-MUM-2006_EXAMREPORT.pdf | 2018-08-09 |