Sunday, May 9, 2010

Integration Technology of PeopleSoft

PeopleSoft offers several application integration solutions to integrate two different applications be it PeopleSoft applications or third party systems. The release of PeopleTools 8.4 saw the advent of a new integration tool called the Integration Broker, which facilitates tightly coupled and loosely coupled integrations. Tightly coupled integration, a feature made available through Synchronous messaging, may be defined as a system that expects a response before continuing further processing. Asynchronous messaging provides loosely coupled integration, where the source system continues with its processing without waiting for a response. The architecture that PeopleSoft adopts for either of the messaging formats (Loosely coupled or Tightly coupled) is where the difference lies. The manner in which the Integration Gateway and Integration Engine interact is almost the same, the difference lies in the content that is exchanged between the two. It is important to understand that, irrespective of the Transaction Type (Synch or Async) PeopleSoft Integration Engine (App Server) and Integration Gateway (Web Server) always communicate in a synchronous fashion. Apart from messaging, Integration Broker also includes Connector development that enables connectors to be customized for a particular integration scenario. Besides Integration Broker, PeopleSoft integration technologies also include Component Interface and Application Engine. The purpose of these integration solutions has been explored here.

The following factors are to be considered before an integration technique is chosen:
  • A large amount of data is to be transferred
  • Whether the data is inbound or outbound.
  • Whether the integration has to be real-time, near-real-time or deferred.
  • The time required to complete a transaction
  • Message structure of data involved
  • Technology of the participating systems.
Each of these factors has been explained in detail in the forthcoming sections.

High Volume of Data
The volume of data involved in a transaction is a crucial factor in deciding the communication technology used. If a large volume of data is to be transferred, the preferred integration techniques are Asynchronous messaging and Application Engine.
Asynchronous messaging mode allows a large volume of data to be pushed into the subscribing systems. Since this does not wait for a response, it can just publish the information and continue with its own processing.
In a scenario that requires a large volume of data to be transferred in batch mode from an external system into the PeopleSoft Application, Application Engine would be the preferred solution. It is quite often used in combination with File interface provided by the PeopleCode in Application Engine. A typical situation would be that of integrating legacy systems with the PeopleSoft Application. As the amount of data involved is huge, the information from the legacy systems is stored temporarily in files. This data is then retrieved via the PeopleCode section of the Application Engine using file operations and the application can be populated using Component Interface.

Direction of Data
The flow of data is classified as inbound or outbound depending on whether the information flows into the system or away from the system. If the flow of information were purely outbound, Asynchronous messaging would be an ideal solution. An example would be that of keeping in sync, the customer information present in Financials (FDM) with PeopleSoft CRM. When a new customer is added in FDM, the information is sent to PeopleSoft CRM. Here information only flows out of the Financials system, hence Asynchronous messaging may be used for this scenario.
When the flow of information is purely inbound, the business validations are to be considered to ensure that the data entering the system is correct. Component
Interface (CI) provides this feature, as it invokes the business logic before saving the data in the database. Thus CI takes care of the necessary validations before committing the transaction. A typical example where Component Interface is used is when the leads are loaded in the sales module from an excel sheet. In certain cases Component Interface is also used in combination with other technologies such as Asynchronous messaging and Application Engine.
In a scenario, where the integration involves both outbound as well as inbound messaging, Asynchronous messaging, Synchronous messaging or Application Engine may be used depending on whether the transaction is loosely, tightly coupled or file based respectively. An example of tightly coupled two way messaging would be the integration of Field Service Order module of PeopleSoft CRM with the Inventory module of the Supply Chain Management product line. In this integration, whenever the inventory level for a product is required a request is issued with the product information from the Field Service Module to the Inventory module. The response message contains the inventory level of the requested product. Thus Synchronous Message would cater to the needs of such a transaction.

Application Behavior
It depends on whether the integration is real-time or near-real-time or Offline. Real-time integration may be achieved through Synchronous Messaging and Component Interfaces. This type of integration is preferred for critical applications such as billing involving credit card authorization and crediting the amount. Before a bill is issued by PeopleSoft Billing module the credit card number is authorized by third party systems like CyberCash and eventually the amount is debited from the customer’s account. The source system has to ensure that the data is updated in all the participating systems. Thus the source system has to wait for a response from each of the systems before committing the transaction in its own system.
The most common tool used for offline or deferred processing is Application Engine using the File Interface.

Response Time
If the processing of the received messages is going to consume considerable amount of time it is advisable to go in for Asynchronous messaging. If the processing time is small, then Synchronous Messaging may be used. Nevertheless while designing Synchronous messaging it is necessary to keep in mind the response time.

Compatible formats
In any messaging, the data is passed through record structures embedded in the messages. The receiving system may or may not require all the fields contained in the message. Thus it is necessary to map the message structures to those required by the destination system. This is where connector development comes in, where custom connectors can be developed for systems based on the record structure used by the destination system. Moreover middleware software also aid in the mapping of data. A common example is MQ Series an IBM product that uses a queue system to pass information between PeopleSoft Application and any third party system.

APIs available
An important aspect of connector development depends on the APIs available in a third party system. It also depends on the integration technology supported by the third party system. For example HTTP Connectors may be used for a third party system that supports web services.
Enterprise Application Integration is gaining importance in the ERP industry. It is a major cause of concern for companies that goes in for application integration. PeopleSoft has ensured that it is not left out of the race by providing several integration solutions. These technologies cover almost all the integration scenarios.
Therefore the choice of the right integration technology for the right scenario lies at the discretion of the enterprises.

No comments: