Why Is Correlation So Important?

The term correlation describes the process of returning a business message to a specific instance of a waiting schedule. So what types of solutions require correlation, and why do we need to be concerned about the correlation of schedule instances when a schedule rehydrates?

A true B2B (business-to-business) or EAI (enterprise application integration) scenario almost always involves several business processes, and each process may involve multiple steps and the exchange of multiple document types.

In a B2B scenario, consider the example of a marketplace (buyer) sending a purchase order to a seller organization for order fulfillment. Some of the business processes involved may be as follows:

1.
After the order is received from the market site, the order needs to go through an internal business process. The business process involves checking accuracy of the order, approval of the order, determination of a seller from a list of subscribed sellers (say based on the lowest price) or even breaking down of an order to multiple product suppliers, notification to the consumer that the order has been received and sent for fulfillment, and, finally, sending the order to the seller and waiting for a response from the seller.

2.
After the seller receives the order, the seller's internal business process kicks in. The business process involves order acknowledgement; determination of the best way to fulfill the order based on inventory, location of seller's warehouse, and ZIP Code of the consumer; and, finally, sending the order to the shipper organization and waiting for a response from the shipper.

3.
After the shipper receives the order, the shipper's business process kicks in. The business process involves order acknowledgement, determination of shipping dates, mode of delivery and an ETA, and, finally, sending a response back to the seller.

4.
After the seller's business process receives the response from the shipper (that may take a few hours to a few days), the seller's business process proceeds to completion by sending a response to the buyer.

5.
Finally, when the buyer's business process receives the response from the seller (again, this may take a couple of hours to a couple of days), the buyer's business process proceeds to completion by updating the status of the order to the consumer.

In summary, you can see that at least three separate business processes (buyer, seller, and shipper) are involved in a simple supply chain scenario.

Similarly, in an EAI scenario, consider the example of the software company, where a new hire submits his information to an internal Account Management System application. Figure 16.1 refers to some of the steps involved in the business process:

1.
New hire submits information to the Account Management System (AcctMngSys).

2.
The new hire information goes through an approval process.

3.
A new account is created in the corporate network—for example, in Active Directory.

4.
A mailbox is created for the new hire in the company's messaging system—for example, Exchange.

5.
If steps 3 and 4 complete successfully, then update the company's ERP system—for example SAP-with the new hire information. This could be for payroll and benefits. At this point, the AcctMngSys business process waits for a response from the ERP system. This could take a few hours to a few days, depending on what the ERP system's business process does and whether human intervention is part of the process. The ERP system finally sends a response to the AcctMngSys.

6.
The waiting AcctMngSys business process proceeds after the response from the ERP system is received. Depending on the response—success or failure—different actions are taken.

7.
On a failed response from the ERP system, the AcctMngSys's business process executes a compensating business process to undo the network account and the mailbox creation and sends an e-mail to the system administrator.

8.
On a success response from the ERP system, the next action in the AcctMngSys business process is to send an e-mail to the new hire and his manager.

Figure 16.1. Overview of an EAI scenario—Account Management System.


In summary, in the EAI scenario shown in Figure 16.1, at least three business processes are involved (AcctMngSys, ERP update, and optionally the compensating business process).

In many ways, there is little difference between B2B and EAI integration. Both involve executing one or more business processes, correlating the processes, and exchanging documents of different types (purchase order, invoice, acknowledgement, and response) between the systems across boundaries. These boundaries could be intranet, between disparate internal applications or business units, or Internet, between organizations.

As mentioned previously, each business process contains multiple steps, and one step may involve sending a message to another business process (orchestration schedule) in another application or another organization. The subsequent step in the originating business process may have to wait for a response message for hours, days, weeks, or months to continue and complete the remaining steps in the business process. The term correlation is used to describe the process of returning a business message to a specific instance of a waiting schedule.

In this chapter, you will learn how to correlate schedule instances and extend your knowledge of BizTalk Server Messaging and Orchestration to include the integration of BizTalk Messaging to an XLANG schedule. Specifically, you will learn how to

  • Instantiate a schedule instance from BizTalk Messaging—that is, begin to execution a business process (an orchestration XLANG schedule) when a message arrives.

  • Send a document from BizTalk Messaging to a running instance of orchestration via MSMQ—that is, correlate a message to a running instance of a schedule so that a business process waiting for a response can continue to completion.

  • Integrate two business processes (implemented as two separate orchestrations) using BizTalk Messaging, where the processes are separated by an intranet or the Internet.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset