1. A computer-implemented method for extracting and abstracting knowledge embedded in source code of an application, the method comprising: receiving the source code in a programming language; extracting a plurality of knowledge elements from the source code based on predefined patterns; responsive to no predefined pattern matching a part of the source code, creating a dynamic pattern using fuzzy-neural rules and dynamic rules and determining whether to store the dynamic pattern in a store; determining knowledge attributes for the extracted knowledge elements by extracting keywords and descriptions from the source code; classifying each of the extracted knowledge elements into one of a data entity, a variable, and a business rule, using classification patterns and associated knowledge attributes, wherein each of the classification patterns comprises a predefined pattern or a dynamic pattern; generating an abstract representation of the source code in a standard format independent of the programming language of the source code, wherein the abstract representation includes the plurality of knowledge elements; and identifying the plurality of knowledge elements with associated knowledge attributes in the abstract representation.
1. A computer-implemented method for extracting and abstracting knowledge embedded in source code of an application, the method comprising: receiving the source code in a programming language; extracting a plurality of knowledge elements from the source code based on predefined patterns; responsive to no predefined pattern matching a part of the source code, creating a dynamic pattern using fuzzy-neural rules and dynamic rules and determining whether to store the dynamic pattern in a store; determining knowledge attributes for the extracted knowledge elements by extracting keywords and descriptions from the source code; classifying each of the extracted knowledge elements into one of a data entity, a variable, and a business rule, using classification patterns and associated knowledge attributes, wherein each of the classification patterns comprises a predefined pattern or a dynamic pattern; generating an abstract representation of the source code in a standard format independent of the programming language of the source code, wherein the abstract representation includes the plurality of knowledge elements; and identifying the plurality of knowledge elements with associated knowledge attributes in the abstract representation. 8. The method of claim 1 , wherein the abstract representation is an output data stream in a XML format.