The IBM WebSphere InterChange Server system uses a central infrastructure (InterChange Server) and modular components in a hub-and-spoke design, as follows:
InterChange Server collaborations are software modules that contain logic that describes a distributed business process. There are different collaborations for different fundamental business processes--for example, a ContactManager collaboration, or an InventoryMovement collaboration. Collaborations coordinate the functionality of business processes for disparate applications and enable data exchange between them. Collaborations are the hub; through them, data is exchanged in the form of business objects.
Business objects are the messages used by the IBM WebSphere InterChange Server system for exchanging data. Data handlers are used to transform serial application data into business objects, and maps are used between a business object that is structured for the data model of a specific application and a business object that is generically structured for use by collaborations at the hub.
Connectors can be configured to interact either within a network, or across the Internet and beyond firewalls.
Each connector consists of two parts--the connector controller and the connector agent. The connector controller interacts directly with WebSphere InterChange Server collaboration objects and resides on a server that has implemented the IBM WebSphere InterChange Server system (the hub in a hub-and-spoke relationship). The connector agent interacts directly with an application, and can reside with that application on any server. A remote agent technology can be used to implement communication between a connector controller at a hub site and an agent that resides at another site across the Internet.
Some connectors are designed to interact with specific applications. Application connectors--for example, the Clarify connector-- are intermediaries between collaborations and applications. These connectors transform data from the application into business objects that can be manipulated by the collaborations, and transform business objects from the collaborations into data that can be received by the specific application.
Other connectors are designed for interactions that conform to specific technology standards. (For example, the XML connector can be used for sending data from InterChange Server collaborations to a web server, even if that web server resides beyond a firewall on a network that is not running the connector agent or other IBM WebSphere software.)
The Server Access Interface is part of InterChange Server. It is a CORBA-compliant API that accepts synchronous data transfers from either internally networked or external sources. The data is then transformed into business objects that can be manipulated by a collaboration. The Server Access Interface makes it possible to receive calls from external entities--for example, from web browsers at remote customer sites--that do not come through connector agents, but instead come through web servlets into the Server Access Interface.
The Server Access Interface and the connectors both make use of data handlers. In InterChange Server environment, new data handlers can be created from a modular group of base classes called the Data Handler Framework. The InterChange Server solution also includes a Protocol Handler Framework. These frameworks make it easier to customize solutions and add connectivity for additional data formats and protocols in the future.
A typical InterChange Server solution includes one or more collaborations and a set of business objects that represent business information relevant to an enterprise. The collaborations and business objects are used with connectors, with the Server Access Interface, or with both.
A connector can interact with one or more collaborations, thereby performing various business processes. And each collaboration can interact with any number of connectors, thereby involving any number of applications.
For example, to automatically update an enterprise resource planning (ERP) application when customer information changes in a customer interaction management (CIM) application, the InterChange Server solution might consist of the CustomerSync collaboration, connectors for the CIM application and the ERP application, and definitions of business objects that represent customer information. Figure 1 illustrates that solution.
Figure 1. CIM-to-ERP Customer Data solution
The solution in Figure 1-1 could be implemented either locally on a network, or across the Internet.
In Figure 2, at a site that has not implemented either the IBM WebSphere InterChange Server system or a connector, a customer representative might wish to use a web browser to obtain the status of a purchase order over the Internet from an ERP application (SAP in the example) that resides at a site using the WebSphere InterChange Server system. To enable this, the InterChange Server solution uses the Server Access Interface, together with a collaboration (fictional in this example) for purchase-order business logic, an SAP connector, and definitions of business objects that represent purchase-order status information.
Figure 2. Execution of a call through the Server Access Interface
A single application can interact with multiple InterChange Servers, in a hubs-and-spokes environment. Multiple InterChange Servers can be deployed to work together. Connector agents can be configured to partition and route events from an application to different servers. This makes it possible to balance an application's processing load across multiple InterChange Servers. In addition, InterChange Servers can be configured to interact with each other through connectors and the Server Access Interface.
Connectors can enable the exchange of data across the Internet in different ways. These approaches include:
This approach--referred to as remote agent technology--uses JMS, with either SSL in native WebSphere MQ or HTTP/HTTPS in WebSphere MQ internet pass-thru (MQIPT), to implement a connector across the Internet. A single site that has implemented the IBM WebSphere InterChange Server system acts as the hub and performs exchanges across the Internet with spoke sites that have implemented a remote connector agent.
In this approach, the Server Access Interface is used to pass synchronous calls into the IBM WebSphere InterChange Server; connectors that use Internet technology standards are used to send data from the IBM WebSphere InterChange Server:
The Server Access Interface resides at a hub site on InterChange Server (ICS). When the Server Access Interface receives a call, it sends the data to a handler for that specific data format (such as the XML data handler). The data handler transforms the data into a generic business object. The Server Access Interface then sends the business object to a collaboration. The collaboration performs its processes on the business object and responds, and that response is transformed back into the specific data format that was used at the beginning of the process.
To accept calls from external processes and send the calls as business objects to a collaboration, the Server Access Interface requires the following:
An example of this approach is illustrated in Figure 3.
Figure 3. Internet data exchange using Server Access Interface
Some connectors can enable both publish-and-subscribe and request/response interactions that exchange data over the Internet, without using a remote agent configuration. For example, the TPI connector enables data exchange in XML, EDI, or binary format with remote trading partners over the Internet. Similarly, the Email connector exchanges data over the Internet using the SMTP protocol.
An example of this approach is illustrated in Figure 4.
Figure 4. Internet data exchange using TPI or e-Mail Connector