User-interactive system and method for integrating applications
First Claim
1. A system for integrating software applications in an enterprise system, the software applications having incompatible programming interfaces, the system comprising:
- a configuration system constructed and arranged to retrieve a name space for a source software application in the enterprise system, said source software application having a programming interface, and a name space for a destination software application in the enterprise system that has a second programming interface that is incompatible with said first programming interface, wherein said configuration system displays said name spaces on a display device to enable a user to define data unit mappings by associating graphically data units of the source software application with data units of the destination software application and to specify conditions under which said specified data units are transferred from source application addresses to user-associated destination application addresses, wherein said associations of said data units are stored in a configuration repository; and
a data server configured to access said configuration repository to transfer automatically said data units between said source addresses and said associated destination addresses in accordance with said specified conditions.
6 Assignments
0 Petitions
Accused Products
Abstract
An application integrator that provides a user-interactive environment for integrating software applications having incompatible programming interfaces, such as production control and business enterprise systems. The application integrator generally comprises a configuration system that provides a user with a view of the software applications'"'"' name space and graphically represents user-determined associations between data units from each of the software applications. The graphical association represents a user-defined programmed interface, identifying which data units of the software applications to transfer and under what circumstances such transfers should occur. This information is stored by the configuration system in a configuration repository. A data server contains two distributed communication objects, each of which interfaces with a corresponding software application, and a mapping engine. The mapping automatically transfer data units between the two software applications in a transaction-oriented manner and in accordance with the user'"'"'s preferences as specified in the configuration repository.
143 Citations
23 Claims
-
1. A system for integrating software applications in an enterprise system, the software applications having incompatible programming interfaces, the system comprising:
-
a configuration system constructed and arranged to retrieve a name space for a source software application in the enterprise system, said source software application having a programming interface, and a name space for a destination software application in the enterprise system that has a second programming interface that is incompatible with said first programming interface, wherein said configuration system displays said name spaces on a display device to enable a user to define data unit mappings by associating graphically data units of the source software application with data units of the destination software application and to specify conditions under which said specified data units are transferred from source application addresses to user-associated destination application addresses, wherein said associations of said data units are stored in a configuration repository; and
a data server configured to access said configuration repository to transfer automatically said data units between said source addresses and said associated destination addresses in accordance with said specified conditions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16)
a configuration tool for providing the user access to the name-space of the source software application comprising said data units stored in said source addresses and a name-space of the destination software application comprising said data units stored in said destination addresses.
-
-
4. The application integrator of claim 3, wherein said configuration system further comprises:
a configuration repository for storing one or more configured methods each said one or more configured methods comprising one or more of said data unit mappings and trigger criteria defining conditions under which one or more of said data units are transferred from the source to destination application program in accordance with said one or more data unit mappings.
-
5. The application integrator of claim 4, wherein said source software application program is a production control software program and said destination software application program is a business enterprise system application program in the enterprise system.
-
6. The application integrator of claim 4, wherein said configuration tool comprises:
-
a second source communication object configured to obtain said name-space of the source software application; and
a second destination communication object configured to obtain said name-space of the destination software application.
-
-
7. The application integrator of claim 4, wherein said trigger criteria comprises system-specific trigger criteria.
-
8. The application integrator of claim 6, wherein said first and second communication objects specify system-specific access parameters required to communicate with the associated software application.
-
11. The application integrator of claim 1, wherein said data server comprises:
-
a source communication object configured to interface with the source software application;
a destination communication object configured to interface with the destination software application; and
a mapping engine, interposed between said source and destination communication objects, for automatically transferring said associated data units from the source communication object to the destination communication object in accordance with said data unit mappings.
-
-
12. The application integrator of claim 11, wherein said mapping engine implements transaction-oriented techniques to transfer said associated data units from the source software application to the destination software application.
-
13. The application integrator of claim 11, wherein said source and destination communication objects, are distributed communication objects.
-
14. The application integrator of claim 11, wherein said mapping engine transfers the data units from a source to destination address by transferring a single address/value pair from the source communication object to the destination communication object, said mapping engine transforming said transferred data units in accordance with the destination application.
-
15. The application integrator of claim 11, wherein said mapping engine transfers an address/value pair between said source and destination communication objects.
-
16. The application integrator of claim 15, wherein said address/value pair is encoded in a neutral format, and wherein said source and destination communication objects convert the data units between the data format of the associated software application and the said neutral format.
-
9. An application integrator for integrating a source software application and a destination software application comprising:
-
a configuration system for generating one or more data unit mappings, each said mapping representing an association between a source address of a data unit utilized by the source software application and a destination address of a data unit utilized by the destination software application, wherein the configuration system retrieves a name space for the source software application, and a name space for the destination software application, wherein said configuration system displays said name spaces on a display device to enable a user to define data unit mappings by graphically associating data units of the source software application with data units of the destination software application and to specify conditions under which said specified data units are transferred from source application addresses to user-associated destination application addresses; and
a data server for automatically transferring said data units from the source software application to the destination software application in accordance with said specified conditions. - View Dependent Claims (10)
a core component for graphically representing said source and destination name-spaces and said data unit associations on the display device.
-
-
17. A method for integrating software applications in an enterprise system, comprising the steps of:
-
(a) retrieving a name space for a source software application in the enterprise system, said source software application having a programming interface;
(b) retrieving a name space for a destination software application in the enterprise system that has a second programming interface that is incompatible with said first programming interface;
(c) displaying on a display device said name spaces;
(d) receiving data unit mappings in response to the user graphically associating data units of the source software application with data units of the destination software application on the display device;
(e) receiving user display inputs that specify trigger criteria the occurrence of which is to cause said specified data units to be transferred from said source application addresses to said destination application addresses; and
(f) generating a configured method containing said user-specified data unit mappings; and
(g) transferring said data units of said configured method from the source software application to the destination software application in accordance with said data unit mappings upon the occurrence of said user-specified trigger criteria. - View Dependent Claims (18, 19, 20)
(1) saving said configured method in a configuration repository;
(2) reading said configuration method by a data server coupled to said configuration repository; and
(3) requesting, by the data server, an appropriate communication object to monitor for an occurrence of said trigger criteria.
-
-
19. The method of claim 18, wherein said step (g) further comprises the steps of:
-
(4) detecting an occurrence of said trigger criteria by said communication object;
(5) retrieving from the source communication object current data values of said configured method'"'"'s specified source addresses;
(6) passing said source address and said data unit in a neutral format to said mapping engine as an address-value pair;
(7) retrieving said associated destination address for said data unit;
(8) creating a new list of address-value pairs, with said address being said destination address and the value still expressed in the same neutral format;
(9) sending the new list of address-value pairs to the destination communication object;
(10) converting said values to a format appropriate for the destination software application; and
(11) writing the result to the specified destination addresses in the destination software application.
-
-
20. The method of claim 19, wherein said step (b) further comprises the step of:
(12) before said step (6), translating a format of said retrieved data values to a predetermined neutral format.
-
21. A system for enabling a user to generate a user-defined programming interface for integrating software applications in an enterprise system, the software applications having incompatible programming interfaces, the system constructed and arranged to retrieve a name space for a source software application in the enterprise system, said source software application having a programming interface, and a name space for a destination software application in the enterprise system that has a second programming interface that is incompatible with said first programming interface, wherein said name spaces are displayed on a display device to enable a user to associate graphically data units of the source software application with data units of the destination software application and to specify conditions under which said specified data units are transferred from source application addresses to user-associated destination application addresses, wherein said associations of said data units are stored in a configuration repository.
-
22. A system for enabling a user to generate a user-defined programming interface for integrating software applications in an enterprise system, the software applications having incompatible programming interfaces, the system comprising:
-
a processor;
a controller to control said processor, said controller constructed and arranged to retrieve a name space for a source software application in the enterprise system, said source software application having a programming interface, and a name space for a destination software application in the enterprise system that has a second programming interface that is incompatible with said first programming interface, wherein said name spaces are displayed on a display device to enable a user to associate graphically data units of the source software application with data units of the destination software application and to specify conditions under which said specified data units are transferred from source application addresses to user-associated destination application addresses, wherein said associations of said data units are stored in a configuration repository.
-
-
23. A computer program product comprising a computer readable medium having computer program logic recorded thereon for enabling a processor in a computer system to system to generate a user-defined programming interface for integrating software applications in an enterprise system, the software applications having incompatible programming interfaces,
the computer program logic retrieving a name space for a source software application in the enterprise system, said source software application having a programming interface, and a name space for a destination software application in the enterprise system that has a second programming interface that is incompatible with said first programming interface, wherein said name spaces are displayed on a display device to enable a user to associate graphically data units of the source software application with data units of the destination software application and to specify conditions under which said specified data units are transferred from source application addresses to user-associated destination application addresses, wherein said associations of said data units are stored in a configuration repository.
Specification